Optionen für die Bereitstellung von IAM-Anmeldeinformationen - Amazon Redshift

Optionen für die Bereitstellung von IAM-Anmeldeinformationen

Wählen Sie eine der folgenden Optionen aus, um IAM-Anmeldeinformationen für eine JDBC- oder ODBC-Verbindung bereitzustellen.

  • AWS-Profil

    Als Alternative zur Bereitstellung von Anmeldeinformationswerten in der Form von JDBC- bzw. ODBC-Einstellungen können Sie die Werte in einem benannten Profil platzieren. Weitere Informationen finden Sie unter Verwendung eines Konfigurationsprofils.

  • IAM-Anmeldeinformationen

    Stellen Sie Werte für „AccessKeyID“, „SecretAccessKey“ und, optional, „SessionToken“ in der Form von JDBC- bzw. ODBC-Einstellungen bereit. SessionToken ist nur für eine IAM-Rolle mit temporären Anmeldeinformationen erforderlich. Weitere Informationen finden Sie unter JDBC- und ODBC-Optionen für die Bereitstellung von IAM-Anmeldeinformationen.

  • Identitätsanbieterverbund

    Wenn Sie den Identitätsanbieterverbund verwenden, um Benutzern von einem Identitätsanbieter die Authentifizierung bei Amazon Redshift zu ermöglichen, geben Sie den Namen eines Anmeldeinformationsanbieter-Plug-Ins an. Weitere Informationen finden Sie unter Verwenden eines Anmeldeinformationsanbieter-Plug-ins.

    Die Amazon-Redshift-JDBC- und -ODBC-Treiber beinhalten Plug-Ins für die folgenden SAML-basierten Identitätsverbund-Anmeldeinformationsanbieter:

    • Microsoft Active Identity Federation Services (AD FS)

    • PingOne

    • Okta

    • Microsoft Azure Active Directory (Azure AD)

    Sie können den Namen des jeweiligen Plug-Ins und zugehörige Werte in der Form von JDBC- bzw. ODBC-Einstellungen oder durch Verwendung eines Profils bereitstellen. Weitere Informationen erhalten Sie unter Konfigurierung von JDBC-Treiberoptionen und Konfigurieren von ODBC-Treiberoptionen.

Weitere Informationen finden Sie unter Konfigurieren einer JDBC- oder ODBC-Verbindung zur Verwendung von IAM-Anmeldeinformationen.

Verwendung eines Konfigurationsprofils

Sie können die IAM-Anmeldeinformationsoptionen und GetClusterCredentials-Optionen als Einstellungen in benannten Profilen in Ihrer AWS-Konfigurationsdatei bereitstellen. Stellen Sie den Profilnamen über die Option „Profile JDBC“ bereit. Die Konfiguration ist in einer Datei namens config oder credentials im Ordner .aws in Ihrem Stammverzeichnis gespeichert.

Für ein Plug-In für einen SAML-basierten Anmeldeinformationsanbieter, das in einem Amazon-Redshift-JDBC- oder -ODBC-Treiber enthalten ist, können Sie die zuvor in beschriebenen Einstellungen verwenden Verwenden eines Anmeldeinformationsanbieter-Plug-ins. Wenn plugin_name nicht verwendet wird, werden die anderen Optionen ignoriert.

Das folgende Beispiel zeigt die Datei ~/.aws/credentials mit zwei Profilen.

