Einführung in keytab-Anforderungen

Für die Kerberos-Authentifizierung werden Anmeldeinformationen benötigt, die in speziell formatierten Dateien gespeichert werden. Diese werden als keytab-Dateien bezeichnet. Möglicherweise müssen Sie keytab-Dateien für Ihre Tableau Server-Bereitstellung generieren. In diesem Thema werden die keytab-Dateien beschrieben, mit denen Tableau Server in einer typischen Organisation auf verschiedene Dienste zugreift. Möglicherweise müssen Sie Keytabs generieren, damit Tableau Server in die folgenden Dienste integriert werden kann:

  • Benutzerauthentifizierung (SSO) in Windows Active Directory
  • Datenquellendelegierung
  • Betriebssystem
  • Verzeichnisdienst

Wenn in Ihrer Organisation IT-Experten Identität, Authentifizierung und/oder Sicherheit verwalten, sollten Sie in Zusammenarbeit mit ihnen das Generieren geeigneter keytab-Dateien für Ihre Tableau Server-Bereitstellung planen.

Benutzerauthentifizierung (SSO) in Windows Active Directory

Wenn Sie Active Directory als Identitätsspeicher für Tableau Server verwenden möchten und die Benutzer durch einmalige Anmeldung per Kerberos authentifiziert werden sollen, müssen Sie eine keytab-Datei für Tableau Server generieren.

Tableau wird ausgeführt in... Muss manuell eine Keytab-Datei erstellt werden?
Windows in der Active Directory-Domäne Ja
Linux in der Active Directory-Domäne Ja
Windows oder Linux in einer Umgebung ohne Active Directory Kerberos SSO ist kein unterstütztes Szenario.

Berücksichtigen Sie dabei folgende Empfehlungen (für Windows- und Linux-Versionen von Tableau Server):

  • Erstellen Sie ein Dienstkonto in Ihrem Verzeichnis für Tableau Server.

  • Erstellen Sie eine keytab-Datei speziell für das Tableau Server-Dienstkonto. Verwenden Sie nicht noch einmal die keytab-Datei, die das Computerkonto/Betriebssystem für die Authentifizierung nutzt. Sie können für die einmalige Anmeldung per Kerberos die gleiche keytab-Datei wie für die Verzeichnisauthentifizierung im Szenario oben verwenden.

  • Sie müssen Dienstprinzipalnamen (Service Principal Names, SPN) in Active Directory für den Tableau Server-Dienst erstellen.

  • Verwenden Sie die Batch-Datei im nächsten Abschnitt zum Erstellen der SPNs und der keytab-Datei.

  • Wenn Sie die SPNs erstellt haben, laden Sie die keytab-Datei wie im Kapitel zur Konfigurieren von Kerberos beschrieben hoch.

Batch-Datei: Festlegen des SPN und Erstellen der keytab-Datei in Active Directory

Sie können eine Batch-Datei verwenden, um die Dienstprinzipalnamen (Service Principal Names, SPN) festzulegen und eine keytab-Datei zu erstellen. Diese Vorgänge sind Teil des Prozesses, um Kerberos SSO für Tableau Server (unter Windows oder Linux) im Active Directory zu ermöglichen.

In älteren Versionen von Tableau Server (vor 2018.2) wurde das Konfigurationsskript vom Tableau Server-Konfigurationsdienstprogramm erstellt.

Kopieren Sie zum Generieren eines Konfigurationsskripts die folgenden Inhalte der Batch-Datei und fügen Sie sie in einer Textdatei ein. Mit der Batch-Datei werden Dienstprinzipalnamen (Service Principal Names, SPN) für Tableau Server sowie eine keytab-Datei für den in der Datei angegebenen Benutzer erstellt.

Folgen Sie den Anweisungen in der Datei. Wenn Sie die Datei angepasst haben, speichern Sie sie als .bat-Datei.

Diese Datei muss in einer Active Directory-Domäne von einem Domänenadministrator ausgeführt werden. Dieser wird zur Eingabe des Dienstkontokennworts des Kontos aufgefordert, das Sie in der Datei angeben.

Die Batchdatei verwendet die Windows-Befehle set, setspnund ktpass .

