Anhang – Webschicht mit Apache-Beispielbereitstellung

Dieses Thema enthält ein komplettes Verfahren, in dem beschrieben wird, wie die Webschicht in der beispielhaften AWS-Referenzarchitektur implementiert wird. Die Beispielkonfiguration setzt sich aus folgenden Komponenten zusammen:

  • AWS-Anwendungslastenausgleich
  • Apache-Proxyserver
  • Mellon-Authentifizierungsmodul
  • Okta-IdP
  • SAML-Authentifizierung

Hinweis: Die in diesem Abschnitt vorgestellte Beispielkonfiguration für die Webschicht enthält detaillierte Verfahren zum Bereitstellen von Software und Diensten von Drittanbietern. Wir haben uns nach Kräften bemüht, die Verfahren zur Aktivierung des Webschicht-Szenarios zu überprüfen und zu dokumentieren. Die Software von Drittanbietern kann sich jedoch ändern oder Ihr Szenario kann von der hier beschriebenen Referenzarchitektur abweichen. Verbindliche Konfigurationsdetails und Support finden Sie in der Dokumentation der Drittanbieter.

Die Linux-Beispiele in diesem Abschnitt zeigen Befehle für RHEL-ähnliche Distributionen. Die hier angegebenen spezifischen Befehle wurden mit der Amazon Linux 2-Distribution entwickelt. Wenn Sie die Ubuntu-Distribution ausführen, bearbeiten Sie die Befehle entsprechend.

Die Bereitstellung der Webschicht in diesem Beispiel erfolgt nach einem schrittweisen Konfigurations- und Überprüfungsverfahren. Die Konfiguration der zentralen Web-Ebene umfasst die folgenden Schritte, um HTTP zwischen Tableau und dem Internet zu aktivieren. Apache wird für Reverse-Proxy/Lastenausgleich hinter dem AWS-Anwendunglastenausgleich ausgeführt und konfiguriert:

  1. Installieren von Apache
  2. Konfigurieren des Reverse-Proxys zum Testen der Konnektivität zu Tableau Server
  3. Konfigurieren von Lastenausgleich auf dem Proxy
  4. Konfigurieren von AWS-Anwendungslastenausgleich

Nachdem die Web-Ebene eingerichtet und die Konnektivität zu Tableau überprüft wurde, konfigurieren Sie die Authentifizierung bei einem externen Anbieter.

Installieren von Apache

Führen Sie das folgende Verfahren auf beiden EC2-Hosts (Proxy 1 und Proxy 2) aus. Wenn Sie die Bereitstellung in AWS gemäß dem Beispiel der Referenzarchitektur vornehmen, sollten Sie zwei Verfügbarkeitszonen haben und in jeder Zone einen einzelnen Proxyserver ausführen.

  1. Installieren Sie Apache:

    sudo yum update -y
    sudo yum install -y httpd
  2. Konfigurieren Sie Apache für den Start beim Neustart:

    sudo systemctl enable --now httpd

  3. Stellen Sie sicher, dass die Version von httpd, die Sie installiert haben, Folgendes enthält: proxy_hcheck_module:

    sudo httpd -M

    proxy_hcheck_module ist erforderlich. Wenn Ihre Version von httpd dieses Modul nicht enthält, aktualisieren Sie auf eine Version von httpd, die es enthält.

Konfigurieren des Proxys zum Testen der Konnektivität zu Tableau Server

Führen Sie dieses Verfahren auf einem der Proxy-Hosts (Proxy 1) aus. Der Zweck dieses Schritts besteht darin, die Konnektivität zwischen dem Internet zu Ihrem Proxyserver für den Tableau Server in der privaten Sicherheitsgruppe zu überprüfen.

  1. Erstellen Sie eine Datei mit dem Namen tableau.conf und fügen Sie sie dem Verzeichnis /etc/httpd/conf.d hinzu.

    Kopieren Sie den folgenden Code und geben Sie die Schlüssel ProxyPass und ProxyPassReverse mit der privaten IP-Adresse des Tableau Server-Knotens 1 an.

    Wichtig: Die unten gezeigte Konfiguration ist keine sichere Konfiguration und sollte nicht in der Produktion verwendet werden. Diese Konfiguration sollte nur während des Installationsprozesses verwendet werden, um die durchgehende Konnektivität zu überprüfen.

    Wenn beispielsweise die IP-Adresse von Knoten 1 10.0.30.32 lautet, würde in der Datei tableau.conf Folgendes stehen:

    <VirtualHost *:80>
    ProxyPreserveHost On
    ProxyPass "/" "http://10.0.30.32:80/"
    ProxyPassReverse "/" "http://10.0.30.32:80/"
    </VirtualHost>
  2. Starten Sie httpd neu:

    sudo systemctl restart httpd

Überprüfung: Konfiguration der Basistopologie

Sie sollten auf die Tableau Server-Administrationsseite zugreifen können, indem Sie zu http://<proxy-public-IP-address> navigieren.

Falls die Tableau Server-Administrationsseite in Ihrem Browser nicht geladen wird, führen Sie die folgenden Schritte zur Fehlerbehebung auf dem Proxy 1-Host aus:

  • Als erstes stoppen Sie httpd und starten Sie es dann erneut.
  • Überprüfen Sie die Datei tableau.conf noch einmal. Stellen Sie sicher, dass die private IP-Adresse von Knoten 1 korrekt ist. Prüfen Sie auf doppelte Anführungszeichen und überprüfen Sie auch die Syntax sorgfältig.
  • Führen Sie den Befehl curl auf dem Reverse-Proxyserver mit der privaten IP-Adresse von Knoten 1 aus (z. B. curl 10.0.1.90). Wenn die Shell nicht HTML zurück gibt oder wenn sie HTML für die Apache-Testwebseite zurück gibt, überprüfen Sie die Protokoll-/Portkonfiguration zwischen der öffentlichen und der privaten Sicherheitsgruppe.
  • Führen Sie den Befehl curl mit der privaten IP-Adresse von Proxy 1 aus (z. B.curl 10.0.0.163). Wenn die Shell den HTML-Code für die Apache-Testwebseite zurück gibt, ist die Proxy-Datei nicht korrekt konfiguriert.
  • Starten Sie httpd immer neu (sudo systemctl restart httpd), wenn Sie die Konfiguration der Proxy-Datei oder der Sicherheitsgruppen geändert haben.
  • Stellen Sie sicher, dass TSM auf Knoten 1 ausgeführt wird.