[default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY [user2] aws_access_key_id=AKIAI44QH8DHBEXAMPLE aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY session_token=AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGd QrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU 9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz +scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==

Geben Sie zur Verwendung der Anmeldedaten für das Beispiel user2 in der JDBC-URL Profile=user2 an.

Weitere Informationen zum Verwenden von Profilen finden Sie unter Benannte Profile im AWS Command Line Interface-Benutzerhandbuch.

Weitere Informationen zur Verwendung von Profilen für JDBC-Treiber finden Sie im Installations- und Konfigurationshandbuch für Amazon-Redshift-JDBC-Treiber.

Weitere Informationen zur Verwendung von Profilen für ODBC-Treiber finden Sie im Installations- und Konfigurationshandbuch für Amazon-Redshift-ODBC-Treiber.

JDBC- und ODBC-Optionen für die Bereitstellung von IAM-Anmeldeinformationen

In der folgenden Tabelle sind die JDBC- und ODBC-Optionen für die Bereitstellung von IAM-Anmeldeinformationen aufgeführt.

Option

Beschreibung

Iam

Ausschließlich zur Verwendung in ODBC-Verbindungszeichenfolgen gedacht. Legen Sie „1“ fest, um die IAM-Authentifizierung zu verwenden.

AccessKeyID

SecretAccessKey

SessionToken

Die Zugriffsschlüssel-ID und der geheime Zugriffsschlüssel für die IAM-Rolle oder den IAM-Benutzer, der für die IAM-Datenbankauthentifizierung konfiguriert ist. SessionToken ist nur für eine IAM-Rolle mit temporären Anmeldeinformationen erforderlich. „SessionToken“ wird für einen IAM-Benutzer nicht verwendet. Weitere Informationen finden Sie unter Temporäre Sicherheitsanmeldeinformationen.
plugin_name Der vollqualifizierte Name einer Klasse, die einen Anmeldeinformationsanbieter implementiert. Der Amazon-Redshift-JDBC-Treiber beinhaltet Plug-Ins für SAML-basierte Anmeldeinformationsanbieter. Wenn Sie plugin_name angeben, können Sie auch andere verwandte Optionen angeben. Weitere Informationen finden Sie unter Verwenden eines Anmeldeinformationsanbieter-Plug-ins.

Profile

Der Name eines Profils in einer AWS-Anmeldeinformations- oder -Konfigurationsdatei, die Werte für die JDBC-Verbindungsoptionen enthält. Weitere Informationen finden Sie unter Verwendung eines Konfigurationsprofils.

Verwenden eines Anmeldeinformationsanbieter-Plug-ins

Amazon Redshift verwendet Plug-Ins für Anmeldeinformationsanbieter zur SSO-Authentifizierung.

Zur Unterstützung der SSO-Authentifizierung stellt Amazon Redshift das Azure-AD-Plug-In für Microsoft Azure Active Directory bereit. Informationen zur Konfiguration dieses Plug-ins finden Sie unter Einrichten der JDBC- oder ODBC-Single-Sign-On-Authentifizierung mit Microsoft Azure AD.

Einrichten der Multi-Factor Authentication

Zur Unterstützung von Multi-Faktor-Authentifizierung (MFA) stellt Amazon Redshift browserbasierte Plug-Ins bereit. Verwenden Sie das Browser-SAML-Plug-In für Okta und PingOne sowie das Azure-AD-Plug-In für Microsoft Azure Active Directory.

Mit dem Browser SAML-Plugin verläuft die SAML-Authentifizierung wie folgt:

  1. Ein Benutzer versucht sich anzumelden.

  2. Das Plug-in startet einen lokalen Server, um eingehende Verbindungen auf dem localhost zu hören.

  3. Das Plug-in startet einen Webbrowser, um eine SAML-Antwort über HTTPS vom angegebenen SSO-Anmelde-URL-Verbund-Identitätsanbieter-Endpunkt anzufordern.

  4. Der Webbrowser folgt dem Link und fordert den Benutzer auf, Anmeldeinformationen einzugeben.

  5. Nachdem der Benutzer sich authentifiziert und seine Zustimmung erteilt hat, gibt der Endpunkt des Verbundidentitätsanbieters eine SAML-Antwort über HTTPS an den von angegebenen URI zurück redirect_uri.

  6. Der Webbrowser verschiebt die Antwortnachricht mit der SAML-Antwort auf die angegebene redirect_uri.

  7. Der lokale Server akzeptiert die eingehende Verbindung und das Plug-In ruft die SAML-Antwort ab und gibt sie an Amazon Redshift weiter.

Mit dem Browser-Azure AD-Plug-in läuft die SAML-Authentifizierung folgendermaßen ab:

  1. Ein Benutzer versucht sich anzumelden.

  2. Das Plug-in startet einen lokalen Server, um eingehende Verbindungen auf dem localhost zu hören.

  3. Das Plugin startet einen Webbrowser, um einen Autorisierungscode vom Azure AD oauth2/authorize-Endpunkt anzufordern.

  4. Der Webbrowser folgt dem generierten Link über HTTPS und fordert den Benutzer auf, Anmeldeinformationen einzugeben. Der Link wird mithilfe von Konfigurationseigenschaften wie Mandant und client_id generiert.

  5. Nachdem der Benutzer sich authentifiziert und seine Zustimmung erteilt hat, gibt der Azure AD oauth2/authorize-Endpunkt eine Antwort zurück und sendet sie über HTTPS mit dem Autorisierungscode an den angegebenen redirect_uri.

  6. Der Webbrowser verschiebt die Antwortnachricht mit der SAML-Antwort auf die angegebene redirect_uri.

  7. Der lokale Server akzeptiert die eingehende Verbindung, und das Plug-in ruft den Autorisierungscode ab und sendet eine POST-Anforderung an den Azure AD oauth2/token-Endpunkt.

  8. Der Azure AD oauth2/token-Endpunkt gibt eine Antwort mit einem Zugriffstoken an den angegebenen redirect_uri zurück.

  9. Das Plug-In ruft die SAML-Antwort ab und übergibt sie an Amazon Redshift.

Lesen Sie die folgenden Abschnitte:

Konfigurieren von Plug-in-Optionen

Geben Sie zur Verwendung eines SAML-basierten Anmeldeinformationsanbieter-Plug-ins die folgenden Optionen mithilfe von JDBC- oder ODBC-Optionen oder in Form eines benannten Profils an. Wenn plugin_name nicht angegeben ist, werden die anderen Optionen ignoriert.

Option

Beschreibung
plugin_name

Bei JDBC der Klassenname, der einen Anmeldeinformationsanbieter implementiert. Geben Sie eines der folgenden Elemente an:

  • Für Active Directory Federation Services

    com.amazon.redshift.plugin.AdfsCredentialsProvider
  • Für Okta

    com.amazon.redshift.plugin.OktaCredentialsProvider
  • Für PingFederate

    com.amazon.redshift.plugin.PingCredentialsProvider
  • Für Microsoft Azure Active Directory

    com.amazon.redshift.plugin.AzureCredentialsProvider
  • Für SAML MFA

    com.amazon.redshift.plugin.BrowserSamlCredentialsProvider
  • Für Microsoft Azure Active Directory SSO mit MFA

    com.amazon.redshift.plugin.BrowserAzureCredentialsProvider

Geben Sie bei ODBC eines der folgenden Elemente an:

  • Für Active Directory Federation Services (AD FS): adfs

  • Für Okta: okta

  • Für PingFederate: ping

  • Für Microsoft Azure Active Directory: azure

  • Für SAML MFA: browser saml

  • Für Microsoft Azure Active Directory SSO mit MFA: browser azure ad

idp_host Der Name des Identitätsanbieterhosts des Unternehmens. Der Name darf keine Schrägstriche („/“) enthalten. Bei einem Okta-Identitätsanbieter sollte der Wert für idp_host mit .okta.com enden.

idp_port

Der vom Identitätsanbieter verwendete Port. Der Standardwert ist 443. Für Okta wird dieser Port ignoriert.

preferred_role

Ein Rollen-ARN (Amazon-Ressourcenname) der AttributeValue-Elemente für das Role-Attribut in der SAML-Zusicherung. Wenden Sie sich für den korrekten Wert für die bevorzugte Rolle an den IdP-Administrator. Weitere Informationen finden Sie unter Konfigurieren von SAML-Zusicherungen für den Identitätsanbieter.

user

Ein Unternehmensbenutzername, ggf. einschließlich der Domäne. Beispielsweise erfordert Active Directory den Domänennamen im Format Domäne\Benutzername.
password

Das Passwort des Unternehmensbenutzers. Wir empfehlen, diese Option nicht zu verwenden. Verwenden Sie stattdessen den SQL-Client, um ein Passwort bereitzustellen.

app_id

Eine ID für eine Okta-Anwendung. Wird nur mit Okta verwendet. Der Wert für app_id folgt im Anwendungseinbettungslink von Okta auf amazon_aws. Wenden Sie sich für diesen Wert an den Identitätsanbieteradministrator . Es folgt ein Beispiel für einen Anwendungseinbettungslink: https://example.okta.com/home/amazon_aws/0oa2hylwrpM8UGehd1t7/272

idp_tenant

Ein Mandant, der für Azure AD verwendet wird. Wird nur mit Azure verwendet.

client_id

Eine Client-ID für die Amazon-Redshift-Unternehmensanwendung in Azure AD. Wird nur mit Azure verwendet.

Einrichten der JDBC- oder ODBC-Single-Sign-On-Authentifizierung mit Microsoft Azure AD

Sie können Microsoft Azure AD als Identitätsanbieter verwenden, um auf Ihren Amazon-Redshift-Cluster zuzugreifen. Im Anschluss finden Sie eine Prozedur, die beschreibt, wie Sie eine Vertrauensstellung für diesen Zweck einrichten. Weitere Informationen zum Konfigurieren von AWS als Serviceanbieter für den Identitätsanbieter finden Sie unter Konfigurieren des SAML-2.0-Identitätsanbieters mit Vertrauensstellung für die vertrauende Seite und Hinzufügen von Ansprüchen im IAM-Benutzerhandbuch.

Anmerkung

Um Azure AD mit JDBC verwenden zu können, muss der Amazon-Redshift-JDBC-Treiber Version 1.2.37.1061 oder höher sein. Um Azure AD mit ODBC verwenden zu können, muss der Amazon-Redshift-ODBC-Treiber Version 1.4.10.1000 oder höher sein.

Weitere Informationen zum Verbinden des Amazon-Redshift-Zugriffs mit Microsoft-Azure-AD-Single-Sign-On finden Sie im folgenden Video.

So richten Sie Azure AD und Ihr AWS-Konto so ein, dass sie einander vertrauen

  1. Erstellen oder verwenden Sie einen vorhandenen Amazon-Redshift-Cluster, mit dem sich Ihre Azure-AD-Benutzer verbinden können. Um die Verbindung zu konfigurieren, werden bestimmte Eigenschaften dieses Clusters benötigt, z. B. die Clusterkennung. Weitere Informationen finden Sie unter Erstellen eines Clusters.

  2. Richten Sie ein Azure Active Directory, Gruppen und Benutzer ein, die für AWS im Microsoft-Azure-Portal verwendet werden.

  3. Fügen Sie Amazon Redshift als Unternehmensanwendung im Microsoft-Azure-Portal für Single Sign-On für die AWS-Konsole und Verbundanmeldung bei Amazon Redshift hinzu. Wählen Sie Enterprise application (Unternehmensanwendung).

  4. Wählen Sie +New Application (+Neue Anwendung). Die Seite „Add an application (Anwendung hinzufügen)“ wird angezeigt.

  5. Suchen Sie im Suchfeld nach AWS.

  6. Wählen Sie Amazon Web Services (AWS) und dann Add (Hinzufügen) aus. Dadurch wird die AWS-Anwendung erstellt.

  7. Wählen Sie unter Manage (Verwalten) die Option Single Sign-onaus.

  8. Wählen Sie SAML. Die Seite „Amazon Web Services (AWS) | SAML-based Sign-on“ (Amazon Web Services (AWS) | SAML-basierte Anmeldung) wird angezeigt.

  9. Wählen Sie Yes (Ja) um zur Seite „Setup Single-Sign-On with SAML (Single-Sign-On mit SAML einrichten)“ fortzufahren. Auf dieser Seite wird die Liste vorkonfigurierter AWS-SSO-bezogener Attribute angezeigt.

  10. Wählen Sie für Basic SAML Configuration (Grundlegende SAML-Konfiguration) das Bearbeitungssymbol und dann Save (Speichern).

  11. Wenn Sie für mehrere Anwendungen konfigurieren, geben Sie einen ID-Wert ein. Geben Sie z. B. ei https://signin.aws.amazon.com/saml#2. Beachten Sie, dass ab der zweiten Anwendung dieses Format mit einem # -Zeichen verwendet werden muss, um einen eindeutigen SPN-Wert anzugeben.

  12. Wählen Sie im Abschnitt User Attributes and Claims (Benutzerattribute und Anträge) das Bearbeitungssymbol aus.

    Standardmäßig sind die Anträge Unique User Identifier (UID), Role, RoleSessionName und SessionDuration vorkonfiguriert.

  13. Wählen Sie + Add new claim (+ Neuen Antrag hinzufügen), um einen Antrag für Datenbankbenutzer hinzuzufügen.

    Geben Sie unter Name DbUser ein.

    Geben Sie für Namespace https://redshift.amazon.com/SAML/Attributes ein.

    Wählen Sie unter Source (Quelle) die Option Attribute (Attribut) aus.

    Wählen Sie für Source attribute (Quellattribut) user.userprincipalname aus. Wählen Sie dann Save (Speichern) aus.

  14. Wählen Sie + Add new claim (+ Neuen Antrag hinzufügen), um einen Antrag für AutoCreate hinzuzufügen.

    Geben Sie unter Name AutoCreate ein.

    Geben Sie für Namespace https://redshift.amazon.com/SAML/Attributes ein.

    Wählen Sie unter Source (Quelle) die Option Attribute (Attribut) aus.

    Wählen Sie für Source attribute (Quellattribut) „true“. Wählen Sie dann Save (Speichern) aus.

    Hier ist 123456789012 Ihr AWS-Konto, AzureSSO ist eine von Ihnen erstellte IAM-Rolle und AzureADProvider ist der IAM-Anbieter.

    Name des Antrags Value (Wert)

    Eindeutige Benutzer-ID (Namens-ID)

    user.userprincipalname

    https://aws.amazon.com/SAML/Attributes/SessionDuration

    „900“

    https://aws.amazon.com/SAML/Attributes/Role

    arn:aws:iam::123456789012:role/AzureSSO,arn:aws:iam::123456789012:saml-provider/AzureADProvider

    https://aws.amazon.com/SAML/Attributes/RoleSessionName

    user.userprincipalname

    https://redshift.amazon.com/SAML/Attributes/AutoCreate

    „true“

    https://redshift.amazon.com/SAML/Attributes/DbGroups

    user.assignedroles

    https://redshift.amazon.com/SAML/Attributes/DbUser

    user.userprincipalname

  15. Fügen Sie unter App Registration (App-Registrierung) > your-application-name > Authentication (Authentifizierung) die Option Mobile And Desktop Application (Mobile und Desktop-Anwendung) hinzu. Geben Sie die URL als „http://localhost/redshift/“ an.

  16. Wählen Sie im Abschnitt SAML Signing Certificate (SAML-Signaturzertifikat) die Option Download (Herunterladen) aus, um die XML-Datei für die Verbundmetadaten herunterzuladen und zu speichern, die beim Erstellen eines IAM-SAML-Identitätsanbieters verwendet werden soll. Diese Datei wird verwendet, um die AWS SSO-Verbundidentität zu erstellen.

  17. Erstellen Sie auf der IAM-Konsole einen IAM SAML-Identitätsanbieter. Das Metadatendokument, das Sie bereitstellen, ist die XML-Datei für Verbundmetadaten, die Sie beim Einrichten der Azure Enterprise-Anwendung gespeichert haben. Ausführliche Schritte finden Sie unter Erstellen und Verwalten eines IAM-Identitätsanbieters (Konsole) im IAM-Benutzerhandbuch.

  18. Erstellen Sie auf der IAM-Konsole eine IAM-Rolle für SAML 2.0-Verbund. Detaillierte Schritte finden Sie unter Erstellen einer Rolle für SAML im IAM-Benutzerhandbuch.

  19. Erstellen Sie eine IAM-Richtlinie, die Sie an die IAM-Rolle anhängen können, die Sie für den SAML 2.0-Verbund auf der IAM-Konsole erstellt haben. Ausführliche Schritte finden Sie unter Erstellen von IAM-Richtlinien (Konsole) im IAM-Benutzerhandbuch.

    Ändern Sie die folgende Richtlinie (im JSON-Format) für Ihre Umgebung:

    • Ersetzen Sie us-west-1 durch die AWS-Region Ihres Clusters.

    • Ersetzen Sie 123456789012 durch Ihr AWS-Konto.

    • Ersetzen Sie cluster-identifier durch Ihre Cluster-ID (oder * für alle Cluster).

    • Ersetzen Sie Ihre Datenbank (oder * alle Datenbanken) durch dev.

    • Ersetzen Sie den eindeutigen Bezeichner Ihrer IAM-Rolle durch AROAJ2UCCR6DPCEXAMPLE.

    • Geben Sie anstelle von Ihre Mandanten- oder Unternehmens-E-Mail-Domäne ein example.com.

    • Geben Sie anstelle von die Datenbankgruppe ein, der Sie den Benutzer zuweisen möchten my_dbgroup.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "redshift:GetClusterCredentials", "Resource": [ "arn:aws:redshift:us-west-1:123456789012:dbname:cluster-identifier/dev", "arn:aws:redshift:us-west-1:123456789012:dbuser:cluster-identifier/${redshift:DbUser}", "arn:aws:redshift:us-west-1:123456789012:cluster:cluster-identifier" ], "Condition": { "StringEquals": { "aws:userid": "AROAJ2UCCR6DPCEXAMPLE:${redshift:DbUser}@example.com" } } }, { "Effect": "Allow", "Action": "redshift:CreateClusterUser", "Resource": "arn:aws:redshift:us-west-1:123456789012:dbuser:cluster-identifier/${redshift:DbUser}" }, { "Effect": "Allow", "Action": "redshift:JoinGroup", "Resource": "arn:aws:redshift:us-west-1:123456789012:dbgroup:cluster-identifier/my_dbgroup" }, { "Effect": "Allow", "Action": [ "redshift:DescribeClusters", "iam:ListRoles" ], "Resource": "*" } ] }

    Diese Richtlinie gewährt Berechtigungen wie folgt:

    • Der erste Abschnitt erteilt der API-Operation GetClusterCredentials die Berechtigung, temporäre Anmeldeinformationen für den angegebenen Cluster abzurufen. In diesem Beispiel ist die Ressource cluster-identifier mit Datenbank dev im Konto 123456789012 und in AWS-Region us-west-1. Die Klausel ${redshift:DbUser} ermöglicht es nur Benutzern, die dem in Azure AD angegebenen DbUser-Wert entsprechen, eine Verbindung herzustellen.

    • Die Bedingungsklausel erzwingt, dass nur bestimmte Benutzer temporäre Anmeldeinformationen erhalten. Dies sind Benutzer unter der Rolle, die durch die eindeutige ID der Rolle AROAJ2UCCR6DPCEXAMPLE im IAM-Konto angegeben wird, das durch eine E-Mail-Adresse in der E-Mail-Domäne Ihres Unternehmens identifiziert wird. Weitere Informationen zu eindeutigen IDs finden Sie unter Eindeutige IDs im IAM-Benutzerhandbuch.

      Ihr Setup mit Ihrem IdP (in diesem Fall Azure AD) bestimmt, wie die Bedingungsklausel geschrieben wird. Wenn die E-Mail Ihres Mitarbeiters johndoe@example.com lautet, stellen Sie ${redshift:DbUser} zuerst auf das Superfeld ein, das dem Benutzernamen johndoe des Mitarbeiters entspricht. Stellen Sie dann das AWS-SAML-Feld RoleSessionName auf das Superfeld ein, das mit der Mitarbeiter-E-Mail-Adresse johndoe@example.com übereinstimmt, damit diese Bedingung funktioniert. Berücksichtigen Sie bei diesem Ansatz Folgendes:

      • Wenn Sie ${redshift:DbUser} als E-Mail des Mitarbeiters festlegen, entfernen Sie das @example.com im JSON-Beispiel,um dem RoleSessionName zu entsprechen.

      • Wenn Sie die RoleSessionId auf nur den Benutzernamen des Mitarbeiters eingestellt haben, entfernen Sie die @example.com im Beispiel, um dem RoleSessionName zu entsprechen.

      • Im JSON-Beispiel sind ${redshift:DbUser} und RoleSessionName beide auf die E-Mail des Mitarbeiters festgelegt. In diesem JSON-Beispiel wird der Amazon-Redshift-Datenbankbenutzername mit @example.com verwendet, um den Benutzer für den Zugriff auf den Cluster anzumelden.

    • Der zweite Abschnitt erteilt die Berechtigung zum Erstellen eines dbuser-Namens im angegebenen Cluster. In diesem Beispiel beschränkt JSON die Erstellung auf ${redshift:DbUser}.

    • Der dritte Abschnitt erteilt die Berechtigung zur Angabe, welcher dbgroup ein Benutzer beitreten kann. In diesem JSON-Beispiel kann ein Benutzer der Gruppe my_dbgroup im angegebenen Cluster beitreten.

    • Der vierte Abschnitt berechtigt Aktionen, die der Benutzer für alle Ressourcen ausführen kann. In diesem JSON-Beispiel erlaubt er Benutzern, redshift:DescribeClusters aufzurufen, um Cluster-Informationen wie Cluster-Endpunkt, AWS-Region und Port abzurufen. Auch ermöglicht es Benutzern, iam:ListRoles aufzurufen, um zu überprüfen, welche Rollen ein Benutzer übernehmen kann.

