Gestire le estensioni di dashboard in Tableau Server

Le estensioni di dashboard sono applicazioni Web eseguite in aree personalizzate della dashboard e possono interagire con il resto della dashboard utilizzando le Estensioni API Tableau(Il collegamento viene aperto in una nuova finestra). Le estensioni di dashboard consentono agli utenti di interagire con i dati di altre applicazioni direttamente in Tableau.

Nota: per abilitare le estensioni di dashboard sul server o per bloccare l’esecuzione di estensioni specifiche devi essere un amministratore del server. Per aggiungere estensioni all’elenco di sicurezza e controllare il tipo di dati a cui possono accedere le estensioni, devi essere un amministratore del server. L’amministratore del server può inoltre configurare se gli utenti del sito visualizzeranno i prompt quando aggiungono o visualizzano estensioni in una dashboard. Per informazioni sulla sicurezza delle estensioni e le opzioni di distribuzione consigliate, consulta Sicurezza delle estensioni - Procedure consigliate per la distribuzione(Il collegamento viene aperto in una nuova finestra).

Per informazioni sull’utilizzo delle estensioni di dashboard in Tableau, consultaUsare le estensioni di dashboard(Il collegamento viene aperto in una nuova finestra).

Prima di eseguire le estensioni su Tableau Server

Tableau supporta due tipi di estensioni di dashboard: le estensioni abilitate alla rete, che possono essere ospitate su server Web all’interno o all’esterno della rete locale e hanno accesso completo al Web, e le estensioni in modalità sandbox, eseguite in un ambiente protetto senza alcun accesso ad altre risorse o servizi sul Web.

Nota: a partire dalla versione 2021.1.0, Tableau supporta l’integrazione con Einstein Discovery tramite l’estensione di dashboard Einstein Discovery. Si tratta di una speciale estensione che ha accesso ai dati in Salesforce.com ed è consentita per impostazione predefinita. Non viene considerata un’estensione abilitata alla rete o un’estensione in modalità sandbox. Per maggiori informazioni sull’integrazione di Einstein Discovery, consulta Note sulla versione di Tableau Server(Il collegamento viene aperto in una nuova finestra).

Le estensioni in modalità sandbox sono ospitate da Tableau e utilizzano gli standard W3C, come Content Security Policy (CSP), per garantire che l’estensione non possa effettuare chiamate di rete all’esterno del sistema Tableau Server che la ospita. Un’estensione in modalità sandbox può interrogare i dati nella dashboard, ma non può inviare tali dati all’esterno della sandbox. Le estensioni in modalità sandbox sono supportate in Tableau 2019.4 e versioni successive. Per impostazione predefinita, l’esecuzione delle estensioni in modalità sandbox è consentita se le estensioni sono abilitate per il sito.

Le estensioni di dashboard abilitate per la rete sono applicazioni Web e possono essere in esecuzione su qualsiasi computer configurato come server Web. Questo include i computer locali, i computer nel dominio e i siti Web di terze parti. Poiché le estensioni abilitate per la rete potrebbero essere ospitate su siti di terze parti e avere accesso ai dati della dashboard, è consigliabile consentire solo le estensioni considerate attendibili. Consulta Testare la sicurezza delle estensioni abilitate alla rete.