Hinweis: Die untenstehende Batch-Datei ist selbst dokumentiert. Wenn Sie jedoch keine Erfahrung mit Kerberos und dem Erzeugen von Keytab-Dateien haben, empfehlen wir Ihnen, den Microsoft-Blogbeitrag Alles, was Sie über Keytab-Dateien wissen müssen, zu lesen, bevor Sie fortfahren. Umgebungsdetails in Ihrem Unternehmen können eine zusätzliche Konfiguration des Befehls ktpass erfordern. Beispielsweise müssen Sie festlegen, was für den /crypto-Parameter eingestellt werden soll. Wir empfehlen, einen /crypto-Einzelwert anzugeben, der von Ihrem KDC gefordert wird. Siehe Microsoft-Artikel ktpass für die vollständige Liste der unterstützten Werte für den /crypto-Parameter.

Inhalt der Batch-Datei für SPN und keytab
@echo off
setlocal EnableDelayedExpansion

REM ******* 

REM This script generates the Service Principal Names (SPNs) and keytab files required for 
REM Kerberos SSO with Apache.
REM This script executes set, setspn, and ktpass commands included in any Windows Server 
REM Operating System from 2003 on.
REM Before running this script you must enter configuration information for the setspn and 
REM ktpass commands. 
REM Elements that require your configuration information are enclosed in as such:
REM  ! -- and --!. 
REM After you customize this file, save it as a .bat file, and run on a domain-joined 
REM computer. 
REM This script must be run by a Domain admin.

REM **********

REM The following set command will prompt the domain admin for credentials of the 
REM Tableau Server service account. 
REM This account must be a valid domain user account.
REM If the password contains a literal \" (blackslash - double quote), all backslashes 
REM immediately before the double quote must be
REM duplicated when typed for the password to work, e.g. if password contains 
REM  \" replace with \\", if passwords contains \\" replace with \\\\"

set /p adpass= "Enter password for the Tableau Server service account."
set adpass=!adpass:"=\"!

REM **********

REM The following setspn commands create the SPN in the domain.
REM More information on setspn can be found here: 
REM http://technet.microsoft.com/en-us/library/cc731241(WS.10).aspx  
REM Enter the canonical FQDN and the host names for Tableau Server followed by the  
REM Tableau Server service account name.
REM Use this syntax: HTTP/hostname domain\service_account_name.
REM The example below shows syntax for a computer named "tableau01" in the "example.lan"  
REM domain, with service account, "tab-serv-account":
REM setspn -s HTTP/tableau01 example\tab-serv-account
REM setspn -s HTTP/tableau01.example.lan example\tab-serv-account  
REM DNS and AD are not case sensitive, but the keytab files are.  Verify that host names  
REM match letter case as stored in DNS. 
REM Use Windows Server's DNS Manager utility to verify host name case.

REM **********

echo Creating SPNs...
setspn -s HTTP/!--replace with canonical host name and service account --!
setspn -s HTTP/!--replace with canonical FQDN and service account --!

REM **********

REM The following commands create the keytab file in the same directory where the 
REM bat file is run. More information on ktpass can be found here: 
REM https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/ktpass 
REM Note: keytab files are case-sensitive.
REM The realm following the FQDN should be all uppercase.
REM Syntax is:
REM ktpass /princ HTTP/!--FQDN--!@!--Kerberos_Realm--! /pass !adpass!
REM /pttype KRB5_NTPRINCIPAL /crypto !--cipher--! /out keytabs\kerberos.keytab
REM Best practice: specify the /crypto value that is required by your KDC.
REM Specifying /crypto All will result in passwords stored with RC4 cipher, which is
REM no longer considered secure. 																		
REM The following example shows the ktpass syntax with the example.lan configuration from above:
REM ktpass /princ HTTP/tableau01.example.lan@EXAMPLE.LAN /pass !adpass! /ptype KRB5_NT_PRINCIPAL /crypto AES256-SHA1 /out keytabs\kerberos.keytab

REM **********

echo Creating Keytab files in %CD%\keytabs
mkdir keytabs
ktpass /princ HTTP/!--FQDN--!@!--Kerberos_Realm--! /pass !adpass! /ptype KRB5_NT_PRINCIPAL /crypto AES256-SHA1 /out keytabs\kerberos.keytab

Betriebssystem

Wenn in Ihrer Organisation Kerberos für die Authentifizierung verwendet wird, muss der Computer, auf dem Tableau Server ausgeführt wird, in dem Kerberos-Bereich authentifiziert werden, in dem die Software ausgeführt wird.