So richten Sie JDBC für die Authentifizierung bei Microsoft Azure AD ein:

  • Konfigurieren Sie Ihren Datenbankclient für die Verbindung mit Ihrem Cluster über JDBC mithilfe von Azure AD Single Sign-On.

    Sie können jeden Client verwenden, der mithilfe eines JDBC-Treibers eine Verbindung mit Azure AD Single Sign-On herstellt oder eine Sprache wie Java verwendet, um über ein Skript eine Verbindung herzustellen. Informationen zur Installation und Konfiguration finden Sie unter Konfigurieren einer Verbindung mit JDBC-Treiberversion 1.x.

    Sie können beispielsweise SQLWorkbench/J als Client verwenden. Wenn Sie SQLWorkbench/J konfigurieren, verwendet die URL Ihrer Datenbank das folgende Format.

    jdbc:redshift:iam://cluster-identifier:us-west-1/dev

    Wenn Sie SQLWorkbench/J als Client verwenden, führen Sie die folgenden Schritte aus:

    1. Starten Sie SQL Workbench/J. Fügen Sie auf der Seite Select Connection Profile (Verbindungsprofil auswählen) eine Profile Group (Profilgruppe) namens AzureAuth hinzu.

    2. Geben Sie für Connection Profile (Verbindungsprofil) Azure ein.

    3. Wählen Sie Manage Drivers (Treiber verwalten) und dann Amazon Redshift aus. Wählen Sie das Symbol Open Folder (Ordner öffnen) neben Library (Bibliothek) und dann die entsprechende JDBC-JAR-Datei aus.

    4. Fügen Sie auf der Seite Select Connection Profile (Verbindungsprofil auswählen) dem Verbindungsprofil Informationen wie folgt hinzu:

      • Geben Sie für User (Benutzer) Ihren Microsoft Azure-Benutzernamen ein. Dies ist der Benutzername des Microsoft Azure-Kontos, das Sie für die einmalige Anmeldung (Single-Sign-On) verwenden und das über die Berechtigung für den Cluster verfügt, für den Sie sich authentifizieren möchten.

      • Geben Sie für Password (Passwort) Ihr Microsoft Azure-Passwort ein.

      • Wählen Sie für Driver (Treiber) die Option Amazon Redshift (com.amazon.redshift.jdbc.Driver) aus.

      • Geben Sie für URL jdbc:redshift:iam//your-cluster-identifier:your-cluster-region/your-database-name ein.

    5. Wählen Sie Extended Properties (Erweiterte Eigenschaften), um den Verbindungseigenschaften wie folgt zusätzliche Informationen hinzuzufügen:

      Fügen Sie für die Azure AD SSO-Konfiguration zusätzliche Informationen wie folgt hinzu:

      • Geben Sie für plugin_name com.amazon.redshift.plugin.AzureCredentialsProvider ein. Dieser Wert gibt an, dass der Treiber Azure AD Single Sign-On als Authentifizierungsmethode verwenden soll.

      • Geben Sie für idp_tenant your-idp-tenant ein. Wird nur für Microsoft Azure AD verwendet. Dies ist der Mandantenname Ihres Unternehmens, der auf Ihrem Azure AD konfiguriert ist. Dieser Wert kann entweder der Mandantenname oder die eindeutige ID des Mandanten mit Bindestrichen sein.

      • Geben Sie für client_secret your-azure-redshift-application-client-secret ein. Wird nur für Microsoft Azure AD verwendet. Dies ist Ihr Client-Secret der Amazon-Redshift-Anwendung, das Sie beim Einrichten der Azure-Single-Sign-On-Konfiguration erstellt haben. Dies gilt nur für das com.amazon.RedShift.plugin.AzuRecredentialsProvider-Plug-in.

      • Geben Sie für client_id your-azure-redshift-application-client-id ein. Wird nur für Microsoft Azure AD verwendet. Dies ist die Client-ID (mit Bindestrichen) der Amazon-Redshift-Anwendung, die Sie beim Einrichten der Azure-Single-Sign-On-Konfiguration erstellt haben.

      Fügen Sie für Azure AD SSO mit MFA-Konfiguration den Verbindungseigenschaften wie folgt zusätzliche Informationen hinzu:

      • Geben Sie für plugin_name com.amazon.redshift.plugin.BrowserAzureCredentialsProvider ein. Dieser Wert gibt an, dass der Treiber Azure AD SSO mit MFA als Authentifizierungsmethode verwenden soll.

      • Geben Sie für idp_tenant your-idp-tenant ein. Wird nur für Microsoft Azure AD verwendet. Dies ist der Mandantenname Ihres Unternehmens, der auf Ihrem Azure AD konfiguriert ist. Dieser Wert kann entweder der Mandantenname oder die eindeutige ID des Mandanten mit Bindestrichen sein.

      • Geben Sie für client_id your-azure-redshift-application-client-id ein. Diese Option wird nur für Microsoft Azure AD verwendet. Dies ist die Client-ID (mit Bindestrichen) der Amazon-Redshift-Anwendung, die Sie beim Einrichten der Azure-AD-SSO-Konfiguration mit MFA erstellt haben.

      • Geben Sie bei listen_portyour-listen-port“ ein. Dies ist der Port, den der lokale Server überwacht. Der Standardwert ist 7890.

      • Geben Sie für idp_response_timeout the-number-of-seconds ein. Dies ist die Anzahl der Sekunden, für die vor dem Timeout gewartet werden muss, wenn der IdP-Server eine Antwort zurücksendet. Die Mindestanzahl von Sekunden muss 10 sein. Wenn es länger dauert, eine Verbindung mit dem Server herzustellen, als durch diesen Schwellenwert angegeben, wird die Verbindung abgebrochen.