Per motivi di sicurezza, puoi utilizzare le impostazioni per le estensioni di dashboard su Tableau Server per controllare e limitare le estensioni del dashboard che possono essere eseguite.

  • Per impostazione predefinita, l’esecuzione delle estensioni in modalità sandbox è consentita se le estensioni sono abilitate per il sito.

  • Per impostazione predefinita, non sono consentite estensioni abilitate alla rete, a meno che non siano state aggiunte esplicitamente all’elenco sicuro.

  • Per impostazione predefinita, sono ammesse solo le estensioni che utilizzano il protocollo HTTPS, che garantisce un canale crittografato per l’invio e la ricezione dei dati (l’unica eccezione è per http://localhost).

  • Se l’estensione abilitata alla rete richiede dati completi (accesso ai dati sottostanti), l’estensione non potrà essere eseguita su Tableau Server, a meno che non si aggiunga esplicitamente l’estensione all’elenco sicuro e si conceda l’accesso ai dati completi per l’estensione.

Controllare le estensioni di dashboard e l’accesso ai dati

Gli amministratori del server possono controllare un’impostazione globale per consentire le estensioni per tutti i siti sul server. Gli amministratori del server possono inoltre inserire le estensioni, incluse quelle in modalità sandbox, in un elenco globale per impedirne l’esecuzione (consulta Blocca estensioni specifiche). Per impostazione predefinita, tutte le estensioni in modalità sandbox sono abilitate sul server, ma gli amministratori del sito possono scegliere di ignorare le estensioni in modalità sandbox predefinite e impedire l’utilizzo delle estensioni in modalità sandbox per il sito.

Cambiare l’impostazione globale che abilita le estensioni sul server

  1. Per modificare questa impostazione per il server, vai su Gestisci tutti i siti > Impostazioni > Estensioni. Se il server dispone solo di un singolo sito, i controlli globali vengono visualizzati nella pagina delle impostazioni del sito.

  2. In Estensioni di dashboard, seleziona o deseleziona la casella di controllo Consenti agli utenti di eseguire estensioni su questo server. Se questa opzione non è selezionata, l’esecuzione delle estensioni non è consentita. Questa impostazione globale prevale sulle impostazioni di Consenti agli utenti di eseguire estensioni su questo sito per ogni sito.

Modificare le impostazioni predefinite per un sito

Gli amministratori del server possono scegliere se abilitare le estensioni per il sito e se consentire le estensioni in modalità sandbox nel sito. In altre parole, se le estensioni sono abilitate sul server, le impostazioni predefinite del sito consentono l’esecuzione delle estensioni in modalità sandbox sul sito, a condizione che l’estensione non sia specificamente bloccata sul server. Le impostazioni predefinite del sito consentono l’esecuzione delle estensioni abilitate alla rete incluse nell’elenco sicuro del sito. È anche possibile aggiungere all’elenco sicuro singole estensioni in modalità sandbox, se le estensioni in modalità sandbox non sono consentite per impostazione predefinita.

  1. Per modificare queste impostazioni del sito, vai su Impostazioni > Estensioni.

  2. In Estensioni di dashboard, configura queste opzioni:

    • Consenti agli utenti di eseguire estensioni nel sito
    • Consenti l’esecuzione delle estensioni in modalità sandboxed a meno che non siano specificamente bloccate da un amministratore del server

Gli amministratori del server possono aggiungere o rimuovere le estensioni abilitate alla rete e in modalità sandbox nell’elenco sicuro per un sito. Quando aggiungi un’estensione all’elenco di indirizzi attendibili, puoi scegliere se consentire all’estensione di accedere ai dati completi. Consulta Aggiungere estensioni all’elenco sicuro e configurare i prompt utente.

Identificare un’estensione

Come applicazione Web, un’estensione è associata a un URL. Utilizza questo URL per provare e verificare l’estensione. Inoltre, puoi anche utilizzare l’URL per aggiungere l’estensione all’elenco sicuro per consentire l’accesso completo ai dati oppure all’elenco di blocco per impedire qualsiasi accesso.

Se il file manifesto di estensione (.trex), un file XML che definisce le proprietà per l’estensione, puoi trovare l’URL nell’elemento <source-location>.


<source-location>
    <url>https://www.example.com/myExtension.html</url>
</source-location>

				

Se hai aggiunto l’estensione alla dashboard, puoi trovare l’URL dalle proprietà dell’estensione. Dal menu Più opzioni, fai clic su Informazioni.

La finestra di dialogo Informazioni sull’estensione elenca il nome dell’estensione, l’autore dell’estensione, il sito Web dell’autore e l’URL dell’estensione.

Aggiungere estensioni all’elenco sicuro e configurare i prompt utente

Per garantire che gli utenti possano utilizzare estensioni abilitate alla rete affidabili, puoi aggiungerle all’elenco sicuro del sito. È anche possibile aggiungere estensioni in modalità sandbox all’elenco sicuro, se le estensioni in modalità sandbox non sono abilitate per impostazione predefinita sul sito.

Nell’elenco sicuro, puoi stabilire se concedere all’estensione l’accesso completo ai dati. Per impostazione predefinita, quando aggiungi un’estensione all’elenco sicuro, l’estensione ha accesso solo ai dati di riepilogo (o aggregati). Inoltre, puoi anche controllare se gli utenti vedranno un prompt che chiede loro di consentire l’accesso dell’estensione ai dati. Potresti voler aggiungere un’estensione all’elenco sicuro (ad esempio, un’estensione in modalità sandbox) in modo da poter configurare se gli utenti visualizzano o meno i prompt. Quando nascondi i prompt agli utenti, l’estensione può essere eseguita immediatamente.

  1. Vai su Impostazioni > Estensioni.

  2. In Consenti estensioni specifiche, aggiungi l’URL dell’estensione. Consulta Identificare un’estensione.

  3. Scegli di Consentire o Negare all’estensione l’Accesso completo ai dati.

    L’accesso completo ai dati è l’accesso ai dati sottostanti nella vista, non solo al sommario o ai dati aggregati. L’accesso completo ai dati include inoltre informazioni sulle origini dati, quali nomi della connessione, campi e tabelle. Nella maggior parte dei casi, se aggiungi un’estensione all’elenco sicuro in modo che possa essere eseguita, vorrai anche consentire all’estensione di avere accesso ai dati completi, se l’estensione lo richiede. Prima di aggiungere estensioni all’elenco sicuro, assicurati di aver effettuato il Testare la sicurezza delle estensioni abilitate alla rete.

  4. Scegli di Mostrare o Nascondere i Prompt utente.

    Gli utenti vedono i prompt per impostazione predefinita quando aggiungono un’estensione a una dashboard, o quando interagiscono con una vista dotata di un’estensione. Il prompt indica agli utenti i dettagli dell’estensione e se l’estensione ha accesso ai dati completi. Il prompt consente agli utenti di consentire o negare l’esecuzione dell’estensione. Puoi nascondere questo prompt agli utenti, consentendo l’esecuzione immediata dell’estensione.

Blocca estensioni specifiche

Il criterio globale predefinito consente tutte le estensioni in modalità sandbox e le estensioni abilitate alla rete incluse nell’elenco sicuro di un sito. Gli amministratori del server possono impedire l’esecuzione di estensioni specifiche aggiungendole all’elenco di blocco per il server. Se un’estensione si trova nell’elenco di blocco globale, sovrascrive qualsiasi impostazione per l’estensione dell’elenco sicuro di un sito.

  1. Per aggiungere un’estensione all’elenco di blocco per il server, vai su Gestione di tutte i siti > Impostazioni > Estensioni. Nelle installazioni a livello di sito l’elenco di blocco si trova nella pagina delle impostazioni delle Estensioni del sito.

  2. In Blocca estensioni specifiche, aggiungi l’URL dell’estensione. Consulta Identificare un’estensione.

Testare la sicurezza delle estensioni abilitate alla rete

Le estensioni di dashboard sono applicazioni Web che interagiscono con i dati in Tableau utilizzando le Estensioni API. Le estensioni di dashboard abilitate alla rete possono essere ospitate su server Web all’interno o all’esterno del tuo dominio e possono effettuare chiamate di rete e avere accesso a risorse su Internet. Per tale motivo e a causa delle potenziali vulnerabilità, come lo scripting tra i siti, è necessario testare e controllare le estensioni di dashboard abilitate alla rete prima che gli utenti le utilizzino nelle dashboard su Tableau Desktop, e prima di consentire le estensioni su Tableau Server.

Esaminare i file origine

Le estensioni di dashboard sono applicazioni Web e includono vari file HTML, CSS e JavaScript, e un file manifesto XML (*.trex) che definisce le proprietà dell’estensione. In molti casi, il codice per un’estensione di dashboard è pubblicamente disponibile su GitHub e può essere analizzato o scaricato. Nel file manifesto (*.trex), è possibile trovare la posizione di origine o l’URL indicato in cui è ospitata l’estensione, il nome dell’autore e il sito Web dell’autore o della società da contattare per l’assistenza. L’elemento <source-location> specifica nell’URL, l’elemento <author> , specifica il nome dell’organizzazione e il sito Web da contattare per l’assistenza (website="SUPPORT_URL"). Il sito Web è il collegamento a Ottieni assistenza che l’utente vede nella finestra di dialogo Informazioni per l’estensione.

Molti estensioni di dashboard riferimento alle librerie JavaScript esterne, ad esempio la libreria jQuery o le librerie API di terze parti. Verifica che l’URL per le librerie esterne punti a una posizione attendibile per la libreria. Ad esempio, se il connettore fa riferimento alla libreria jQuery, assicurati che la libreria si trovi in un sito considerato standard e sicuro.

Tutte le estensioni sono tenute a utilizzare il protocollo HTTPS ihttps:// per ospitare le loro estensioni. Dovresti esaminare i file sorgente per l’estensione per assicurarti che ogni riferimento a librerie esterne utilizzi anche HTTPS o sia ospitato sullo stesso sito Web dell’estensione. L’unica eccezione alla richiesta HTTPS è se l’estensione è ospitata sullo stesso computer di Tableau (http://localhost).

Per quanto possibile, assicurati di comprendere il modo in cui il codice svolge le operazioni. In particolare, cerca di comprendere il modo in cui il codice compila le richieste per i siti esterni e quali informazioni vengono inviate nella richiesta. In particolare, controlla se i dati specificati dall’utente vengono convalidati per impedire la creazione di script tra i siti (XSS).

Comprendere l’accesso ai dati

L’API Estensioni Tableau fornisce metodi che consentono di accedere ai nomi delle tabelle e dei campi attivi nell’origine dati, le descrizioni sommarie delle connessioni origine dati e i dati sottostanti in una dashboard. Se un’estensione utilizza uno di questi metodi in una vista, lo sviluppatore deve dichiarare che l’estensione richiede l’autorizzazione dati completa nel file manifesto (.trex). La dichiarazione si presenta come segue.


<permissions>
   <permission>full data</permission>
</permissions>

Tableau utilizza questa dichiarazione per fornire agli utenti un prompt durante l’esecuzione che dà loro la possibilità di consentire o meno questo accesso. Se l’estensione utilizza uno qualsiasi di questi quattro metodi, senza dichiarare l’autorizzazione per i dati completi nel file manifesto, l’estensione verrà caricata, ma le chiamate ai metodi non andranno a buon fine.

Per informazioni su come un’estensione accede ai dati dalla dashboard e come vengono usati i metodi JavaScript, consulta Accesso ai dati sottostanti(Il collegamento viene aperto in una nuova finestra) nell’API Estensioni Tableau. Per comprendere meglio ciò che l’estensione può scoprire sui dati, puoi utilizzare l’estensione dashboard di esempio DataSources(Il collegamento viene aperto in una nuova finestra) (disponibile nel repository di Estensioni Tableau API GitHub(Il collegamento viene aperto in una nuova finestra)) per vedere quali dati vengono esposti quando viene chiamato il metodo getDataSourcesAsync().

Testare l’estensione in un ambiente isolato

Se possibile, testa l’estensione di dashboard in un ambiente isolato dal tuo ambiente di produzione e dai computer degli utenti. Aggiungi ad esempio un’estensione di dashboard a un elenco sicuro in un computer di prova o a una macchina virtuale che esegue una versione di Tableau Server non utilizzata per la produzione.

Monitorare il traffico creato dall’estensione di dashboard

Quando testi un’estensione di dashboard abilitata alla rete, utilizza uno strumento come Fiddler(Il collegamento viene aperto in una nuova finestra), Charles HTTP proxy(Il collegamento viene aperto in una nuova finestra) o Wireshark(Il collegamento viene aperto in una nuova finestra) per esaminare le richieste e le risposte dell’estensione di dashboard. Assicurati di aver compreso il contenuto richiesto dall’estensione. Esamina il traffico per essere sicuro che l’estensione non stia leggendo dati o codici che non sono direttamente collegati allo scopo dell’estensione.

Grazie per il tuo feedback.Il tuo feedback è stato inviato. Grazie!