Continua la serie dei nostri articoli dedicati all’embedding analytics di dashboard realizzate con Tableau. La scorsa volta avevamo visto come muovere i primi passi quando si tratta di incorporare delle viste di Tableau in un’applicazione esterna come una pagina web.
Quando decidiamo di embeddare delle dashboard di Tableau in una pagina web, i visitatori del sito devono essere utenti con una licenza su Tableau Server e questi dovranno inserire le loro credenziali prima di poter visualizzare le viste inserite. Per questo, nella maggioranza dei casi in cui decidiamo di incorporare un workbook, vogliamo abilitare anche il Single Sign-On (SSO) per permettere all’utente di non dover accedere anche a Tableau Server.
Il Single Sign-On (Autenticazione Unica) rappresenta la funzionalità di un sistema di controllo degli accessi che permette ad un utente di effettuare un solo processo di autenticazione, per accedere a più sistemi software senza dover ripetere quindi l’autentificazione per ogni singola applicazione.
Ci sono varie modalità per permettere il SSO in Tableau Server:
- Trusted Authentication (Autenticazione Attendibile): normalmente è la scelta migliore, e quella che andremo ad approfondire. Solitamente non viene implementata l’Autenticazione Attendibile solo se sono già state implementate le soluzioni elencate qui sotto.
- Active Directory + Kerberos: puoi utilizzare questo metodo se tutti i tuoi utenti sono registrati nella tua Active Directory e stai già utilizzando Kerberos per l’autentificazione di altre applicazioni. Kerberos è un protocollo di rete per l’autenticazione che permette a diversi terminali di comunicare su una rete informatica insicura provando la propria identità mediante l’utilizzo di tecniche di crittografia simmetrica.
- Active Directory + “Enable automatic login”: puoi utilizzare questa modalità se tutti i tuoi utenti sono registrati nella tua Active Directory e abiliti l’opzione “Enable automatic login”. Questa opzione utilizza il protocollo SSPI (Security Support Provider Interface) di Microsoft.
- SAML o OpenID: se utilizzi già uno tra questi due strumenti puoi configurare Tableau Server per utilizzarli. SAML (Security Assertion Markup Language) è uno standard informatico per lo scambio di autorizzazioni e autentificazioni tra diversi domini di sicurezza. OpenID è un protocollo di autenticazione che riutilizza account già esistenti da altri siti web.
Trusted Authentication (Autenticazione Attendibile)
Con la Trusted Authentication viene creata una relazione attendibile tra Tableau Server e il nostro server web. Una volta inviata la richiesta d’accesso a Tableau Server, quest’ultimo tratterà l’autentificazione come già gestita dal server web.
Vediamo più nel dettaglio come funziona il processo dell’autentificazione attendibile in 6 step:
- Un utente entra a visitare la nostra pagina web che ospita una vista di Tableau. La pagina invia una richiesta GET al server Web. Una richiesta GET è una richiesta che invia dati al server, i quali sono presenti direttamente all’interno dell’URL.
- Il Server web a sua volta invia una richiesta POST a Tableau Server. A differenza della richiesta GET la richiesta POST nasconde all’utente i parametri URL nella richiesta http.
- Tableau Server, una volta che riconosce il sito tra la lista di quelli attendibili, crea un ticket (una stringa univoca) col quale risponde alla richiesta POST del server web. In caso Tableau Server non dovesse riuscire ad emettere il ticket durante il processo di autentificazione attendibile restituirà come valore del ticket -1. Ad ogni modo il ticket deve essere riscattato entro 3 minuti dalla sua creazione. (Per approfondire i motivi per cui Tableau può restituire il valore -1 con le eventuali soluzioni consigliamo la lettura di: https://help.tableau.com/current/server/it-it/trusted_auth_trouble_1return.htm).
- Il server web decifra l’URL per la vista e lo inserisce nel codice HTML della pagina, inserendo anche il valore univoco del ticket. Successivamente, questo codice HTML viene passato dal server web al web browser del client.
- A questo punto sarà il browser web del client ad inviare una richiesta GET a Tableau Server utilizzando l’URL inclusivo del ticket creato in precedenza.
- Alla fine, Tableau Server riscatta il ticket, che viene rimosso dall’URL finale per la vista. Durante questa fase viene aperta una sessione e l’utente viene registrato automaticamente. Una volta terminato il processo Tableau Server archivierà i ticket attendibili nella sua repository.
È importante sottolineare che l’utente avrà accesso a qualsiasi dashboard che avrebbe visto una volta effettuato l’accesso a Tableau Server. Non avrà però accesso alle cartelle di lavoro, pagine di progetto o ad altri contenuti ospitati in Tableau Server.
Ti abbiamo dato solo qualche consiglio sull’Embedding Analytics, ma sai che ci sono tante altre cose da scoprire? Ad esempio, scaricando il whitepaper Tableau dedicato all’argomento!