So richten Sie ODBC für die Authentifizierung bei Microsoft Azure AD ein:

  • Konfigurieren Sie Ihren Datenbankclient für die Verbindung mit Ihrem Cluster über ODBC mithilfe von Azure AD Single Sign-On.

    Amazon Redshift stellt ODBC-Treiber für Linux-, Windows- und macOS-Betriebssysteme bereit. Stellen Sie vor der Installation eines ODBC-Treibers fest, ob Ihr SQL-Client-Tool 32-Bit oder 64-Bit ist. Installieren Sie den ODBC-Treiber, der den Anforderungen Ihres SQL-Clienttools entspricht.

    Installieren und konfigurieren Sie außerdem den neuesten Amazon-Redshift-ODBC-Treiber für Ihr Betriebssystem wie folgt:

    Geben Sie unter Windows auf der Seite Amazon Redshift ODBC Driver DSN Setup (DSN-Setup für Amazon Redshift ODBC-Treiber) unter Connection Settings (Verbindungseinstellungen) die folgenden Informationen ein:

    • Geben Sie für Data Source Name (Datenquellenname) your-DSN ein. Dies gibt den Datenquellennamen an, der als ODBC-Profilname verwendet wird.

    • Wählen Sie für Auth type (Authentifizierungstyp) für die Azure AD SSO-Konfiguration die Option Identity Provider: Azure AD. Dies ist die Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung mit Azure Single Sign-On verwendet.

    • Wählen Sie für Auth type (Authentifizierungstyp) für Azure AD SSO mit MFA-Konfiguration Identity Provider: Browser Azure AD. Dies ist die Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung mit Azure Single Sign-On mit MFA verwendet.

    • Geben Sie für Cluster ID (Cluster-ID) your-cluster-identifier ein.

    • Geben Sie für Region your-cluster-region ein.

    • Geben Sie für Database (Datenbank) your-database-name ein.

    • Geben Sie für User (Benutzer) your-azure-username ein. Dies ist der Benutzername des Microsoft Azure-Kontos, das Sie für die einmalige Anmeldung (Single-Sign-On) verwenden und das über die Berechtigung für den Cluster verfügt, für den Sie sich authentifizieren möchten. Verwenden Sie dies nur, wenn Auth Type (Authentifizierungstyp) Identity Provider: Azure AD (Identitätsanbieter: Azure AD) ist.

    • Geben Sie unter Password (Passwort) your-azure-password ein. Verwenden Sie dies nur, wenn Auth Type (Authentifizierungstyp) Identity Provider: Azure AD (Identitätsanbieter: Azure AD) ist.

    • Geben Sie für IdP Tenant (IdP-Mandant) your-idp-tenant ein. Dies ist der Mandantenname Ihres Unternehmens, der auf Ihrem IdP (Azure) konfiguriert ist. Dieser Wert kann entweder der Mandantenname oder die eindeutige ID des Mandanten mit Bindestrichen sein.

    • Geben Sie für Azure Client Secret (Azure-Clientgeheimnis) your-azure-redshift-application-client-secret ein. Dies ist das Client-Secret der Amazon-Redshift-Anwendung, das Sie beim Einrichten der Azure-Single-Sign-On-Konfiguration erstellt haben.

    • Geben Sie für Azure Client ID (Azure-Client-ID) your-azure-redshift-application-client-id ein. Dies ist die Client-ID (mit Bindestrichen) der Amazon-Redshift-Anwendung, die Sie beim Einrichten der Azure-Single-Sign-On-Konfiguration erstellt haben.

    • Geben Sie als Listen Portyour-listen-port“ ein. Dies ist der standardmäßige Listening-Port, den der lokale Server überwacht. Der Standardwert ist 7890. Dies gilt nur für das Browser Azure AD-Plug-in.

    • Geben Sie für Response Timeout (Antwortzeitüberschreitung) the-number-of-seconds ein. Dies ist die Anzahl der Sekunden, für die vor dem Timeout gewartet werden muss, wenn der IdP-Server eine Antwort zurücksendet. Die Mindestanzahl von Sekunden muss 10 sein. Wenn es länger dauert, eine Verbindung mit dem Server herzustellen, als durch diesen Schwellenwert angegeben, wird die Verbindung abgebrochen. Dies gilt nur für das Browser-Azure-AD-Plug-In.

    Bearbeiten Sie die odbc.ini-Datei unter Mac OS und Linux wie folgt:

    Anmerkung

    Bei allen Eingaben wird zwischen Groß- und Kleinschreibung unterschieden.

    • Geben Sie für clusterid your-cluster-identifier ein. Dies ist der Name des erstellten Amazon-Redshift-Clusters.

    • Geben Sie für Region your-cluster-region ein. Dies ist die AWS-Region des erstellten Amazon-Redshift-Clusters.

    • Geben Sie für die database your-database-name ein. Dies ist der Name der Datenbank, auf die Sie im Amazon-Redshift-Cluster zugreifen möchten.

    • Geben Sie für locale en-us ein. Dies ist die Sprache, in der Fehlermeldungen angezeigt werden.

    • Geben Sie für iam 1 ein. Dieser Wert signalisiert dem Treiber, dass mit IAM-Anmeldeinformationen authentifiziert werden soll.

    • Geben Sie für plugin_name für Azure AD SSO-Konfiguration AzureAD ein. Dies signalisiert dem Treiber, Azure Single Sign-On als Authentifizierungsmethode zu verwenden.

    • Geben Sie für plugin_name für Azure AD SSO-Konfiguration mit MFA BrowserAzureAD ein. Dies signalisiert dem Treiber, dass Azure Single Sign-On mit MFA als Authentifizierungsmethode verwendet werden soll.

    • Geben Sie für uid your-azure-username ein. Dies ist der Benutzername des Microsoft Azure-Kontos, das Sie für die einmalige Anmeldung (Single-Sign-On) verwenden und das über die Berechtigung für den Cluster verfügt, für den Sie sich authentifizieren möchten. Verwenden Sie dies nur, wenn der plugin_name AzureAd ist.

    • Geben Sie für pwd your-azure-password ein. Verwenden Sie dies nur, wenn der plugin_name AzureAd ist.

    • Geben Sie für idp_tenant your-idp-tenant ein. Dies ist der Mandantenname Ihres Unternehmens, der auf Ihrem IdP (Azure) konfiguriert ist. Dieser Wert kann entweder der Mandantenname oder die eindeutige ID des Mandanten mit Bindestrichen sein.

    • Geben Sie für client_secret your-azure-redshift-application-client-secret ein. Dies ist das Client-Secret der Amazon-Redshift-Anwendung, das Sie beim Einrichten der Azure-Single-Sign-On-Konfiguration erstellt haben.

    • Geben Sie für client_id your-azure-redshift-application-client-id ein. Dies ist die Client-ID (mit Bindestrichen) der Amazon-Redshift-Anwendung, die Sie beim Einrichten der Azure-Single-Sign-On-Konfiguration erstellt haben.

    • Geben Sie bei listen_portyour-listen-port“ ein. Dies ist der Port, den der lokale Server überwacht. Der Standardwert ist 7890. Dies gilt für das Browser Azure AD-Plug-in.

    • Geben Sie für idp_response_timeout the-number-of-seconds ein. Dies ist der angegebene Zeitraum in Sekunden, für den auf die Antwort von Azure gewartet werden soll. Diese Option gilt für das Browser-Azure-AD-Plug-In.

    Bearbeiten Sie unter macOS und Linux auch die Profileinstellungen, um folgende Exporte hinzuzufügen:

    export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
    export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini

