Risoluzione dei problemi Kerberos
In questo argomento, i suggerimenti per la risoluzione dei problemi sono suddivisi in problemi correlati all’accesso Single Sign-On (SSO) al server e problemi con le origini dati delegate.
Accesso Single Sign-On a Tableau Server
In un ambiente di accesso SSO di Kerberos, un utente che accede a Tableau Server da un browser Web o da Tableau Desktop può visualizzare un messaggio che indica che Tableau Server non può consentire l’accesso automatico, ovvero utilizzando l’accesso Single Sign-On. Invece, suggerisce di fornire un nome utente e una password per Tableau Server.
Risoluzione dei problemi relativi agli errori di accesso nel computer client
Immetti il nome utente e la password. Per controllare l’accesso generale dell’utente a Tableau Server, accedi immettendo il nome utente e la password.
Se queste credenziali hanno esito negativo, l’utente potrebbe non essere un utente in Tableau Server. Affinché l’accesso SSO di Kerberos funzioni, l’utente deve essere in grado di accedere a Tableau Server e deve disporre di un ticket granting ticket (TGT) da Active Directory, come descritto al punto TGT più avanti in questo elenco.
Verifica le credenziali di accesso SSO degli altri utenti: Prova a connetterti a Tableau Server con l’accesso SSO utilizzando altri account utente. Se tutti gli utenti sono interessati, il problema potrebbe essere nella configurazione Kerberos.
Utilizza un computer diverso dal computer server: L’accesso SSO di Kerberos non funziona quando accedi a Tableau Server su localhost. I client devono connettersi da un computer diverso da quello di Tableau Server.
Utilizza un nome server, non l’indirizzo IP: L’accesso SSO Kerberos non funziona se immetti un indirizzo IP come nome di Tableau Server. Inoltre, il nome server utilizzato per accedere a Tableau Server deve corrispondere al nome utilizzato nella configurazione Kerberos (vedi voce della tabella di chiavi, sotto).
Verifica che il client abbia un TGT. Il computer client deve disporre di un ticket TGT (ticket granting ticket) dal dominio di Active Directory. La delegazione vincolata, con il proxy che concede un ticket, non è supportata.
Per verificare che il computer client abbia un TGT, esegui le operazioni seguenti:
In Windows, apri un prompt dei comandi e digita quanto segue:
klist tgt
In Mac, apri una finestra Terminale e digita quanto segue:
klist
L’output deve mostrare un TGT per l’utente/il dominio che tenta di eseguire l’autenticazione in Tableau Server.
Il computer client potrebbe non avere un TGT nelle circostanze seguenti:
Il computer client utilizza una connessione VPN.
Il computer client non è aggiunto al dominio, ad esempio è un computer non dell’ufficio utilizzato in ufficio.
L’utente ha effettuato l’accesso al computer con un account locale, ovvero non di dominio.
Il computer è un Mac che non utilizza Active Directory come server di account di rete.
Verifica la versione e le impostazioni del browser. Per l’accesso da browser Web, verifica che il browser sia supportato per Kerberos e, se necessario, sia configurato correttamente.
Internet Explorer (IE) e Chrome sono "pronti all’uso" in Windows.
Safari è "pronto all’uso" in Mac.
Firefox richiede ulteriori operazioni di configurazione.
Per maggiori informazioni, consulta Supporto dei client di Tableau per l’accesso SSO di Kerberos.
Risoluzione dei problemi relativi agli errori di accesso sul server
Se non riesci a risolvere il problema dal computer client, i passaggi successivi servono a risolvere i problemi nel computer in cui è in esecuzione Tableau Server. L’amministratore può utilizzare l’ID richiesto per individuare il tentativo di accesso nei registri Apache di Tableau Server.
File di registro. Verifica l’esistenza di un messaggio di errore error.log Apache con la data/ora esatta del tentativo di accesso non riuscito.
In un archivio ziplog, questi registri sono contenuti nella cartella \httpd.
In Tableau Server, questi registri sono contenuti nella cartella \data\tabsvc\logs\httpd\.
Voce della tabella di chiavi. Se la voce error.log include il messaggio, "Nessuna voce della tabella di chiavi corrispondente a HTTP/<nomeserver>.<dominio>.<org>@", ad esempio:
[Fri Oct 24 10:58:46.087683 2014] [:error] [pid 2104:tid 4776] [client 10.10.1.62:56789] gss_acquire_cred() failed: Unspecified GSS failure. Minor code may provide more information (, No key table entry found matching HTTP/servername.domain.com@)
Questo errore è il risultato di una mancata corrispondenza di quanto segue:
URL di Tableau Server. L’URL utilizzato dal computer client per accedere al server.
Si tratta del nome digitato in Tableau Desktop o in una barra degli indirizzi del browser. Potrebbe essere un diminutivo (
http://servername
) o un nome di dominio completo (http://servername.domain.com
)Ricerca inversa di DNS per l’indirizzo IP del server.
Questo è un nome DNS che utilizza un indirizzo IP.
In un prompt dei comandi digita:
ping servername
con l’indirizzo IP restituito dal ping del server, esegui un tipo di ricerca inversa di DNS :
nslookup <ip address>
Il comando nslookup restituisce le informazioni di rete per l’indirizzo IP. Nella parte di risposta Non autoritativa della risposta, verifica che il nome di dominio completamente qualificato (FQDN) corrisponda ai valori configurati seguenti:
Il file .keytab Kerberos
Nome dell’entità servizio (SPN) per il server
Per maggiori informazioni sulla configurazione di questi valori, consulta Comprendere i requisiti per i file keytab.
Verificare lo script di configurazione Kerberos
Potresti dover modificare il comando ktpass utilizzato per generare il file keytab per le variabili ambientali. Esamina i passaggi per la risoluzione dei problemi nell’articolo della Knowledge Base Non è possibile generare configurazione di script Kerberos per Tableau Server(Il collegamento viene aperto in una nuova finestra).
Accesso SSO all’origine dati
Errori di accesso all’origine dati delegata
Controlla i file di registro vizqlserver per "workgroup-auth-mode".
In un archivio ziplog, questi registri sono contenuti nella cartella \vizqlserver\Logs
In Tableau Server, questi registri sono contenuti nella cartella \data\tabsvc\vizqlserver\Logs
Cerca "workgroup-auth-mode" nei file di registro. Dovrebbe riportare "kerberos-impersonate" non "as-is".
Configurazione multidominio della delegazione Kerberos
Tableau Server può delegare gli utenti da altri domini di Active Directory. Se il database utilizza il MIT Kerberos, potresti dover modificare l’entità Kerberos per il mapping dell’utente di database. In particolare, dovrai aggiornare krb5.conf con regole per ogni area di autenticazione Kerberos da cui si collegano gli utenti. Utilizza il tag auth_to_local
nella sezione [realms]
per mappare i nomi delle entità ai nomi utente locali.
Considera ad esempio un utente EXAMPLE\jsmith
, la cui entità Kerberos è jsmith@EXAMPLE.LAN
. In questo caso, Tableau Server specificherà un utente delegato, jsmith@EXAMPLE
. Tableau Server utilizzerà l’alias di dominio legacy di Active Directory come area di autenticazione Kerberos.
Il database di destinazione può già disporre di una regola, ad esempio per eseguire il mapping dell’utente, jsmith@EXAMPLE.LAN
, all’utente del database, jsmith
.
EXAMPLE.LAN = {
RULE:[1:$1@$0](.*@EXAMPLE.LAN)s/@.*//
DEFAULT
}
Per supportare la delegazione, devi aggiungere un’altra regola per il mapping di rbianchi@EXAMPLE a un utente di database:
EXAMPLE.LAN = {
RULE:[1:$1@$0](.*@EXAMPLE.LAN)s/@.*//
RULE:[1:$1@$0](.*@EXAMPLE)s/@.*//
DEFAULT
}
Per maggiori informazioni consulta l’argomento della documentazione di MIT Kerberos, krb5.conf(Il collegamento viene aperto in una nuova finestra).
Delegazione vincolata tra domini
In alcuni scenari tra domini in cui il centro di distribuzione delle chiavi è in esecuzione in un Server di Windows anteriore a Windows 2012, la delegazione potrebbe non riuscire. Gli errori che possono essere visualizzati includono:
- Interfacce di rete di SQL Server: impossibile contattare un controller di dominio per eseguire la richiesta di autenticazione. Riprovare più tardi.
- SQL Server Native Client: impossibile generare il contesto SSPI.
- Il controller di dominio restituisce:
KRB-ERR-POLICY error with a status STATUS_CROSSREALM_DELEGATION_FAILURE (0xc000040b)
.
"Tra domini" fa riferimento a uno scenario in cui Tableau Server è in esecuzione in un dominio diverso da quello dell’origine dati con account di servizio diversi. Ad esempio:
- Tableau Server viene eseguito su DominioA con account di servizio DominioA.
- SQL Server viene eseguito su DominioB con account di servizio DominioB.
La delegazione vincolata tradizionale funziona solo se entrambi i server appartengono allo stesso dominio. L’utente può provenire da altri domini.
Se vengono segnalati gli errori sopra descritti, per abilitare questo scenario l’amministratore di Active Directory deve rimuovere la delegazione vincolata tradizionale configurata nell’account di delegazione. La rimozione della delegazione può essere ottenuta con gli strumenti di gestione di Active Directory o rimuovendo i valori associati alla proprietà di Active Directory, msDS-AllowedToDelegateTo.
.
Se vuoi mantenere una delegazione di dominio singolo esistente insieme alla delegazione tra domini, devi configurare entrambe utilizzando la delegazione vincolata basata su certificati.
Per ulteriori informazioni su Kerberos e sulle delegazioni vincolate, consulta l’argomento Microsoft, Kerberos Constrained Delegation Overview(Il collegamento viene aperto in una nuova finestra).
Web authoring
Esistono due scenari di Web authoring che non supportano la delega Kerberos: le funzionalità "Connetti a dati sul Web" e "Crea origine dati sul Web" non supportano ancora la delega. In particolare, se crei un’origine dati che utilizza Kerberos con il Web authoring, l’origine dati utilizzerà l’autenticazione dell’account di servizio Esegui come. Se desideri utilizzare la delega Kerberos per creare un’origine dati, devi eseguire la pubblicazione con Tableau Desktop.