Konfigurieren von Lastenausgleich auf dem Proxy

  1. Entfernen Sie auf dem demselben Proxy-Host (Proxy 1), auf dem Sie die Datei tableau.conf erstellt haben, die vorhandene Konfiguration für den virtuellen Host, und bearbeiten Sie die Datei so, dass sie die Logik für den Lastenausgleich enthält.

    Beispiel:

    <VirtualHost *:80>
    ServerAdmin admin@example.com
    #Load balancing logic.
    ProxyHCExpr ok234 {%{REQUEST_STATUS} =~ /^[234]/}
    Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED 
    <Proxy balancer://tableau>
    #Replace IP addresses below with the IP addresses to the Tableau Servers running the Gateway service.
    BalancerMember http://10.0.3.40/ route=1 hcmethod=GET hcexpr=ok234 hcuri=/favicon.ico
    BalancerMember http://10.0.4.151/ route=2 hcmethod=GET hcexpr=ok234 hcuri=/favicon.ico
    ProxySet stickysession=ROUTEID
    </Proxy>
    ProxyPreserveHost On
    ProxyPass / balancer://tableau/
    ProxyPassReverse / balancer://tableau/ 
    </VirtualHost>
  2. Stoppen und starten Sie anschließend httpd:

    sudo systemctl stop httpd
    sudo systemctl start httpd
  3. Überprüfen Sie die Konfiguration, indem Sie zu der öffentlichen IP-Adresse von Proxy 1 navigieren.

Kopieren der Konfiguration auf den zweiten Proxyserver

  1. Kopieren Sie die Datei tableau.conf von Proxy 1 und speichern Sie sie auf dem Proxy 2-Host in dem Verzeichnis /etc/httpd/conf.d.
  2. Stoppen und starten Sie anschließend httpd:

    sudo systemctl stop httpd
    sudo systemctl start httpd
  3. Überprüfen Sie die Konfiguration, indem Sie zu der öffentlichen IP-Adresse von Proxy 2 navigieren.

Konfigurieren von AWS-Anwendungslastenausgleich

Konfigurieren Sie den Lastenausgleich als HTTP-Listener. Im hier vorliegenden Verfahren wird beschrieben, wie Sie einen Lastenausgleich in AWS hinzufügen.

Schritt 1: Erstellen einer Zielgruppe

Eine Zielgruppe ist eine AWS-Konfiguration, welche die EC2-Instances definiert, auf denen Ihre Proxyserver ausgeführt werden. Dies sind die Ziele für den Datenverkehr von der LBS.

  1. EC2 > Target groups > Create target group (EC2 > Zielgruppen > Zielgruppe erstellen)

  2. Auf der Seite "Create" (Erstellen):

    • Geben Sie einen Zielgruppennamen ein, zum Beispiel TG-internal-HTTP.
    • Zieltyp: Instanzen
    • Protokoll: HTTP
    • Port: 80
    • VPC: Wählen Sie Ihre VPC aus.
    • Fügen Sie unter Health checks (Integritätsprüfungen) > Advanced health checks settings (Einstellungen für erweiterte Integritätsprüfungen) > Success codes (Erfolgscodes) die Codeliste zum Lesen hinzu: 200,303.
    • Klicken Sie auf Create (Erstellen).
  3. Wählen Sie die Zielgruppe aus, die Sie eben erstellt haben, und klicken Sie dann auf die Registerkarte Targets (Ziele): 

    • Klicken Sie auf Edit (Bearbeiten).
    • Wählen Sie die EC2-Instanzen (oder eine einzelne Instanz, wenn Sie einzeln konfigurieren) aus, auf denen die Proxyanwendung ausgeführt wird. Klicken Sie dann auf Zu registriert hinzufügen.
    • Klicken Sie auf Speichern.

Schritt 2: Starten des Assistenten für Lastenausgleich

  1. EC2 > Load Balancers > Create Load Balancer (EC2 > Lastenausgleichsmodule > Lastenausgleich erstellen)

  2. Erstellen Sie auf der Seite "Select load balancer type" (Lastenausgleichstyp auswählen) einen Anwendungslastenausgleich.

Hinweis: Die Benutzeroberfläche, die zur Konfiguration des Lastenausgleichsmodulen angezeigt wird, ist in den AWS-Rechenzentren nicht einheitlich. Das folgende Verfahren "Assistenten-Konfiguration" bezieht sich auf den AWS-Konfigurationsassistenten, der mit Schritt 1 Lastenausgleichsmodul konfigurieren beginnt. 

Wenn Ihr Rechenzentrum alle Konfigurationen auf einer einzigen Seite anzeigt, die unten auf der Seite eine Schaltfläche Create Load Balancer enthält, befolgen Sie das nachstehende Verfahren "Konfiguration auf einer Seite".

  1. Die Seite Configure load balancer (Lastenausgleich konfigurieren):

    • Geben Sie den Namen an
    • Schema: Internetzugriff (Standard)
    • IP-Adresstyp: IPv4 (Standard)
    • Listener (Listener und Routing):
      1. Behalten Sie den Standard-HTTP-Listener bei.
      2. Klicken Sie auf Listener hinzufügen und fügen Sie HTTPS:443 hinzu.
    • VPC: Wählen Sie die VPC aus, in der Sie alles installiert haben.
    • Verfügbarkeitszonen:
      • Wählen Sie a und b für Ihre Rechenzentrumsregionen aus.
      • Wählen Sie in der entsprechenden Dropdown-Liste das öffentliche Subnetz aus (in dem sich Ihre Proxyserver befinden).
    • Klicken Sie auf Configure Security Settings (Sicherheitseinstellungen konfigurieren)
  2. Die Seite Configure Security Settings (Sicherheitseinstellungen konfigurieren)

    • Laden Sie Ihr öffentliches SSL-Zertifikat hoch.
    • Klicken Sie auf Next: Configure Security Groups (Weiter: Sicherheitsgruppen konfigurieren).
  3. Die Seite Configure Security Groups (Sicherheitsgruppen konfigurieren):

    • Wählen Sie die öffentliche Sicherheitsgruppe aus. Wenn die Standardsicherheitsgruppe ausgewählt ist, deaktivieren Sie diese Auswahl.
    • Klicken Sie auf Next: Configure Routing (Weiter: Routing konfigurieren).
  4. Die Seite Configure Routing (Routing konfigurieren)

    • Zielgruppe: Bestehende Zielgruppe.
    • Name: Wählen Sie eine Zielgruppe aus, die Sie zuvor erstellt haben.
    • Klicken Sie auf Next: Register Targets (Weiter: Ziele registrieren).
  5. Die Seite Register Targets (Ziele registrieren)

    • Die beiden Proxyserver-Instanzen, die Sie zuvor konfiguriert haben, sollten angezeigt werden.
    • Klicken Sie auf Next: Review (Weiter: Überprüfung).
  6. Die Seite Review (Überprüfen)

    Klicken Sie auf Erstellen.

Grundlegende Konfiguration

  • Geben Sie den Namen an
  • Schema: Internetzugriff (Standard)
  • IP-Adresstyp: IPv4 (Standard)

Netzwerkzuordnung

  • VPC: Wählen Sie die VPC aus, in der Sie alles installiert haben.
  • Zuordnungen:
    • Wählen Sie die Verfügbarkeitszonen a und b (oder vergleichbare) für Ihre Rechenzentrumsregionen aus.
    • Wählen Sie in der entsprechenden Dropdown-Liste das öffentliche Subnetz aus (in dem sich Ihre Proxyserver befinden).