So beheben Sie Probleme mit dem Browser-Azure AD-Plug-in

  1. Zur Verwendung des Browser-Azure AD-Plug-ins müssen Sie die in der Anforderung angegebene Antwort-URL so festlegen, dass sie mit der für Ihre Anwendung konfigurierten Antwort-URL übereinstimmt.

    Navigieren Sie im Microsoft Azure-Portal zur Seite Set up Single Sign-On with SAML (Single Sign-On mit SAML einrichten). Überprüfen Sie dann, ob der Wert unter Reply URL (Antwort-URL) auf „http://localhost/redshift/“ festgelegt ist.

  2. Wenn Sie einen IdP-Mandantenfehler erhalten, überprüfen Sie, ob der Name unter IdP Tenant (IdP-Mandant mit dem Domänennamen übereinstimmt, den Sie ursprünglich zum Einrichten von Active Directory in Microsoft Azure verwendet haben.

    Navigieren Sie unter Windows zum Bereich Connection Settings (Verbindungseinstellungen) der Seite Amazon Redshift ODBC DSN Setup (DSN-Einrichtung von Amazon-Redshift-ODBC). Überprüfen Sie dann, ob der für den IdP (Azure) konfigurierte Mandantenname Ihres Unternehmens mit dem Domänennamen übereinstimmt, den Sie ursprünglich zum Einrichten von Active Directory in Microsoft Azure verwendet haben.

    Suchen Sie unter macOS und Linux die Datei odbc.ini. Überprüfen Sie dann, ob der für den IdP (Azure) konfigurierte Mandantenname Ihres Unternehmens mit dem Domänennamen übereinstimmt, den Sie ursprünglich zum Einrichten von Active Directory in Microsoft Azure verwendet haben.

  3. Wenn Sie einen Fehler erhalten, dass die in der Anforderung angegebene Antwort-URL nicht mit den für Ihre Anwendung konfigurierten Antwort-URLs übereinstimmt, überprüfen Sie, ob die Redirect URIs (Umleitungs-URIs) mit der Antwort-URL übereinstimmen.

    Navigieren Sie im Microsoft Azure-Portal zur Seite App registration (App-Registrierung) Ihrer Anwendung. Überprüfen Sie dann, ob die Umleitungs-URIs mit der Antwort-URL übereinstimmen.

  4. Wenn Sie einen unerwarteten Fehler wegen fehlender Autorisierung erhalten, überprüfen Sie, ob Sie die Konfiguration der Mobil- und Desktopanwendungen abgeschlossen haben.

    Navigieren Sie im Microsoft Azure-Portal zur Seite App registration (App-Registrierung) Ihrer Anwendung. Navigieren Sie dann zu Authentication (Authentifizierung) und überprüfen Sie, ob Sie die Mobil- und Desktopanwendungen für die Verwendung von „http://localhost/redshift/“ als Umleitungs-URIs konfiguriert haben.

Einrichten der JDBC- oder ODBC-Single-Sign-On-Authentifizierung mit AD FS

Sie können AD FS als Identitätsanbieter (IdP) verwenden, um auf Ihren Amazon Redshift-Cluster zuzugreifen. Im Anschluss finden Sie eine Prozedur, die beschreibt, wie Sie eine Vertrauensstellung für diesen Zweck einrichten. Weitere Informationen zum Konfigurieren von AWS als Serviceanbieter für AD FS finden Sie unter Konfigurieren des SAML-2.0-Identitätsanbieters mit Vertrauensstellung für die vertrauende Seite und Hinzufügen von Ansprüchen im IAM-Benutzerhandbuch.

So richten Sie AD FS und Ihr AWS-Konto so ein, dass sie einander vertrauen

  1. Erstellen oder verwenden Sie einen vorhandenen Amazon-Redshift-Cluster, mit dem sich Ihre AD-FS-Benutzer verbinden können. Um die Verbindung zu konfigurieren, werden bestimmte Eigenschaften dieses Clusters benötigt, z. B. die Clusterkennung. Weitere Informationen finden Sie unter Erstellen eines Clusters.

  2. Richten Sie AD FS ein, um den Amazon-Redshift-Zugriff auf die Microsoft Management Console zu steuern:

    1. Wählen Sie ADFS 2.0 und dann Add relying Party Trust (Vertrauensstellung von vertrauender Partei hinzufügen). Wählen Sie auf der Seite Add Relying Party Trust Wizard (Assistent zum Hinzufügen vertrauender Parteien) die Option Start.

    2. Wählen Sie auf der Seite Select Data Source (Datenquelle auswählen) die Option Import data about the relying party published online or on a local network (Online oder im lokalen Netzwerk veröffentlichte Daten über die vertrauende Partei importieren).

    3. Geben Sie für Federation metadata address (host name or URL) (Verbundmetadatenadresse (Hostname oder URL)) https://signin.aws.amazon.com/saml-metadata.xml ein. Die Metadaten-XML-Datei ist ein Standard-SAML-Metadatendokument, das AWS als vertrauende Partei beschreibt.

    4. Geben Sie auf der Seite Specify Display Name (Anzeigename angeben) einen Wert für Display name (Anzeigename) ein.

    5. Wählen Sie auf der Seite Choose Issuance Authorization Rules (Ausgabeautorisierungsregeln auswählen)eine Ausgabeautorisierungsregel aus, um allen Benutzern den Zugriff auf diese vertrauende Partei zu erlauben oder zu verweigern.

    6. Überprüfen Sie auf der Seite Ready to Add trust (Bereit zum Hinzufügen von Vertrauensstellungen) Ihre Einstellungen.

    7. Wählen Sie auf der Seite Finish (Fertig stellen) die Option Open the Edit Claim Rules dialog for this relying party trust when the wizard closes (Nach Abschluss des Assistenten das Dialogfeld „Antragsregeln bearbeiten“ für diese Vertrauensstellung der vertrauenden Seite öffnen).

    8. Wählen Sie im Kontextmenü (Rechtsklick) Relying Party Trusts (Vertrauensstellungen von vertrauenden Parteien).

    9. Öffnen Sie für Ihre vertrauende Partei das Kontextmenü (Rechtsklick), und wählen Sie Edit Claim Rules (Antragsregeln bearbeiten). Wählen Sie auf der Seite Edit Claim Rules (Antragsregeln bearbeiten) die Option Add Rule (Regel hinzufügen).

    10. Wählen Sie unter Claim rule template (Antragsregelvorlage) die Option Transform an Incoming Claim (Eingehende Anträge transformieren), und führen Sie dann auf der Seite Edit Rule (Regel bearbeiten) — NameID die folgenden Schritte aus:

      • Geben Sie unter Claim rule name (Name der Antragsregel) NameIdein.

      • Wählen Sie unter Incoming claim name (Name des eingehenden Antrags) die Option Windows Account Name (Windows-Kontoname).

      • Wählen Sie unter Outgoing claim name (Name des ausgehenden Antrags) die Option Name ID.

      • Wählen Sie unter Outgoing name ID format (Format der ausgehenden Namens-ID) die Option Persistent identifier (Persistente ID).

      • Wählen Sie Pass through all claim values (Alle Antragswerte durchleiten).

    11. Wählen Sie auf der Seite Edit Claim Rules (Antragsregeln bearbeiten) die Option Add Rule (Regel hinzufügen). Wählen Sie auf der Seite Select Rule Template (Regelvorlage auswählen) für Claim rule template (Antragsregelvorlage) die Option Send LDAP Attributes as Claims (LDAP-Attribute als Anträge senden).

    12. Führen Sie auf der Seite Configure Rule (Regel konfigurieren) die folgenden Schritte aus:

      • Geben Sie unter Claim rule name (Name der Antragsregel) RoleSessionName ein.

      • Wählen Sie unter Attribute store (Attributspeicher) Active Directory.

      • Wählen Sie für LDAP Attribute (LDAP-Attribut) Email Addresses (E-Mail-Adressen).

      • Wählen Sie bei Outgoing Claim Type (Art des ausgehenden Anspruchs) https://aws.amazon.com/SAML/Attributes/RoleSessionName aus.

    13. Wählen Sie auf der Seite Edit Claim Rules (Antragsregeln bearbeiten) die Option Add Rule (Regel hinzufügen). Wählen Sie auf der Seite Select Rule Template (Regelvorlage auswählen) für Claim rule template (Antragsregelvorlage) die Option Send Claims Using a Custom Rule (Anträge mit benutzerdefinierter Regel senden).

    14. Geben Sie auf der Seite Edit Rule – Get AD Groups (Regel bearbeiten – AD-Gruppen abrufen) für Claim rule name (Name der Antragsregel) Get AD Groups (AD-Gruppen abrufen) ein.

    15. Geben Sie unter Custom rule (Benutzerdefinierte Regel) Folgendes ein.

      c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer == "AD AUTHORITY"] => add(store = "Active Directory", types = ("http://temp/variable"), query = ";tokenGroups;{0}", param = c.Value);
    16. Wählen Sie auf der Seite Edit Claim Rules (Antragsregeln bearbeiten) die Option Add Rule (Regel hinzufügen). Wählen Sie auf der Seite Select Rule Template (Regelvorlage auswählen) für Claim rule template (Antragsregelvorlage) die Option Send Claims Using a Custom Rule (Anträge mit benutzerdefinierter Regel senden).

    17. Geben Sie auf der Seite Edit Rule - Roles (Regel bearbeiten — Rollen) für Claim rule name Namen der Antragsregel Roles (Rollen) ein.

    18. Geben Sie unter Custom rule (Benutzerdefinierte Regel) Folgendes ein.

      c:[Type == "http://temp/variable", Value =~ "(?i)^AWS-"] => issue(Type = "https://aws.amazon.com/SAML/Attributes/Role", Value = RegExReplace(c.Value, "AWS-", "arn:aws:iam::123456789012:saml-provider/ADFS,arn:aws:iam::123456789012:role/ADFS-"));

      Beachten Sie die ARNs des SAML-Anbieters und der zu übernehmenden Rolle. In diesem Beispiel ist arn:aws:iam:123456789012:saml-provider/ADFS der ARN des SAML-Providers und arn:aws:iam:123456789012:role/ADFS- der ARN der Rolle.

  3. Stellen Sie sicher, dass Sie die federationmetadata.xml-Datei heruntergeladen haben. Überprüfen Sie, dass der Dokumentinhalt keine ungültigen Zeichen enthält. Dies ist die Metadatendatei, die Sie beim Konfigurieren der Vertrauensstellung mit verwenden AWS.

  4. Erstellen Sie auf der IAM-Konsole einen IAM SAML-Identitätsanbieter. Das Metadatendokument, das Sie bereitstellen, ist die XML-Datei mit Verbundmetadaten, die Sie beim Einrichten der Azure Enterprise-Anwendung gespeichert haben. Ausführliche Schritte finden Sie unter Erstellen und Verwalten eines IAM-Identitätsanbieters (Konsole) im IAM-Benutzerhandbuch.

  5. Erstellen Sie auf der IAM-Konsole eine IAM-Rolle für SAML 2.0-Verbund. Detaillierte Schritte finden Sie unter Erstellen einer Rolle für SAML im IAM-Benutzerhandbuch.

  6. Erstellen Sie eine IAM-Richtlinie, die Sie an die IAM-Rolle anhängen können, die Sie für den SAML 2.0-Verbund auf der IAM-Konsole erstellt haben. Ausführliche Schritte finden Sie unter Erstellen von IAM-Richtlinien (Konsole) im IAM-Benutzerhandbuch. Ein Azure AD-Beispiel finden Sie unter Einrichten der JDBC- oder ODBC-Single-Sign-On-Authentifizierung mit Microsoft Azure AD.

So richten Sie JDBC für die Authentifizierung bei AD FS ein:

  • Konfigurieren Sie Ihren Datenbank-Client für die Verbindung mit dem Cluster über JDBC mithilfe von AD FS SSO.

    Sie können jeden Client verwenden, der mithilfe eines JDBC-Treibers eine Verbindung mit Azure AD SSO herstellt oder eine Sprache wie Java verwendet, um über ein Skript eine Verbindung herzustellen. Informationen zur Installation und Konfiguration finden Sie unter Konfigurieren einer Verbindung mit JDBC-Treiberversion 1.x.

    Sie können beispielsweise SQLWorkbench/J als Client verwenden. Wenn Sie SQLWorkbench/J konfigurieren, verwendet die URL Ihrer Datenbank das folgende Format.

    jdbc:redshift:iam://cluster-identifier:us-west-1/dev

    Wenn Sie SQLWorkbench/J als Client verwenden, führen Sie die folgenden Schritte aus:

    1. Starten Sie SQL Workbench/J. Fügen Sie auf der Seite Select Connection Profile (Verbindungsprofil auswählen) eine Profile Group (Profilgruppe) hinzu, z. B. ADFS.

    2. Geben Sie unter Connection Profile (Verbindungsprofil) Ihren Verbindungsprofilnamen ein, z. B. ADFS.

    3. Wählen Sie Manage Drivers (Treiber verwalten) und dann Amazon Redshift aus. Wählen Sie das Symbol Open Folder (Ordner öffnen) neben Library (Bibliothek) und dann die entsprechende JDBC-JAR-Datei aus.

    4. Fügen Sie auf der Seite Select Connection Profile (Verbindungsprofil auswählen) dem Verbindungsprofil Informationen wie folgt hinzu:

      • Geben Sie unter User (Benutzer) Ihren AD FS-Benutzernamen ein. Dies ist der Benutzername des -Kontos, das Sie für die einmalige Anmeldung (Single-Sign-On) verwenden, und das über die Berechtigung für den Cluster verfügt, für den Sie sich authentifizieren möchten.

      • Geben Sie unter Password (Passwort) Ihr AD FS-Passwort ein.

      • Wählen Sie für Driver (Treiber) die Option Amazon Redshift (com.amazon.redshift.jdbc.Driver) aus.

      • Geben Sie für URL jdbc:redshift:iam//your-cluster-identifier:your-cluster-region/your-database-name ein.

    5. Wählen Sie Extended Properties (Erweiterte Eigenschaften) aus. Geben Sie für plugin_name com.amazon.redshift.plugin.AdfsCredentialsProvider ein. Dieser Wert gibt an, dass der Treiber AD FS SSO als Authentifizierungsmethode verwendet.