Tableau wird ausgeführt in... Muss manuell eine Keytab-Datei erstellt werden?
Windows in der Active Directory-Domäne Nein
Linux in der Active Directory-Domäne Ja
Windows oder Linux in einer Umgebung ohne Active Directory Ja

Wenn Sie Tableau Server unter Windows ausführen und der Computer mit dem Active Directory verbunden ist, müssen Sie keine Keytab-Datei für das Betriebssystem verwalten oder generieren.

Wenn Sie Tableau Server unter Linux in einem Kerberos-Bereich (MIT KDC oder Active Directory) ausführen, müssen Sie eine keytab-Datei speziell für das Betriebssystem des Computers generieren. Die keytab-Datei, die Sie für den Computer erstellen, sollte speziell für die Betriebssystemauthentifizierung erstellt werden. Verwenden Sie für die Betriebssystemauthentifizierung nicht die gleiche keytab-Datei wie für die weiter unten in diesem Thema beschriebenen Dienste.

Verzeichnisdienst

Wenn Ihr Unternehmen einen Verzeichnisdienst, wie LDAP oder Active Directory, zur Verwaltung der Benutzeridentität verwendet, benötigt Tableau Server einen Lesezugriff auf das Verzeichnis.

Alternativ können Sie Tableau Server zum Verwalten aller Konten konfigurieren, indem Sie bei der Installation einen lokalen Identitätsspeicher angeben. In diesem Fall benötigen Sie keine Keytab.

In der folgenden Tabelle werden die Anforderungen für keytab zusammengefasst:

Tableau wird ausgeführt in ... Verzeichnisdienst Muss manuell eine keytab-Datei erstellt werden?
Windows in AD-Domäne Active Directory Nein
Windows LDAP (GSSAPI-Bindung) Ja
Linux Active Directory oder LDAP (GSSAPI-Bindung) Ja
Windows oder Linux Active Directory oder LDAP (Einfache Bindung) Nein
Windows oder Linux Lokaler Identitätsspeicher Kein Keytab erforderlich.

Wenn Sie für dieses Szenario manuell eine keytab-Datei generieren müssen, verwenden Sie sie für die GSSAPI-Bindung an das Verzeichnis. Berücksichtigen Sie die folgenden Empfehlungen:

  • Erstellen Sie ein Dienstkonto in Ihrem Verzeichnis für Tableau Server.

  • Erstellen Sie eine keytab-Datei speziell für das Tableau Server-Dienstkonto. Verwenden Sie nicht noch einmal die keytab-Datei, die das Computerkonto/Betriebssystem für die Authentifizierung nutzt.

  • Laden Sie die keytab-Datei als Teil der json-Konfiguration des Tableau Server-Identitätsspeichers hoch. Informationen finden Sie unter identityStore-Entität.

Datenquellendelegierung

Sie können auch mit der Kerberos-Delegierung auf Datenquellen in einem Active Directory-Verzeichnis zugreifen. In diesem Szenario können Benutzer in Tableau Server mit einem beliebigen unterstützten Authentifizierungsmechanismus authentifiziert werden (SAML, lokale Authentifizierung, Kerberos usw.), sie können aber auf Datenquellen zugreifen, die von Kerberos aktiviert wurden.

Tableau wird ausgeführt in... Muss manuell eine Keytab-Datei erstellt werden?
Windows in der Active Directory-Domäne Ja
Linux in der Active Directory-Domäne Ja
Windows oder Linux in einer Umgebung ohne Active Directory Kein unterstütztes Szenario.

Berücksichtigen Sie die folgenden Empfehlungen:

  • Die Keytab-Datei, die Sie für die Kerberos-Delegation verwenden, kann die gleiche Keytab-Datei sein, die Sie für die Kerberos-Benutzerauthentifizierung (SSO) verwenden.

  • Die keytab-Datei muss dem Dienstprinzipal für die Kerberos-Delegierung in Active Directory zugeordnet sein.

  • Sie können die gleiche keytab-Datei für mehrere Datenquellen verwenden.

Weitere Informationen erhalten Sie in den folgenden Themen zur Konfiguration:

Vielen Dank für Ihr Feedback! Es gab einen Fehler bei der Übermittlung Ihres Feedbacks. Versuchen Sie es erneut oder senden Sie uns eine Nachricht.