Abilitare l’accesso all’account di servizio Kerberos

Puoi configurare Tableau Server per l’utilizzo di un account di servizio Kerberos per accedere a un database. In questo scenario, Tableau Server si connette ai database con un account di servizio, detto anche "account RunAs").

Per utilizzare l’autenticazione RunAs su Tableau Server, è prima necessario creare una cartella di lavoro o un’origine dati che utilizzi l’autenticazione integrata. Al momento della pubblicazione su Tableau Server, agli utenti verrà visualizzata l’opzione per l’autenticazione RunAs. Se crei un’origine dati con il Web authoring di Tableau Server, che utilizza l’autenticazione integrata, per impostazione predefinita l’origine dati utilizzerà l’autenticazione RunAs.

Nota: l’autenticazione integrata è anche denominata autenticazione Windows su alcuni connettori. In entrambi i casi, Tableau Server utilizza l’autenticazione Kerberos.

Accesso ai dati con l’account di servizio RunAs

Per utilizzare l’autenticazione RunAs, l’account RunAs richiede le autorizzazioni di lettura e di query per i database esterni. In base alla progettazione, gli utenti di Tableau Server con il ruolo Creator o Explorer (autorizzato a pubblicare) hanno accesso completo all’account RunAs per le query ai database esterni.

Ad esempio, un utente con il ruolo Creator può visualizzare tutti i database a cui è stato concesso l’accesso all’account di servizio RunAs. Possono anche elencare tabelle ed eseguire istruzioni SQL personalizzate.

Se l’utente Creator specifica il nome host del database e seleziona l’autenticazione integrata al momento della creazione di una nuova origine dati con il Web authoring, i database per cui è stato concesso l’accesso RunAs saranno visualizzati all’utente.

L’accesso in visualizzazione alle risorse del database non è limitato per gli utenti che si connettono Tableau Server con il Web authoring. Gli utenti avanzati con gli stessi ruoli citati in precedenza e che conoscono i nomi dei server di database potrebbero creare cartelle di lavoro con Tableau Desktop che visualizzano i database per cui è stato concesso l’accesso RunAs.

Suggerimenti

Deve essere l’organizzazione a valutare se l’accesso degli utenti ai database in questi scenari è accettabile. In generale, la riduzione dell’utilizzo e dell’ambito del servizio RunAs riduce la probabilità che l’utente acceda inavvertitamente al contenuto del database. Tuttavia, ridurre l’utilizzo e l’ambito dell’account di servizio RunAs può anche imporre maggiori attività di gestione delle credenziali per l’amministratore e gli utenti.

Valuta i suggerimenti seguenti nel contesto delle tue esigenze aziendali e dei criteri di accesso ai dati.

  • In primo luogo, verifica che tutti gli utenti con ruoli Creator o Explorer (autorizzato a pubblicare) siano attendibili. Ti affiderai a questi utenti per l’integrità delle azioni eseguite in Tableau.
  • Se non puoi considerare attendibili tutti gli utenti con diritti di pubblicazione per le origini dati accessibili dall’account di servizio RunAs, dovresti prendere in considerazione la possibilità di incorporare le credenziali per tali origini dati.
  • Se un’origine dati non è impostata per l’aggiornamento automatico dell’estrazione, ovvero l’origine dati è accessibile principalmente come connessione live, potresti essere in grado di utilizzare la delega Kerberos. Per i requisiti, consulta Attivare la delegazione Kerberos.

Requisiti

  • MIT Kerberos non è supportato.
  • L’account di servizio EseguiCome deve disporre dell’accesso in lettura al database di destinazione.

Processo di configurazione

In questa sezione viene illustrato un esempio del processo per abilitare l’accesso all’account di servizio Kerberos.

  1. Crea un account utente di dominio come account di servizio EseguiCome. L’account deve disporre dell’accesso in lettura al database di destinazione.

    Nell’esempio seguente, l’account di servizio EseguiCome è l’entità utente denominata tabsrv@example.com.

  2. Crea un file keytab per l’account di servizio EseguiCome.

    Ad esempio, i seguenti comandi creano un file keytab (tabsrv-runas.keytab) utilizzando lo strumento ktutil:

    ktutil
    ktutil:  addent -password -p tabsrv@EXAMPLE.COM -k 2 -e <encryption scheme>

    Gli schemi di crittografia per questo comando includono RC4-HMAC, aes128-cts-hmac-sha1-96 e aes256-cts-hmac-sha1-96. Consulta il tuo team IT per individuare lo schema di crittografia corretto per l’ambiente e l’origine dati.

    ktutil:  wkt tabsrv-runas.keytab

    Tableau Server utilizzerà l’account di servizio EseguiCome e il keytab associato per autenticare e creare una connessione diretta al database.

  3. Copia il file keytab nella directory dei dati di Tableau Server e imposta la proprietà e le autorizzazioni adeguate. Il file keytab deve essere leggibile dall’utente senza privilegi. L’utente senza privilegi predefinito creato dal programma di installazione di Tableau è tableau.

    Se stai eseguendo una distribuzione multi-nodo, devi eseguire i comandi seguenti in ogni nodo del cluster:

    mkdir /var/opt/tableau/tableau_server/keytab                
    sudo cp -p tabsrv-runas.keytab /var/opt/tableau/tableau_server/keytab                 
    sudo chown $USER /var/opt/tableau/tableau_server/keytab/tabsrv-runas.keytab                  
    chgrp tableau /var/opt/tableau/tableau_server/keytab/tabsrv-runas.keytab                  
    chmod g+r /var/opt/tableau/tableau_server/keytab/tabsrv-runas.keytab 
    
  4. Esegui i comandi TSM seguenti per abilitare l’accesso RunAs, impostare l’account di servizio RunAs e associare il file keytab all’account di servizio.

    tsm configuration set -k features.RunAsAuthLinux -v true --force-keys
    tsm configuration set -k native_api.datasource_runas_principal -v tabsrv@EXAMPLE.COM --force-keys
    tsm configuration set -k native_api.datasource_runas_keytab_path -v /var/opt/tableau/tableau_server/keytab/tabsrv-runas.keytab --force-keys			
  5. Esegui il seguente comando TSM per applicare le modifiche alla distribuzione di Tableau Server:

    tsm pending-changes apply

    Se le modifiche in sospeso richiedono il riavvio del server, il comando pending-changes apply visualizzerà un messaggio per segnalare che verrà eseguito un riavvio. Questo messaggio viene visualizzato anche se il server è stato arrestato, ma in questo caso il riavvio non viene eseguito. Puoi eliminare la richiesta usando l’opzione --ignore-prompt, ma questo non modifica il comportamento del riavvio. Se le modifiche non richiedono un riavvio, vengono applicate senza visualizzare alcun messaggio. Per maggiori informazioni, consulta tsm pending-changes apply.

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