So richten Sie ODBC für die Authentifizierung bei AD FS ein:

  • Konfigurieren Sie Ihren Datenbank-Client für die Verbindung mit dem Cluster über ODBC mithilfe von AD FS SSO.

    Amazon Redshift stellt ODBC-Treiber für Linux-, Windows- und macOS-Betriebssysteme bereit. Stellen Sie vor der Installation eines ODBC-Treibers fest, ob Ihr SQL-Client-Tool 32-Bit oder 64-Bit ist. Installieren Sie den ODBC-Treiber, der den Anforderungen Ihres SQL-Clienttools entspricht.

    Installieren und konfigurieren Sie außerdem den neuesten Amazon-Redshift-ODBC-Treiber für Ihr Betriebssystem wie folgt:

    Geben Sie unter Windows auf der Seite Amazon Redshift ODBC Driver DSN Setup (DSN-Setup für Amazon Redshift ODBC-Treiber) unter Connection Settings (Verbindungseinstellungen) die folgenden Informationen ein:

    • Geben Sie für Data Source Name (Datenquellenname) your-DSN ein. Dies gibt den Datenquellennamen an, der als ODBC-Profilname verwendet wird.

    • Wählen Sie bei Auth type (Authentifizierungstyp) Identity Provider: SAML (Identitätsanbieter: SAML) aus. Dies ist die Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung mit AD-FS-SSO verwendet.

    • Geben Sie für Cluster ID (Cluster-ID) your-cluster-identifier ein.

    • Geben Sie für Region your-cluster-region ein.

    • Geben Sie für Database (Datenbank) your-database-name ein.

    • Geben Sie für User (Benutzer) your-adfs-username ein. Dies ist der Benutzername des AD FS-Kontos, das Sie für SSO verwenden, und das über die Berechtigung für den Cluster verfügt, für den Sie sich authentifizieren möchten. Verwenden Sie dies nur, wenn Auth type (Authentifizierungstyp) Identity Provider: SAML (Identitätsanbieter: SAML) ist.

    • Geben Sie unter Password (Passwort) your-adfs-password ein. Verwenden Sie dies nur, wenn Auth type (Authentifizierungstyp) Identity Provider: SAML (Identitätsanbieter: SAML) ist.

    Bearbeiten Sie die odbc.ini-Datei unter Mac OS und Linux wie folgt:

    Anmerkung

    Bei allen Eingaben wird zwischen Groß- und Kleinschreibung unterschieden.

    • Geben Sie für clusterid your-cluster-identifier ein. Dies ist der Name des erstellten Amazon-Redshift-Clusters.

    • Geben Sie für Region your-cluster-region ein. Dies ist die AWS-Region des erstellten Amazon-Redshift-Clusters.

    • Geben Sie für die database your-database-name ein. Dies ist der Name der Datenbank, auf die Sie im Amazon-Redshift-Cluster zugreifen möchten.

    • Geben Sie für locale en-us ein. Dies ist die Sprache, in der Fehlermeldungen angezeigt werden.

    • Geben Sie für iam 1 ein. Dieser Wert signalisiert dem Treiber, dass mit IAM-Anmeldeinformationen authentifiziert werden soll.

    • Führen Sie für plugin_name einen der folgenden Schritte aus:

      • Geben Sie für AD FS SSO mit MFA-Konfiguration ein BrowserSAML. Dies ist die Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung bei AD FS verwendet.

      • Geben Sie für die AD FS-SSO-Konfiguration ein ADFS. Dies ist Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung mit Azure AD SSO verwendet.

    • Geben Sie für uid your-adfs-username ein. Dies ist der Benutzername des Microsoft Azure-Kontos, das Sie für SSO verwenden, und das über die Berechtigung für den Cluster verfügt, für den Sie sich authentifizieren möchten. Verwenden Sie dies nur, wenn der plugin_name (Plug-In-Name) ADFS ist.

    • Geben Sie für pwd your-adfs-password ein. Verwenden Sie dies nur, wenn der plugin_name (Plug-In-Name) ADFS ist.

    Bearbeiten Sie unter macOS und Linux auch die Profileinstellungen, um folgende Exporte hinzuzufügen:

    export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
    export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini

Einrichten der JDBC- oder ODBC-Single-Sign-On-Authentifizierung mit Ping Identity

Sie können Ping Identity als Identitätsanbieter (IdP) verwenden, um auf Ihren Amazon Redshift-Cluster zuzugreifen. Im Anschluss finden Sie ein Verfahren zum Einrichten einer Vertrauensstellung für diesen Zweck mithilfe des PingOne-Portals. Weitere Informationen zum Konfigurieren von AWS als Serviceanbieter für Ping Identity finden Sie unter Konfigurieren des SAML-2.0-Identitätsanbieters mit Vertrauensstellung für die vertrauende Seite und Hinzufügen von Ansprüchen im IAM-Benutzerhandbuch.

So richten Sie Ping Identity und Ihr AWS-Konto so ein, dass sie einander vertrauen

  1. Erstellen oder verwenden Sie einen vorhandenen Amazon-Redshift-Cluster, mit dem Ihre Ping-Identity-Benutzer eine Verbindung herstellen können. Um die Verbindung zu konfigurieren, werden bestimmte Eigenschaften dieses Clusters benötigt, z. B. die Clusterkennung. Weitere Informationen finden Sie unter Erstellen eines Clusters.

  2. Fügen Sie Amazon Redshift als neue SAML-Anwendung im PingOne-Portal hinzu. Ausführliche Schritte finden Sie in der Ping Identity-Dokumentation.

    1. Wechseln Sie zu My Applications (Meine Anwendungen).

    2. Wählen Sie unter Add Application (Anwendung hinzufügen) die Option New SAML Application (Neue SAML-Anwendung).

    3. Geben Sie unter Application name (Anwendungsname) Amazon Redshift ein.

    4. Wählen Sie für Protocol Version (Protokollversion) SAML v2.0.

    5. Wählen Sie unter Category (Kategorie) your-application-category aus.

    6. Geben Sie für Assertion Consumer Service (ACS) your-redshift-local-host-url ein. Dies ist der lokale Host und Port, auf den die SAML-Zusicherung umgeleitet wird.

    7. Geben Sie für Entity ID (Entitäts-ID) urn:amazon:webservices ein.

    8. Wählen Sie für Signing (Signieren) die Option Sign Assertion (Zusicherung signieren).

    9. Erstellen Sie im Abschnitt SSO Attribute Mapping (SSO-Attributzuweisung) die Anträge wie in der folgenden Tabelle dargestellt.

      Anwendungsattribut Identity Bridge-Attribut des Literalwerts

      https://aws.amazon.com/SAML/Attributes/Role

      arn:aws:iam::123456789012:role/Ping,arn:aws:iam::123456789012:saml-provider/PingProvider

      https://aws.amazon.com/SAML/Attributes/RoleSessionName

      email

      https://redshift.amazon.com/SAML/Attributes/AutoCreate

      „true“

      https://redshift.amazon.com/SAML/Attributes/DbUser

      email

      https://redshift.amazon.com/SAML/Attributes/DbGroups

      Die Gruppen in den DbGroups-Attributen enthalten das Präfix @directory. Um es zu entfernen, geben Sie bei Identity bridge memberOf ein. Wählen Sie bei Function (Funktion) ExtractByRegularExpression aus. Geben Sie bei Expression (Ausdruck) (.*)[\@](?:.*) ein.

  3. Richten Sie unter Group Access (Gruppenzugriff) bei Bedarf den folgenden Gruppenzugriff ein:

    • https://aws.amazon.com/SAML/Attributes/Role

    • https://aws.amazon.com/SAML/Attributes/RoleSessionName

    • https://redshift.amazon.com/SAML/Attributes/AutoCreate

    • https://redshift.amazon.com/SAML/Attributes/DbUser

  4. Überprüfen Sie Ihre Einrichtung und nehmen Sie Änderungen vor, wenn notwendig.

  5. Verwenden Sie die Initiate Single Sign-On (SSO) URL als Anmelde-URL für das Browser-SAML-Plug-in.

  6. Erstellen Sie auf der IAM-Konsole einen IAM SAML-Identitätsanbieter. Das Metadatendokument, das Sie bereitstellen, ist die XML-Datei für Verbundmetadaten, die Sie beim Einrichten von Ping Identity gespeichert haben. Ausführliche Schritte finden Sie unter Erstellen und Verwalten eines IAM-Identitätsanbieters (Konsole) im IAM-Benutzerhandbuch.

  7. Erstellen Sie auf der IAM-Konsole eine IAM-Rolle für SAML 2.0-Verbund. Detaillierte Schritte finden Sie unter Erstellen einer Rolle für SAML im IAM-Benutzerhandbuch.

  8. Erstellen Sie eine IAM-Richtlinie, die Sie an die IAM-Rolle anhängen können, die Sie für den SAML 2.0-Verbund auf der IAM-Konsole erstellt haben. Ausführliche Schritte finden Sie unter Erstellen von IAM-Richtlinien (Konsole) im IAM-Benutzerhandbuch. Ein Azure AD-Beispiel finden Sie unter Einrichten der JDBC- oder ODBC-Single-Sign-On-Authentifizierung mit Microsoft Azure AD.