Sicherheitsgruppen

  • Wählen Sie die öffentliche Sicherheitsgruppe aus. Wenn die Standardsicherheitsgruppe ausgewählt ist, deaktivieren Sie diese Auswahl.
  • Listener und Routing

    • Behalten Sie den Standard-HTTP-Listener bei. Geben Sie bei Standardaktion die zuvor eingerichtete Zielgruppe an.
    • Klicken Sie auf Listener hinzufügen und fügen Sie HTTPS:443 hinzu. Geben Sie bei Standardaktion die zuvor eingerichtete Zielgruppe an.

    Sichere Listener-Einstellungen

    • Laden Sie Ihr öffentliches SSL-Zertifikat hoch.

    Klicken Sie auf Create Load Balancer.

    Schritt 3: Stickiness aktivieren

    1. Nachdem der Lastenausgleich erstellt wurde, müssen Sie Stickiness für die Zielgruppe aktivieren.

      • Öffnen Sie die AWS-Seite für die Zielgruppe (EC2 > Load Balancing (Lastenausgleich) > Target groups (Zielgruppen)), und wählen Sie die Zielgruppeninstanz aus, die Sie gerade eingerichtet haben. Wählen Sie im Menü Actions (Aktionen) die Option Edit attributes (Attribute bearbeiten) aus.
      • Wählen Sie auf der Seite Edit attributes (Attribute bearbeiten) die Option Stickiness (Bindung) aus, geben Sie eine Zeitdauer von 1 day (1 Tag) an, und klicken Sie dann auf Save changes (Änderungen speichern).
    2. Aktivieren Sie beim Lastenausgleich Stickiness auf dem HTTP-Listener. Wählen Sie den Lastenausgleich aus, den Sie gerade konfiguriert haben, und klicken Sie dann auf die Registerkarte Listeners:

      • Klicken Sie für HTTP:80 auf View/edit rules (Regeln anzeigen/bearbeiten). Klicken Sie auf der Seite Rules (Regeln), die daraufhin angezeigt wird, auf das Bearbeitungssymbol (zuerst oben auf der Seite und dann noch einmal für die Regel), um die Regel zu bearbeiten. Löschen Sie die vorhandene THEN-Regel ("DANN-Regel") und ersetzen Sie sie, indem Sie auf Add action (Aktion hinzufügen) > Forward to... (Weiterleiten an...) klicken. Geben Sie in der resultierenden THEN-Konfiguration die gleiche Zielgruppe an, die Sie erstellt haben. Aktivieren Sie unter "Group-level stickiness" (Bindung auf Gruppenebene) den Punkt "Stickiness", und legen Sie "Duration" (Zeitdauer) auf "1 Day" (1 Tag) fest. Speichern Sie die Einstellung und klicken Sie dann auf Update (Aktualisieren).

    Schritt 4: Festlegen des Leerlaufzeitlimits für den Lastenausgleich

    Aktualisieren Sie für den Lastenausgleich das Leerlaufzeitlimit auf 400 Sekunden.

    Wählen Sie den Lastenausgleich, den Sie für diese Bereitstellung konfiguriert haben, und klicken Sie dann auf Aktionen > Attribute bearbeiten. Stellen Sie das Leerlaufzeitlimit auf 400 Sekunden ein und klicken Sie dann auf Speichern.

    Schritt 5: Überprüfen der LBS-Verbindung

    Öffnen Sie die Seite "AWS Load Balancer" (AWS-Lastenausgleich) (EC2> Load Balancers (Lastenausgleich)), wählen Sie die Lastenausgleichsinstanz aus, die Sie gerade eingerichtet haben.

    Kopieren Sie unter Description (Beschreibung) den DNS-Namen und fügen Sie ihn in einen Browser ein, um auf die Tableau Server-Anmeldeseite zuzugreifen.

    Wenn ein Fehler auf 500-Niveau angezeigt wird, müssen Sie wahrscheinlich Ihre Proxyserver neu starten.

    Aktualisieren des DNS mit der öffentlichen Tableau-URL

    Verwenden Sie den DNS-Zonennamen Ihrer Domäne aus der AWS-Seite "Load Balancer" (Lastenausgleich) > "Description" (Beschreibung), um einen CNAME-Wert in Ihrem DNS zu erstellen. Datenverkehr zu Ihrer URL (tableau.example.com) sollte an den öffentlichen AWS-DNS-Namen gesendet werden.

    Überprüfen der Konnektivität

    Nachdem Ihre DNS-Updates abgeschlossen sind, sollten Sie zu der Tableau Server-Anmeldeseite navigieren können, indem Sie Ihre öffentliche URL eingeben, zum Beispiel:https://tableau.example.com.

    Beispiel für eine Konfiguration für Authentifizierung: SAML mit externem IdP

    Im folgenden Beispiel wird beschrieben, wie Sie SAML mit Okta-IdP und Mellon-Authentifizierungsmodul für eine Tableau-Bereitstellung einrichten und konfigurieren, die in der AWS-Referenzarchitektur ausgeführt wird. In dem Beispiel wird beschrieben, wie Tableau Server und die Apache-Proxyserver für die Verwendung von HTTP konfiguriert werden. Okta wird Anfragen an den AWS-Lastenausgleich über HTTPS senden, aber sämtlicher interner Datenverkehr wird über HTTP erfolgen. Beachten Sie bei der Konfiguration für dieses Szenario die Unterschiede von HTTP und HTTPS, wenn Sie URL-Zeichenfolgen festlegen.

    In diesem Beispiel wird Mellon als Dienstanbietermodul für Vorauthentifizierung auf den Reverse-Proxyservern verwendet. Diese Konfiguration stellt sicher, dass nur authentifizierter Datenverkehr mit Tableau Server verbunden wird, der auch als Dienstanbieter mit dem Okta-IdP agiert. Daher müssen Sie zwei IdP-Anwendungen konfigurieren: eine für den Mellon-Dienstanbieter und eine für den Tableau-Dienstanbieter.

    Erstellen des Tableau-Administratorkontos

    Ein häufiger Fehler beim Konfigurieren von SAML ist, die Erstellung eines Administratorkontos in Tableau Server zu vergessen, bevor SSO aktiviert wird.

    Der erste Schritt besteht darin, ein Konto in Tableau Server mit einer Serveradministratorrolle zu erstellen. Für das Okta-Beispielszenario muss der Benutzername in einem gültigen E-Mail-Adressformat angegeben werden (z. B. user@example.com). Sie müssen für diesen Benutzer ein Kennwort festlegen, das jedoch nach der Konfiguration von SAML nicht mehr verwendet wird.

    Konfigurieren der Vor-Authentifizierungsanwendung von Okta

    Das in diesem Abschnitt beschriebene End-to-End-Szenario erfordert zwei Okta-Anwendungen:

    • Vor-Authentifizierungsanwendung von Okta
    • Tableau Server-Anwendung von Okta

    Jede dieser Anwendungen ist mit unterschiedlichen Metadaten verbunden, die Sie auf dem Reverse-Proxy bzw. Tableau Server konfigurieren müssen.

    In diesem Verfahren wird beschrieben, wie Sie die Vor-Authentifizierungsanwendung von Okta erstellen und konfigurieren. Später in diesem Thema ist vorgesehen, dass Sie die Tableau Server-Anwendung von Okta erstellen. Ein kostenloses Okta-Testkonto mit eingeschränkten Benutzern finden Sie auf der Okta-Entwickler-Webseite(Link wird in neuem Fenster geöffnet).

    Erstellen Sie eine SAML-App-Integration für den Mellon-Vorauthentifizierungs-Dienstanbieter.

    1. Öffnen Sie das Okta-Administrations-Dashboard, und klicken Sie auf Applications > Create App Integration (Anwendungen > App-Integration erstellen).

    2. Wählen Sie auf der Seite Create a new app integration (Neue App-Integration erstellen) die Option SAML 2.0 aus, und klicken Sie dann auf Next (Weiter).

    3. Geben Sie auf der Registerkarte General Settings (Allgemeine Einstellungen) einen App-Namen ein (z. B. Tableau Pre-Auth), und klicken Sie dann auf Next (Weiter).

    4. Auf der Registerkarte Configure SAML (SAML konfigurieren):

      • SSO-URL (Single Sign-On): Das letzte Element des Pfads in der Single Sign-On-URL wird als der MellonEndpointPath in der mellon.conf Konfigurationsdatei bezeichnet, die später in diesem Verfahren behandelt wird. Sie können einen beliebigen Endpunkt angeben. In diesem Beispiel ist sso der Endpunkt. Das letzte Element, postResponse, ist erforderlich: https://tableau.example.com/sso/postResponse.
      • Deaktivieren Sie das Kontrollkästchen Use this for Recipient URL and Destination URL (Dieses für Empfänger-URL und Ziel-URL verwenden).
      • Recipient URL (Empfänger-URL): Ist die gleiche wie die SSO-URL, jedoch mit HTTP. Zum Beispiel: http://tableau.example.com/sso/postResponse.
      • Destination URL (Ziel-URL): Ist die gleiche wie die SSO-URL, jedoch mit HTTP. Zum Beispiel: http://tableau.example.com/sso/postResponse.
      • Audience URI (SP Entity ID) (Zielgruppen-URI (SP-Entitäts-ID)). Zum Beispiel: https://tableau.example.com.
      • Name ID Format (Format der Namens-ID): EmailAddress
      • Application Username (Anwendungsbenutzername): Email
      • Attributes Statements (Attributangaben): Name = mail; Name format (Namensformat) = Unspecified; Value (Wert) = user.email.

      Klicken Sie auf Next (Weiter).

    5. Wählen Sie auf der Registerkarte Feedback Folgendes aus:

      • I'm an Okta customer adding an internal app (Ich bin ein Okta-Kunde und füge eine interne App hinzu)
      • This is an internal app that we have created (Dies ist eine interne App, die wir erstellt haben)
      • Klicken Sie auf Finish (Fertigstellen).
    6. Erstellen Sie die IdP-Metadatendatei vor der Authentifizierung:

      • In Okta: Applications (Anwendungen) > Applications (Anwendungen) > Ihre neue Anwendung (z. B. Tableau Pre-Auth) > Sign On (Anmelden)
      • Klicken Sie neben SAML-Signaturzertifikate auf Anweisungen zur SAML-Einrichtung anzeigen.
      • Führen Sie auf der Seite Konfigurieren von SAML 2.0 für die Anwendung vor der Authentifizierung einen Bildlauf nach unten zum Abschnitt Optional durch, Stellen Sie die folgenden IDP-Metadaten für Ihren SP-Anbieter bereit.
      • Kopieren Sie den Inhalt des XML-Felds, und speichern Sie ihn in einer Datei mit dem Namen pre-auth_idp_metadata.xml.
    7. (Optional) Konfigurieren Sie Multi-Faktor-Authentifizierung (MFA):

      • In Okta: Applications (Anwendungen) > Applications (Anwendungen) > Ihre neue Anwendung (z. B. Tableau Pre-Auth) > Sign On (Anmelden)
      • Klicken Sie unter Sign On Policy (Anmelderichtlinie) auf Add Rule (Regel hinzufügen).
      • Geben Sie in der App Sign On Rule (App-Anmelderegel) einen Namen und die verschiedenen MFA-Optionen an. Um die Funktionalität zu testen, können Sie alle Optionen in der jeweiligen Standardeinstellung belassen. Sie müssen jedoch unter Actions (Aktionen) den Punkt Prompt for factor (Zur Eingabe des Faktors auffordern) auswählen und dann angeben, wie oft sich Benutzer anmelden müssen. Klicken Sie auf Save (Speichern).

    Erstellen und Zuweisen eines Okta-Benutzers

    1. Erstellen Sie in Okta einen Benutzer mit dem gleichen Benutzernamen, den Sie in Tableau erstellt haben (user@example.com): Directory (Verzeichnis) > People (Personen) > Add person (Person hinzufügen).
    2. Nachdem der Benutzer erstellt wurde, weisen Sie ihm die neue Okta-App zu: Klicken Sie auf den Benutzernamen und weisen Sie dann die Anwendung in Assign Application (Anwendung zuweisen) zu.

    Installieren von Mellon für die Vor-Authentifizierung

    1. Führen Sie die folgenden Befehle auf der EC2-Instanz aus, auf der der Apache-Proxyserver ausgeführt wird, um PHP- und Mellon-Module zu installieren:

      sudo yum install httpd php mod_auth_mellon

    2. Erstellen Sie das Verzeichnis /etc/httpd/mellon.

    Konfigurieren von Mellon als Vor-Authentifizierungsmodul

    Führen Sie dieses Verfahren auf beiden Proxyservern aus.

    Sie müssen eine Kopie der Datei pre-auth_idp_metadata.xml haben, die Sie aus der Okta-Konfiguration erstellt haben.

    1. Wechseln Sie das Verzeichnis:

      cd /etc/httpd/mellon

    2. Erstellen Sie die Dienstanbieter-Metadaten. Führen Sie das Skript mellon_create_metadata.sh aus. Sie müssen in dem Befehl die Entitäts-ID und die Rückgabe-URL für Ihre Organisation mit angeben.

      Die Rückgabe-URL wird in Okta als Single Sign On URL (SSO-URL) bezeichnet. Das letzte Element des Pfads in der Rückgabe-URL wird als MellonEndpointPath in der Konfigurationsdatei mellon.conf bezeichnet, die später in diesem Verfahren folgt. In diesem Beispiel geben wir sso als EndpointPath an.

      Beispiel:

      sudo /usr/libexec/mod_auth_mellon/mellon_create_metadata.sh https://tableau.example.com "https://tableau.example.com/sso"

      Das Skript gibt das Dienstanbieterzertifikat, den Schlüssel und Metadatendateien zurück.

    3. Benennen Sie die Dienstanbieterdateien im Verzeichnis mellon so um, dass sie leichter verständlich sind. Wir werden diese Dateien in der Dokumentation mit den folgenden Namen bezeichnen:

      sudo mv *.key mellon.key
      sudo mv *.cert mellon.cert
      sudo mv *.xml sp_metadata.xml

    4. Kopieren Sie die Datei pre-auth_idp_metadata.xml in dasselbe Verzeichnis.

    5. Erstellen Sie die Datei mellon.conf im Verzeichnis /etc/httpd/conf.d:

      sudo nano /etc/httpd/conf.d/mellon.conf

    6. Kopieren Sie den folgenden Inhalt in mellon.conf.

      <Location />
      MellonSPPrivateKeyFile /etc/httpd/mellon/mellon.key
      MellonSPCertFile /etc/httpd/mellon/mellon.cert
      MellonSPMetadataFile /etc/httpd/mellon/sp_metadata.xml
      MellonIdPMetadataFile /etc/httpd/mellon/pre-auth_idp_metadata.xml
      MellonEndpointPath /sso
      MellonEnable "info"
      </Location>
    7. Kopieren Sie den folgenden Inhalt in die vorhandene tableau.conf-Datei:

      Fügen Sie den folgenden Inhalt innerhalb des Blocks <VirtualHost *:80> hinzu. Aktualisieren Sie ServerName mit dem öffentlichen Hostnamen in Ihrer Entitäts-ID:

      DocumentRoot /var/www/html
      ServerName tableau.example.com
      ServerSignature Off
      ErrorLog logs/error_sp.log
      CustomLog logs/access_sp.log combined
      LogLevel info 

      Fügen Sie den Block "Location" außerhalb des Blocks <VirtualHost *:80> hinzu. Aktualisieren Sie MellonCookieDomain mit der Domäne der obersten Ebene, um Cookie-Informationen wie gezeigt aufzubewahren:

      <Location />
      AuthType Mellon
      MellonEnable auth
      Require valid-user
      MellonCookieDomain example.com					
      </Location>

      Die komplette tableau.conf-Datei sollte wie das folgende Beispiel aussehen:

      <VirtualHost *:80>
      ServerAdmin admin@example.com
      ProxyHCExpr ok234 {%{REQUEST_STATUS} =~ /^[234]/}
      Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED
      <Proxy balancer://tableau>
      BalancerMember http://10.0.3.36/ route=1 hcmethod=GET hcexpr=ok234 hcuri=/favicon.ico
      BalancerMember http://10.0.4.15/ route=2 hcmethod=GET hcexpr=ok234 hcuri=/favicon.ico
      ProxySet stickysession=ROUTEID
      </Proxy>
      ProxyPreserveHost On
      ProxyPass / balancer://tableau/
      ProxyPassReverse / balancer://tableau/
      DocumentRoot /var/www/html
      ServerName tableau.example.com
      ServerSignature Off
      ErrorLog logs/error_sp.log
      CustomLog logs/access_sp.log combined
      LogLevel info 
      </VirtualHost>
      <Location />
      AuthType Mellon
      MellonEnable auth
      Require valid-user
      MellonCookieDomain example.com
      </Location>
    8. Überprüfen Sie die Konfiguration. Führen Sie den folgenden Befehl aus:

      sudo apachectl configtest

      Wenn der Konfigurationstest einen oder mehrere Fehler zurückgibt, beheben Sie diese, und führen Sie configtest erneut aus. Bei einer erfolgreichen Konfiguration wird Syntax OK zurückgegeben.

    9. Starten Sie httpd neu:

      sudo systemctl restart httpd

    Erstellen einer Tableau Server-Anwendung in Okta

    1. Im Okta-Dashboard: Applications (Anwendungen) > Applications (Anwendungen) > Browse App Catalog (App-Katalog durchsuchen)
    2. Suchen Sie in Browse App Integration Catalog (App-Integrationskatalog durchsuchen) nach Tableau, wählen Sie die Kachel "Tableau Server" aus und klicken Sie dann auf Add (Hinzufügen).
    3. Geben Sie unter Add Tableau Server (Tableau Server hinzufügen) > General Settings (Allgemeine Einstellungen) ein "Label" (Beschriftung) ein, und klicken Sie dann auf Next (Weiter).
    4. Wählen Sie in "Sign-On Options" (Anmeldeoptionen) die Option SAML 2.0 aus und führen Sie dann einen Bildlauf nach unten durch, bis "Advanced Sign-on Settings" (Erweiterte Anmeldeeinstellungen) angezeigt wird:
      • SAML Entity ID (SAML-Entitäts-ID): Geben Sie die öffentliche URL ein (z. B. https://tableau.example.com).
      • Application user name format (Format des Anwendungsbenutzernamens): Email (E-Mail)
    5. Klicken Sie auf den Link Identity Provider metadata (Identitätsanbieter-Metadaten), um einen Browser zu starten. Kopieren Sie den Browserlink. Das ist der Link, den Sie verwenden werden, wenn Sie Tableau im folgenden Verfahren konfigurieren.
    6. Klicken Sie auf Done (Fertig).
    7. Weisen Sie Ihrem Benutzer (user@example.com) die neue Tableau Server-Okta-App zu: Klicken Sie auf den Benutzernamen und weisen Sie dann die Anwendung in Assign Application (Anwendung zuweisen) zu.

    Aktivieren von SAML in Tableau Server für IdP

    Führen Sie dieses Verfahren auf dem Tableau Server-Knoten 1 aus.

    1. Laden Sie die Metadaten der Tableau Server-Anwendung von Okta herunter. Verwenden Sie den Link, den Sie im vorherigen Verfahren gespeichert haben:

      wget https://dev-66144217.okta.com/app/exk1egxgt1fhjkSeS5d7/sso/saml/metadata -O idp_metadata.xml

    2. Kopieren Sie ein TLS-Zertifikat und die zugehörige Schlüsseldatei auf Tableau Server. Die Schlüsseldatei muss ein RSA-Schlüssel sein. Weitere Informationen zu SAML-Zertifikat- und Identitätsanbieteranforderungen finden Sie unter SAML-Anforderungen (Linux(Link wird in neuem Fenster geöffnet)).

      Zur Vereinfachung der Zertifikatsverwaltung und -bereitstellung sowie als bewährte Sicherheitspraxis empfehlen wir die Verwendung von Zertifikaten, die von einer bedeutenden vertrauenswürdigen Zertifizierungsstelle (CA) eines Drittanbieters erstellt wurden. Alternativ dazu können Sie auch selbstsignierte Zertifikate generieren oder Zertifikate von einer PKI für TLS verwenden.

      Wenn Sie nicht über ein TLS-Zertifikat verfügen, können Sie nach der folgenden Vorgehensweise ein selbstsigniertes Zertifikat generieren.

      Generieren eines selbstsignierten Zertifikats

      Führen Sie dieses Verfahren auf dem Tableau Server-Knoten 1 aus.

      1. Generieren Sie den Schlüssel der signierenden Stammzertifizierungsstelle (CA):

        openssl genrsa -out rootCAKey-saml.pem 2048

      2. Erstellen Sie das Zertifikat der Stammzertifizierungsstelle:

        openssl req -x509 -sha256 -new -nodes -key rootCAKey-saml.pem -days 3650 -out rootCACert-saml.pem

        Sie werden aufgefordert, Werte für die Zertifikatfelder einzugeben. Beispiel:

        Country Name (2 letter code) [XX]:US
        State or Province Name (full name) []:Washington
        Locality Name (eg, city) [Default City]:Seattle
        Organization Name (eg, company) [Default Company Ltd]:Tableau
        Organizational Unit Name (eg, section) []:Operations
        Common Name (eg, your name or your server's hostname) []:tableau.example.com
        Email Address []:example@tableau.com
      3. Erstellen Sie das Zertifikat und den zugehörigen Schlüssel (im Beispiel unten als server-saml.csr und server-saml.key bezeichnet). Der Antragstellername ("Subject Name") für das Zertifikat muss mit dem öffentlichen Hostnamen des Tableau-Hosts übereinstimmen. Der Antragstellername wird mit der Option -subj im Format "/CN=<host-name>" festgelegt, beispielsweise:

        openssl req -new -nodes -text -out server-saml.csr -keyout server-saml.key -subj "/CN=tableau.example.com"

      4. Signieren Sie das neue Zertifikat mit dem CA-Zertifikat, das Sie oben erstellt haben. Der folgende Befehl gibt das Zertifikat auch im crt-Format aus:

        openssl x509 -req -in server-saml.csr -days 3650 -CA rootCACert-saml.pem -CAkey rootCAKey-saml.pem -CAcreateserial -out server-saml.crt

      5. Konvertieren Sie die Schlüsseldatei in RSA. Tableau erfordert eine RSA-Schlüsseldatei für SAML. Führen Sie den folgenden Befehl aus, um den Schlüssel zu konvertieren:

        openssl rsa -in server-saml.key -out server-saml-rsa.key

    3. Konfigurieren Sie SAML. Führen Sie den folgenden Befehl aus und geben Sie Ihre Entitäts-ID und die Rückgabe-URL sowie die Pfade zur Metadatendatei, zur Zertifikatsdatei und zur Schlüsseldatei an:

      tsm authentication saml configure --idp-entity-id "https://tableau.example.com" --idp-return-url "https://tableau.example.com" --idp-metadata idp_metadata.xml --cert-file "server-saml.crt" --key-file "server-saml-rsa.key"

      tsm authentication saml enable

    4. Wenn in Ihrer Organisation Tableau Desktop 2021.4 oder höher ausgeführt wird, müssen Sie den folgenden Befehl ausführen, um Authentifizierung über die Reverse-Proxyserver zu aktivieren.

      Die Tableau Desktop-Versionen 2021.2.1 bis 2021.3 funktionieren ohne Ausführung dieses Befehls, vorausgesetzt, Ihr Vorauthentifizierungsmodul (z. B. Mellon) ist so konfiguriert, dass es die Aufbewahrung von Cookies auf der Domäne der obersten Ebene erlaubt.

      tsm configuration set -k features.ExternalBrowserOAuth -v false

    5. Übernehmen Sie die Konfigurationsänderungen:

      tsm pending-changes apply

    Validierung der SAML-Funktionalität

    Um die End-to-End-SAML-Funktionalität zu validieren, melden Sie sich bei Tableau Server mit der öffentlichen URL (z. B. https://tableau.example.com) mit dem Tableau-Administratorkonto an, das Sie zu Beginn dieses Verfahrens erstellt haben.

    Fehlerbehebung bei der Validierung

    Bad Request: Ein häufiger Fehler in diesem Szenario ist ein Fehler vom Typ "Bad Request" (Ungültige Anforderung) von Okta. Dieses Problem tritt häufig auf, wenn der Browser Daten aus einer früheren Okta-Sitzung zwischenspeichert. Wenn Sie beispielsweise die Okta-Anwendungen als Okta-Administrator verwalten und dann versuchen, mit einem anderen Okta-fähigen Konto auf Tableau zuzugreifen, können Sitzungsdaten aus den Administratordaten den Fehler "Bad Request" verursachen. Wenn dieser Fehler auch dann noch auftritt, wenn Sie den lokalen Browser-Cache löschen, versuchen Sie, das Tableau-Szenario zu validieren, indem Sie eine Verbindung mit einem anderen Browser herstellen.

    Eine weitere Ursache für Fehler vom Typ "Bad Request" (ungültige Anforderung) sind Schreibfehler in einer der vielen URLs, die Sie während der Okta-, Mellon- und SAML-Konfigurationsprozesse eingeben. Überprüfen Sie alle diese Eingaben sorgfältig.

    Oft gibt die HTTPD-Datei error.log auf dem Apache-Server an, welche URL den Fehler verursacht.

    Not Found – The requested URL was not found on this server: Diese Fehlermeldung weist auf einen von vielen Konfigurationsfehlern hin.

    Wenn der Benutzer mit Okta authentifiziert ist und dann diese Fehlermeldung erhält, haben Sie wahrscheinlich die Vor-Authentifizierungsanwendung von Okta bei der Konfiguration von SAML auf Tableau Server hochgeladen. Stellen Sie sicher, dass Sie die Metadaten der Tableau Server-Anwendung von Okta auf Tableau Server konfiguriert haben und nicht die Metadaten der Vor-Authentifizierungsanwendung von Okta.

    Weitere Fehlerbehebungsschritte

    • Überprüfen Sie die Datei tableau.conf sorgfältig auf Tippfehler oder Konfigurationsfehler.
    • Überprüfen Sie die Einstellungen der Vor-Authentifizierungsanwendung von Okta. Stellen Sie sicher, dass die Protokolle HTTP und HTTPS wie in diesem Thema beschrieben festgelegt sind.
    • Starten Sie httpd auf beiden Proxyservern neu.
    • Überprüfen Sie, ob sudo apachectl configtest auf beiden Proxyservern "Syntax OK" zurückgibt.
    • Stellen Sie sicher, dass der Testbenutzer in Okta beiden Anwendungen zugewiesen ist.
    • Überprüfen Sie, ob die Stickiness-Funktion für das Lastenausgleichsmodul und die zugehörigen Zielgruppen aktiviert ist.

    Konfigurieren von SSL/TLS vom Lastenausgleichsmodul zu Tableau Server

    Einige Organisationen verlangen eine Ende-zu-Ende-Verschlüsselung vom Client zum Backend-Dienst. Die bis hierhin beschriebene Standardreferenzarchitektur sieht SSL vom Client zum Lastenausgleich vor, der in der Webschicht Ihrer Organisation ausgeführt wird.

    Um SSL vom Lastenausgleich zu Tableau Server zu konfigurieren, müssen Sie Folgendes tun:

    • Installieren Sie ein gültiges SSL-Zertifikat sowohl auf dem Tableau- als auch auf dem Proxyserver.
    • Konfigurieren Sie SSL vom Lastenausgleich zu den Reverse-Proxyservern.
    • Konfigurieren Sie SSL von den Proxyservern zu Tableau Server.
    • Sie können auch SSL zwischen Tableau Server und der PostgreSQL-Instanz konfigurieren.

    Der Rest dieses Themas beschreibt diese Implementierung im Kontext der AWS-Beispielreferenzarchitektur.

    Beispiel: Konfigurieren von SSL/TLS in der AWS-Referenzarchitektur

    In diesem Abschnitt wird beschrieben, wie Sie SSL auf Tableau konfigurieren und SSL auf einem Apache-Proxyserver konfigurieren – wobei alles in der beispielhaften AWS-Referenzarchitektur ausgeführt wird.

    Die Linux-Beispiele in diesem Abschnitt zeigen Befehle für RHEL-ähnliche Distributionen. Die hier angegebenen spezifischen Befehle wurden mit der Amazon Linux 2-Distribution entwickelt. Wenn Sie die Ubuntu-Distribution ausführen, bearbeiten Sie die Befehle entsprechend.

    Schritt 1: Sammeln von Zertifikaten und zugehörigen Schlüsseln

    Zur Vereinfachung der Zertifikatsverwaltung und -bereitstellung sowie als bewährte Sicherheitspraxis empfehlen wir die Verwendung von Zertifikaten, die von einer bedeutenden vertrauenswürdigen Zertifizierungsstelle (CA) eines Drittanbieters erstellt wurden.

    Alternativ dazu können Sie auch selbstsignierte Zertifikate generieren oder Zertifikate von einer PKI für TLS verwenden.

    Im Folgenden wird beschrieben, wie Sie selbstsignierte Zertifikate erstellen. Wenn Sie, wie von uns empfohlen, Zertifikate von Drittanbietern verwenden, können Sie diesen Vorgang überspringen.

    Führen Sie dieses Verfahren auf einem der Proxy-Hosts aus. Nachdem Sie das Zertifikat und den zugehörigen Schlüssel generiert haben, werden Sie es für den anderen Proxy-Host und Tableau Server-Knoten 1 freigeben.

    1. Generieren Sie den Schlüssel der signierenden Stammzertifizierungsstelle (CA):

      openssl genrsa -out rootCAKey.pem 2048

    2. Erstellen Sie das Zertifikat der Stammzertifizierungsstelle:

      openssl req -x509 -sha256 -new -nodes -key rootCAKey.pem -days 3650 -out rootCACert.pem

      Sie werden aufgefordert, Werte für die Zertifikatfelder einzugeben. Beispiel:

      Country Name (2 letter code) [XX]:US
      State or Province Name (full name) []:Washington
      Locality Name (eg, city) [Default City]:Seattle
      Organization Name (eg, company) [Default Company Ltd]:Tableau
      Organizational Unit Name (eg, section) []:Operations
      Common Name (eg, your name or your server's hostname) []:tableau.example.com
      Email Address []:example@tableau.com
    3. Erstellen Sie das Zertifikat und den zugehörigen Schlüssel (im Beispiel unten als serverssl.csr und serverssl.key bezeichnet). Der Antragstellername ("Subject Name") für das Zertifikat muss mit dem öffentlichen Hostnamen des Tableau-Hosts übereinstimmen. Der Antragstellername wird mit der Option -subj im Format "/CN=<host-name>" festgelegt, beispielsweise:

      openssl req -new -nodes -text -out serverssl.csr -keyout serverssl.key -subj "/CN=tableau.example.com"

    4. Signieren Sie das neue Zertifikat mit dem CA-Zertifikat, das Sie in Schritt 2 erstellt haben. Der folgende Befehl gibt das Zertifikat auch im crt-Format aus:

      openssl x509 -req -in serverssl.csr -days 3650 -CA rootCACert.pem -CAkey rootCAKey.pem -CAcreateserial -out serverssl.crt

    Schritt 2: Konfigurieren von Proxyservern für SSL

    Führen Sie dieses Verfahren auf beiden Proxyservern aus.

    1. Installieren Sie das Apache-SSL-Modul:

      sudo yum install mod_ssl

    2. Erstellen Sie das Verzeichnis /etc/ssl/private:

      sudo mkdir -p /etc/ssl/private

    3. Kopieren Sie die Zertifikat- und die Schlüsseldatei in die folgenden /etc/ssl/-Pfade:

      sudo cp serverssl.crt /etc/ssl/certs/

      sudo cp serverssl.key /etc/ssl/private/

    4. Aktualisieren Sie die vorhandene tableau.conf-Datei mit den folgenden Änderungen:

      • Fügen Sie den SSL-Rewrite-Block hinzu:
        RewriteEngine on
        RewriteCond %{SERVER_NAME} =tableau.example.com
        RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
      • Aktualisieren Sie im SSL-Rewrite-Block denRewriteCond-Servernamen: Fügen Sie Ihren öffentlichen Hostnamen hinzu, zum Beispiel tableau.example.com
      • Ändern Sie <VirtualHost *:80> zu <VirtualHost *:443>.
      • Schließen Sie die <VirtualHost *:443>- und <Location />-Blöcke mit <IfModule mod_ssl.c> ... </IfModule>.
      • BalancerMember: Ändern Sie das Protokoll von http zu https.
      • Fügen Sie SSL*-Elemente innerhalb des <VirtualHost *:443>-Blocks hinzu:
        SSLEngine on
        SSLCertificateFile /etc/ssl/certs/serverssl.crt
        SSLCertificateKeyFile /etc/ssl/private/serverssl.key
        SSLProxyEngine on
        SSLProxyVerify none
        SSLProxyCheckPeerName off
        SSLProxyCheckPeerExpire off
      • Fügen Sie in dem LogLevel-Element die Zeichenfolge ssl:warn hinzu.
      • Optional: Wenn Sie ein Authentifizierungsmodul installiert und konfiguriert haben, enthält die tableau.conf-Datei möglicherweise weitere Elemente. So wird zum Beispiel der <Location /> </Location>-Block über Elemente verfügen.

      So sieht eine für SSL konfigurierte tableau.conf-Beispieldatei aus:

      RewriteEngine on
      RewriteCond %{SERVER_NAME} =tableau.example.com
      RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
      
      <IfModule mod_ssl.c>
      <VirtualHost *:443>
      ServerAdmin admin@example.com
      ProxyHCExpr ok234 {%{REQUEST_STATUS} =~ /^[234]/}
      Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED
      <Proxy balancer://tableau>
      BalancerMember https://10.0.3.36/ route=1 hcmethod=GET hcexpr=ok234 hcuri=/favicon.ico
      BalancerMember https://10.0.4.15/ route=2 hcmethod=GET hcexpr=ok234 hcuri=/favicon.ico
      ProxySet stickysession=ROUTEID
      </Proxy>
      ProxyPreserveHost On
      ProxyPass / balancer://tableau/
      ProxyPassReverse / balancer://tableau/
      DocumentRoot /var/www/html
      ServerName tableau.example.com
      ServerSignature Off
      ErrorLog logs/error_sp.log
      CustomLog logs/access_sp.log combined
      LogLevel info ssl:warn
      SSLEngine on
      SSLCertificateFile /etc/ssl/certs/serverssl.crt
      SSLCertificateKeyFile /etc/ssl/private/serverssl.key
      SSLProxyEngine on
      SSLProxyVerify none
      SSLProxyCheckPeerName off
      SSLProxyCheckPeerExpire off
      </VirtualHost>
      <Location />
      #If you have configured a pre-auth module (e.g. Mellon) include those elements here.
      </Location>
      </IfModule>
    5. Fügen Sie die Datei "index.html" hinzu, um 403-Fehler zu unterdrücken:

      sudo touch /var/www/html/index.html
    6. Starten Sie httpd neu:

      sudo systemctl restart httpd

    Schritt 3: Konfigurieren von Tableau Server für externes SSL

    Kopieren Sie die Dateien serverssl.crt und serverssl.key vom Proxy 1-Host auf den ursprünglichen Tableau Server (Knoten 1).

    Führen Sie die folgenden Befehle auf Knoten 1 aus:

    tsm security external-ssl enable --cert-file serverssl.crt --key-file serverssl.key
    tsm pending-changes apply

    Schritt 4: Optionale Authentifizierungskonfiguration

    Wenn Sie einen externen Identitätsanbieter für Tableau konfiguriert haben, müssen Sie wahrscheinlich die Rückgabe-URLs im IdP-Verwaltungsdashboard aktualisieren.

    Wenn Sie beispielsweise eine Vor-Authentifizierungsanwendung von Okta verwenden, müssen Sie die Anwendung so aktualisieren, dass das HTTPS-Protokoll für die Empfänger-URL und die Ziel-URL verwendet wird.

    Schritt 5: Konfigurieren von AWS-Lastenausgleich für HTTPS

    Wenn Sie – wie in diesem Handbuch beschrieben – mit AWS-Lastenausgleich bereitstellen, ändern Sie die Konfiguration so, dass der AWS-Lastenausgleich HTTPS-Datenverkehr an die Proxyserver sendet:

    1. Heben Sie die Registrierung der vorhandenen HTTP-Zielgruppe auf:

      Wählen Sie in Target Groups (Zielgruppen) die HTTP-Zielgruppe aus, die für den Lastenausgleich konfiguriert wurde, klicken Sie auf Actions (Aktionen), und klicken Sie dann auf Register and deregister instance (Registrierung von Instanz vornehmen und aufheben).

      Wählen Sie auf der Seite Register and deregister targets (Registrierung von Zielen vornehmen und aufheben) die Instanzen aus, die derzeit konfiguriert sind, klicken Sie auf Deregister (Registrierung aufheben) und klicken Sie dann auf Save (Speichern).

    2. Erstellen Sie die HTTPS-Zielgruppe:

      Zielgruppen (Zielgruppen) > Create target group (Zielgruppe erstellen)

      • Wählen Sie "Instances" (Instanzen) aus.
      • Geben Sie einen Zielgruppennamen ein, zum Beispiel TG-internal-HTTPS.
      • Wählen Sie Ihre VPC aus.
      • Protokoll: HTTPS 443
      • Fügen Sie unter Health checks (Integritätsprüfungen) > Advanced health checks settings (Einstellungen für erweiterte Integritätsprüfungen) > Success codes (Erfolgscodes) die Codeliste zum Lesen hinzu: 200,303.
      • Klicken Sie auf Erstellen.
    3. Wählen Sie die Zielgruppe aus, die Sie eben erstellt haben, und klicken Sie dann auf die Registerkarte Targets (Ziele): 

      • Klicken Sie auf Edit (Bearbeiten).
      • Wählen Sie die EC2-Instanzen aus, auf denen die Proxyanwendung ausgeführt wird, und klicken Sie dann auf Add to registered (Zu registriert hinzufügen).
      • Klicken Sie auf Speichern.
    4. Nachdem die Zielgruppe erstellt wurde, müssen Sie "Stickiness" aktivieren:

      • Öffnen Sie die AWS-Seite für die Zielgruppe (EC2 > Load Balancing (Lastenausgleich) > Target groups (Zielgruppen)), und wählen Sie die Zielgruppeninstanz aus, die Sie gerade eingerichtet haben. Wählen Sie im Menü Actions (Aktionen) die Option Edit attributes (Attribute bearbeiten) aus.
      • Wählen Sie auf der Seite Edit attributes (Attribute bearbeiten) die Option Stickiness (Bindung) aus, geben Sie eine Zeitdauer von 1 day (1 Tag) an, und klicken Sie dann auf Save changes (Änderungen speichern).
    5. Aktualisieren Sie für den Lastenausgleich die Listener-Regeln. Wählen Sie den Lastenausgleich aus, den Sie für diese Bereitstellung konfiguriert haben, und klicken Sie dann auf die Registerkarte Listeners.

      • Klicken Sie für HTTP:80 auf View/edit rules (Regeln anzeigen/bearbeiten). Klicken Sie auf der Seite Rules (Regeln), die daraufhin angezeigt wird, auf das Bearbeitungssymbol (zuerst oben auf der Seite und dann noch einmal für die Regel), um die Regel zu bearbeiten. Löschen Sie die vorhandene THEN-Regel ("DANN") und ersetzen Sie sie, indem Sie auf Add action (Aktion hinzufügen) > Redirect to... (Umleiten an...) klicken. Geben Sie in der daraus resultierenden THEN-Konfiguration HTTPS und Port 443 an und belassen Sie die anderen Optionen auf den Standardeinstellungen. Speichern Sie die Einstellung und klicken Sie dann auf Update (Aktualisieren).
      • Klicken Sie für HTTP:443 auf View/edit rules (Regeln anzeigen/bearbeiten). Klicken Sie auf der Seite Rules (Regeln), die daraufhin angezeigt wird, auf das Bearbeitungssymbol (zuerst oben auf der Seite und dann noch einmal für die Regel), um die Regel zu bearbeiten. Ändern Sie in der THEN-Konfiguration unter Forward to... (Weiterleiten an...) die Zielgruppe in die soeben erstellte HTTPS-Gruppe. Aktivieren Sie unter Group-level stickiness (Bindung auf Gruppenebene) den Punkt "Stickiness", und legen Sie "Duration" (Zeitdauer) auf "1 Day" (1 Tag) fest. Speichern Sie die Einstellung und klicken Sie dann auf Update (Aktualisieren).

    Schritt 6: Überprüfen von SSL

    Überprüfen Sie die Konfiguration, indem Sie zu https://tableau.example.com navigieren.

    Vielen Dank für Ihr Feedback!Ihr Feedback wurde erfolgreich übermittelt. Vielen Dank.