So richten Sie JDBC für die Authentifizierung bei Ping Identity ein:

  • Konfigurieren Sie Ihren Datenbank-Client für die Verbindung mit Ihrem Cluster über JDBC mithilfe von Ping Identity SSO.

    Sie können jeden Client verwenden, der mithilfe eines JDBC-Treibers eine Verbindung mit Ping Identity SSO herstellt oder eine Sprache wie Java verwendet, um über ein Skript eine Verbindung herzustellen. Informationen zur Installation und Konfiguration finden Sie unter Konfigurieren einer Verbindung mit JDBC-Treiberversion 1.x.

    Sie können beispielsweise SQLWorkbench/J als Client verwenden. Wenn Sie SQLWorkbench/J konfigurieren, verwendet die URL Ihrer Datenbank das folgende Format.

    jdbc:redshift:iam://cluster-identifier:us-west-1/dev

    Wenn Sie SQLWorkbench/J als Client verwenden, führen Sie die folgenden Schritte aus:

    1. Starten Sie SQL Workbench/J. Fügen Sie auf der Seite Select Connection Profile (Verbindungsprofil auswählen) eine Profile Group (Profilgruppe) hinzu, z. B. Ping.

    2. Geben Sie unter Connection Profile (Verbindungsprofil) your-connection-profile-name ein, z. B. Ping.

    3. Wählen Sie Manage Drivers (Treiber verwalten) und dann Amazon Redshift aus. Wählen Sie das Symbol Open Folder (Ordner öffnen) neben Library (Bibliothek) und dann die entsprechende JDBC-JAR-Datei aus.

    4. Fügen Sie auf der Seite Select Connection Profile (Verbindungsprofil auswählen) dem Verbindungsprofil Informationen wie folgt hinzu:

      • Geben Sie unter User (Benutzer) Ihren PingOne-Benutzernamen ein. Dies ist der Benutzername des PingOne-Kontos, das Sie für die einmalige Anmeldung (Single-Sign-On) verwenden und das über die Berechtigung für den Cluster verfügt, für den Sie sich authentifizieren möchten.

      • Geben Sie unter Password (Passwort) Ihr PingOne-Passwort ein.

      • Wählen Sie für Driver (Treiber) die Option Amazon Redshift (com.amazon.redshift.jdbc.Driver) aus.

      • Geben Sie für URL jdbc:redshift:iam//your-cluster-identifier:your-cluster-region/your-database-name ein.

    5. Wählen Sie Extended Properties (Erweiterte Eigenschaften), und führen Sie einen der folgenden Schritte aus:

      • Geben Sie für login_url your-ping-sso-login-url ein. Dieser Wert gibt die URL an, die SSO als Authentifizierung für die Anmeldung verwenden soll.

      • Geben Sie bei Ping Identity für plugin_name com.amazon.redshift.plugin.PingCredentialsProvider ein. Dieser Wert gibt an, dass der Treiber Ping Identity SSO als Authentifizierungsmethode verwenden soll.

      • Geben Sie bei Ping Identity mit SSO für plugin_name com.amazon.redshift.plugin.BrowserSamlCredentialsProvider ein. Dieser Wert gibt an, dass der Treiber Ping Identity PingOne mit SSO als Authentifizierungsmethode verwenden soll.

So richten Sie ODBC für die Authentifizierung bei Ping Identity ein:

  • Konfigurieren Sie den Datenbank-Client für die Verbindung mit dem Cluster über ODBC mithilfe von Ping Identity PingOne SSO.

    Amazon Redshift stellt ODBC-Treiber für Linux-, Windows- und macOS-Betriebssysteme bereit. Stellen Sie vor der Installation eines ODBC-Treibers fest, ob Ihr SQL-Client-Tool 32-Bit oder 64-Bit ist. Installieren Sie den ODBC-Treiber, der den Anforderungen Ihres SQL-Clienttools entspricht.

    Installieren und konfigurieren Sie außerdem den neuesten Amazon-Redshift-ODBC-Treiber für Ihr Betriebssystem wie folgt:

    Geben Sie unter Windows auf der Seite Amazon Redshift ODBC Driver DSN Setup (DSN-Setup für Amazon Redshift ODBC-Treiber) unter Connection Settings (Verbindungseinstellungen) die folgenden Informationen ein:

    • Geben Sie für Data Source Name (Datenquellenname) your-DSN ein. Dies gibt den Datenquellennamen an, der als ODBC-Profilname verwendet wird.

    • Führen Sie für Auth type (Authentifizierungstyp) eine der folgenden Aktionen aus:

      • Wählen Sie für die Ping Identity-Konfiguration Identitätsanbieter: Ping Federate aus. Dies ist die Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung mit Ping Identity SSO verwendet.

      • Wählen Sie für die Ping Identity mit SSO-Konfiguration Identitätsanbieter: Browser SAML aus. Dies ist die Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung mit Ping Identity mit SSO verwendet.

    • Geben Sie für Cluster ID (Cluster-ID) your-cluster-identifier ein.

    • Geben Sie für Region your-cluster-region ein.

    • Geben Sie für Database (Datenbank) your-database-name ein.

    • Geben Sie für User (Benutzer) your-ping-username ein. Dies ist der Benutzername des PingOne-Kontos, das Sie für SSO verwenden, und das über die Berechtigung für den Cluster verfügt, für den Sie sich authentifizieren möchten. Verwenden Sie dies nur, wenn Auth type (Authentifizierungstyp) Identity Provider: PingFederate (Identitätsanbieter: PingFederate) ist.

    • Geben Sie unter Password (Passwort) your-ping-password ein. Verwenden Sie dies nur, wenn Auth type (Authentifizierungstyp) Identity Provider: PingFederate (Identitätsanbieter: PingFederate) ist.

    • Geben Sie als Listen Portyour-listen-port“ ein. Dies ist der Port, den der lokale Server überwacht. Der Standardwert ist 7890. Dies gilt nur für das Browser SAML-Plug-in.

    • Geben Sie für Response Timeout (Antwortzeitüberschreitung) the-number-of-seconds ein. Dies ist die Anzahl der Sekunden, für die vor dem Timeout gewartet werden muss, wenn der IdP-Server eine Antwort zurücksendet. Die Mindestanzahl von Sekunden muss 10 sein. Wenn es länger dauert, eine Verbindung mit dem Server herzustellen, als durch diesen Schwellenwert angegeben, wird die Verbindung abgebrochen. Dies gilt nur für das Browser SAML-Plug-in.

    • Geben Sie unter Login-URL (Anmelde-URL) your-login-url ein. Dies gilt nur für das Browser SAML-Plug-in.

    Bearbeiten Sie die odbc.ini-Datei unter Mac OS und Linux wie folgt:

    Anmerkung

    Bei allen Eingaben wird zwischen Groß- und Kleinschreibung unterschieden.

    • Geben Sie für clusterid your-cluster-identifier ein. Dies ist der Name des erstellten Amazon-Redshift-Clusters.

    • Geben Sie für Region your-cluster-region ein. Dies ist die AWS-Region des erstellten Amazon-Redshift-Clusters.

    • Geben Sie für die database your-database-name ein. Dies ist der Name der Datenbank, auf die Sie im Amazon-Redshift-Cluster zugreifen möchten.

    • Geben Sie für locale en-us ein. Dies ist die Sprache, in der Fehlermeldungen angezeigt werden.

    • Geben Sie für iam 1 ein. Dieser Wert signalisiert dem Treiber, dass mit IAM-Anmeldeinformationen authentifiziert werden soll.

    • Führen Sie für plugin_name einen der folgenden Schritte aus:

      • Geben Sie für die Ping Identity-Konfiguration ein BrowserSAML. Dies ist die Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung bei Ping Identity verwendet.

      • Geben Sie für die Ping Identity mit SSO-Konfiguration ein Ping. Dies ist die Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung mit Ping Identity mit SSO verwendet.

    • Geben Sie für uid your-ping-username ein. Dies ist der Benutzername des Microsoft Azure-Kontos, das Sie für SSO verwenden, und das über die Berechtigung für den Cluster verfügt, für den Sie sich authentifizieren möchten. Verwenden Sie dies nur, wenn plugin_name Ping ist.

    • Geben Sie für pwd your-ping-password ein. Verwenden Sie dies nur, wenn plugin_name Ping ist.

    • Geben Sie für login_url your-login-url ein. Dies ist die Initiierungs-SSO-URL, die die SAML-Antwort zurückgibt. Dies gilt nur für das Browser SAML-Plug-in.

    • Geben Sie für idp_response_timeout the-number-of-seconds ein. Dies ist der angegebene Zeitraum in Sekunden, für den auf die Antwort von PingOne gewartet wird. Dies gilt nur für das Browser SAML-Plug-in.

    • Geben Sie bei listen_portyour-listen-port“ ein. Dies ist der Port, den der lokale Server überwacht. Der Standardwert ist 7890. Dies gilt nur für das Browser SAML-Plug-in.

    Bearbeiten Sie unter macOS und Linux auch die Profileinstellungen, um folgende Exporte hinzuzufügen:

    export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
    export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini

Einrichten der JDBC- oder ODBC-Single-Sign-On-Authentifizierung mit Okta

Sie können Okta als Identitätsanbieter (IdP) verwenden, um auf Ihren Amazon Redshift-Cluster zuzugreifen. Im Anschluss finden Sie eine Prozedur, die beschreibt, wie Sie eine Vertrauensstellung für diesen Zweck einrichten. Weitere Informationen zum Konfigurieren von AWS als Serviceanbieter für Okta finden Sie unter Konfigurieren des SAML-2.0-Identitätsanbieters mit Vertrauensstellung für die vertrauende Seite und Hinzufügen von Ansprüchen im IAM-Benutzerhandbuch.

So richten Sie Okta und Ihr AWS-Konto so ein, dass sie einander vertrauen

  1. Erstellen oder verwenden Sie einen vorhandenen Amazon-Redshift-Cluster, mit dem sich Ihre Okta-Benutzer verbinden können. Um die Verbindung zu konfigurieren, werden bestimmte Eigenschaften dieses Clusters benötigt, z. B. die Clusterkennung. Weitere Informationen finden Sie unter Erstellen eines Clusters.

  2. Fügen Sie Amazon Redshift als neue Anwendung im Okta-Portal hinzu. Ausführliche Schritte finden Sie in der Okta-Dokumentation.

    • Wählen Sie Add Application (Anwendung hinzufügen).

    • Wählen Sie unter Add Application (Anwendung hinzufügen) die Option Create New App (Neue Anwendung erstellen).

    • Wählen Sie auf der Seite Create a New Add Application Integration (Neue „Anwendung hinzufügen“-Integration erstellen) unter Platform (Plattform) die Option Web.

    • Wählen Sie unter Sign on method (Anmeldemethode) SAML v2.0.

    • Geben Sie auf der Seite General Settings (Allgemeine Einstellungen) unter App name (Name der Anwendung) your-redshift-saml-sso-name ein. Der Name Ihrer Anwendung.

    • Geben Sie auf der Seite SAML Settings (SAML-Einstellungen) unter Single sign-on URL (SSO-URL) your-redshift-local-host-url ein. Dies ist der lokale Host und Port, auf die die SAML-Zusicherung umgeleitet wird, z. B. http://localhost:7890/redshift/.

  3. Verwenden Sie den Wert von Single Sign on URL (Single-Sign-On-URL) als Recipient URL (Empfänger-URL) und Destination URL (Ziel-URL).

  4. Wählen Sie für Signing (Signieren) die Option Sign Assertion (Zusicherung signieren).

  5. Geben Sie unter Audience URI (SP Entity ID) (Zielgruppen-URI (SP-Entitäts-ID)) urn:amazon:webservices für die Ansprüche ein, wie in der folgenden Tabelle dargestellt.

  6. Geben Sie im Abschnitt Advanced Settings (Erweiterte Einstellungen) unter SAML Issuer ID (SAML-Aussteller-ID) your-Identity-Provider-Issuer-ID ein, was Sie im Abschnitt View Setup Instructions (Einrichtungsanweisungen anzeigen) finden.

  7. Erstellen Sie im Abschnitt Attribute Statements (Attributanweisungen) die Anträge, wie in der folgenden Tabelle dargestellt.

    Name des Antrags Value (Wert)

    https://aws.amazon.com/SAML/Attributes/Role

    arn:aws:iam::123456789012:role/Okta,arn:aws:iam::123456789012:saml-provider/Okta

    https://aws.amazon.com/SAML/Attributes/RoleSessionName

    user.email

    https://redshift.amazon.com/SAML/Attributes/AutoCreate

    „true“

    https://redshift.amazon.com/SAML/Attributes/DbUser

    user.email

  8. Suchen Sie im Abschnitt App Embed Link (Link zum Einbetten der App) nach der URL, die Sie als Anmelde-URL für das Browser-SAML-Plug-in verwenden können.

  9. Erstellen Sie auf der IAM-Konsole einen IAM SAML-Identitätsanbieter. Das Metadatendokument, das Sie bereitstellen, ist die XML-Datei für Verbundmetadaten, die Sie beim Einrichten von Okta gespeichert haben. Ausführliche Schritte finden Sie unter Erstellen und Verwalten eines IAM-Identitätsanbieters (Konsole) im IAM-Benutzerhandbuch.

  10. Erstellen Sie auf der IAM-Konsole eine IAM-Rolle für SAML 2.0-Verbund. Detaillierte Schritte finden Sie unter Erstellen einer Rolle für SAML im IAM-Benutzerhandbuch.

  11. Erstellen Sie eine IAM-Richtlinie, die Sie an die IAM-Rolle anhängen können, die Sie für den SAML 2.0-Verbund auf der IAM-Konsole erstellt haben. Ausführliche Schritte finden Sie unter Erstellen von IAM-Richtlinien (Konsole) im IAM-Benutzerhandbuch. Ein Azure AD-Beispiel finden Sie unter Einrichten der JDBC- oder ODBC-Single-Sign-On-Authentifizierung mit Microsoft Azure AD.

So richten Sie JDBC für die Authentifizierung bei Okta ein:

  • Konfigurieren Sie Ihren Datenbank-Client für die Verbindung mit Ihrem Cluster über JDBC mit Okta SSO.

    Sie können jeden Client verwenden, der mithilfe eines JDBC-Treibers eine Verbindung mit Okta SSO herstellt oder eine Sprache wie Java verwendet, um über ein Skript eine Verbindung herzustellen. Informationen zur Installation und Konfiguration finden Sie unter Konfigurieren einer Verbindung mit JDBC-Treiberversion 1.x.

    Sie können beispielsweise SQLWorkbench/J als Client verwenden. Wenn Sie SQLWorkbench/J konfigurieren, verwendet die URL Ihrer Datenbank das folgende Format.

    jdbc:redshift:iam://cluster-identifier:us-west-1/dev

    Wenn Sie SQLWorkbench/J als Client verwenden, führen Sie die folgenden Schritte aus:

    1. Starten Sie SQL Workbench/J. Fügen Sie auf der Seite Select Connection Profile (Verbindungsprofil auswählen) eine Profile Group (Profilgruppe) hinzu, z. B. Okta.

    2. Geben Sie unter Connection Profile (Verbindungsprofil) your-connection-profile-name ein, z. B. Okta.

    3. Wählen Sie Manage Drivers (Treiber verwalten) und dann Amazon Redshift aus. Wählen Sie das Symbol Open Folder (Ordner öffnen) neben Library (Bibliothek) und dann die entsprechende JDBC-JAR-Datei aus.

    4. Fügen Sie auf der Seite Select Connection Profile (Verbindungsprofil auswählen) dem Verbindungsprofil Informationen wie folgt hinzu:

      • Geben Sie unter User (Benutzer) Ihren Okta-Benutzernamen ein. Dies ist der Benutzername des Okta-Kontos, das Sie für die einmalige Anmeldung (Single-Sign-On) verwenden, und das über die Berechtigung für den Cluster verfügt, für den Sie sich authentifizieren möchten.

      • Geben Sie unter Password (Passwort) Ihr Okta-Passwort ein.

      • Wählen Sie für Driver (Treiber) die Option Amazon Redshift (com.amazon.redshift.jdbc.Driver) aus.

      • Geben Sie für URL jdbc:redshift:iam//your-cluster-identifier:your-cluster-region/your-database-name ein.

    5. Wählen Sie Extended Properties (Erweiterte Eigenschaften), und führen Sie einen der folgenden Schritte aus:

      • Geben Sie für login_url your-okta-sso-login-url ein. Dieser Wert gibt die URL an, die SSO als Authentifizierung für die Anmeldung bei Okta verwenden soll.

      • Geben Sie für Okta SSO für plugin_name com.amazon.redshift.plugin.OktaCredentialsProvider ein. Dieser Wert gibt an, dass der Treiber Okta SSO als Authentifizierungsmethode verwenden soll.

      • Geben Sie bei Okta SSO mit MFA für plugin_name com.amazon.redshift.plugin.BrowserSamlCredentialsProvider ein. Dieser Wert gibt an, dass der Treiber Okta SSO mit MFA als Authentifizierungsmethode verwenden soll.

So richten Sie ODBC für die Authentifizierung bei Okta ein:

  • Konfigurieren Sie Ihren Datenbank-Client für die Verbindung mit Ihrem Cluster über ODBC mithilfe von Okta SSO.

    Amazon Redshift stellt ODBC-Treiber für Linux-, Windows- und macOS-Betriebssysteme bereit. Stellen Sie vor der Installation eines ODBC-Treibers fest, ob Ihr SQL-Client-Tool 32-Bit oder 64-Bit ist. Installieren Sie den ODBC-Treiber, der den Anforderungen Ihres SQL-Clienttools entspricht.

    Installieren und konfigurieren Sie außerdem den neuesten Amazon-Redshift-ODBC-Treiber für Ihr Betriebssystem wie folgt:

    Geben Sie unter Windows auf der Seite Amazon Redshift ODBC Driver DSN Setup (DSN-Setup für Amazon Redshift ODBC-Treiber) unter Connection Settings (Verbindungseinstellungen) die folgenden Informationen ein:

    • Geben Sie für Data Source Name (Datenquellenname) your-DSN ein. Dies gibt den Datenquellennamen an, der als ODBC-Profilname verwendet wird.

    • Führen Sie für Auth type (Authentifizierungstyp) eine der folgenden Aktionen aus:

      • Wählen Sie für die Okta SSO-Konfiguration Identity Provider: Okta. Dies ist die Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung mit Okta SSO verwendet.

      • Wählen Sie für Okta SSO mit MFA-Konfiguration Identity Provider: Browser SAML. Dies ist die Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung mit Okta SSO mit MFA verwendet.

    • Geben Sie für Cluster ID (Cluster-ID) your-cluster-identifier ein.

    • Geben Sie für Region your-cluster-region ein.

    • Geben Sie für Database (Datenbank) your-database-name ein.

    • Geben Sie für User (Benutzer) your-okta-username ein. Dies ist der Benutzername des Okta-Kontos, das Sie für SSO verwenden, und das über die Berechtigung für den Cluster verfügt, für den Sie sich authentifizieren möchten. Verwenden Sie dies nur, wenn Auth type (Authentifizierungstyp) Identity Provider: Okta (Identitätsanbieter: Okta) ist.

    • Geben Sie unter Password (Passwort) your-okta-password ein. Verwenden Sie dies nur, wenn Auth type (Authentifizierungstyp) Identity Provider: Okta (Identitätsanbieter: Okta) ist.

    Bearbeiten Sie die odbc.ini-Datei unter Mac OS und Linux wie folgt:

    Anmerkung

    Bei allen Eingaben wird zwischen Groß- und Kleinschreibung unterschieden.

    • Geben Sie für clusterid your-cluster-identifier ein. Dies ist der Name des erstellten Amazon-Redshift-Clusters.

    • Geben Sie für Region your-cluster-region ein. Dies ist die AWS-Region des erstellten Amazon-Redshift-Clusters.

    • Geben Sie für die database your-database-name ein. Dies ist der Name der Datenbank, auf die Sie im Amazon-Redshift-Cluster zugreifen möchten.

    • Geben Sie für locale en-us ein. Dies ist die Sprache, in der Fehlermeldungen angezeigt werden.

    • Geben Sie für iam 1 ein. Dieser Wert signalisiert dem Treiber, dass mit IAM-Anmeldeinformationen authentifiziert werden soll.

    • Führen Sie für plugin_name einen der folgenden Schritte aus:

      • Geben Sie für Okta SSO mit MFA-Konfiguration ein BrowserSAML. Dies ist die Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung bei Okta SSO mit MFA verwendet.

      • Geben Sie für die Okta SSO-Konfiguration ein Okta. Dies ist die Authentifizierungsmethode, die der ODBC-Treiber zur Authentifizierung mit Okta SSO verwendet.

    • Geben Sie für uid your-okta-username ein. Dies ist der Benutzername des Okta-Kontos, das Sie für SSO verwenden, und das über die Berechtigung für den Cluster verfügt, für den Sie sich authentifizieren möchten. Verwenden Sie dies nur, wenn plugin_name (Plug-In-Name) Okta ist.

    • Geben Sie für pwd your-okta-password ein. Verwenden Sie dies nur, wenn plugin_name (Plug-In-Name) Okta ist.

    • Geben Sie für login_url your-login-url ein. Dies ist die Initiierungs-SSO-URL, die die SAML-Antwort zurückgibt. Dies gilt nur für das Browser SAML-Plug-in.

    • Geben Sie für idp_response_timeout the-number-of-seconds ein. Dies ist der angegebene Zeitraum in Sekunden, für den auf die Antwort von PingOne gewartet wird. Dies gilt nur für das Browser SAML-Plug-in.

    • Geben Sie bei listen_portyour-listen-port“ ein. Dies ist der Port, den der lokale Server überwacht. Der Standardwert ist 7890. Dies gilt nur für das Browser SAML-Plug-in.

    Bearbeiten Sie unter macOS und Linux auch die Profileinstellungen, um folgende Exporte hinzuzufügen:

    export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
    export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini