Amazon Redshift unterstützt ab dem 1. November 2025 nicht mehr die Erstellung neuer Python-UDFs. Wenn Sie Python-UDFs verwenden möchten, erstellen Sie die UDFs vor diesem Datum. Bestehende Python-UDFs funktionieren weiterhin wie gewohnt. Weitere Informationen finden Sie im Blog-Posting
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 Verwenden 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 Anmeldeinformationsanbieter-Plugins.
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 finden Sie unter Konfigurationsoptionen für die JDBC-Treiberversion 2.x.
-
Weitere Informationen finden Sie unter Schritt 5: Konfigurieren einer JDBC- oder ODBC-Verbindung zur Verwendung von IAM-Anmeldeinformationen.
Verwenden 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 Anmeldeinformationsanbieter-Plugins. 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 zur Verwendung von Profilen finden Sie unter Einstellungen der Konfigurations- und Anmeldeinformationsdatei im Benutzerhandbuch zu AWS Command Line Interface.
Weitere Informationen zur Verwendung von Profilen für JDBC-Treiber finden Sie in Angeben von Profilen.
Weitere Informationen zur Verwendung von Profilen für ODBC-Treiber finden Sie in Authentifizierungsmethoden.
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 |
|---|---|
|
|
Ausschließlich zur Verwendung in ODBC-Verbindungszeichenfolgen gedacht. Legen Sie „1“ fest, um die IAM-Authentifizierung zu verwenden. |
|
|
Die Zugriffsschlüssel-ID und der geheime Zugriffsschlüssel für die IAM-Rolle oder den 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 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 Anmeldeinformationsanbieter-Plugins. |
|
|
Der Name eines Profils in einer AWS-Anmeldeinformations- oder -Konfigurationsdatei, die Werte für die JDBC-Verbindungsoptionen enthält. Weitere Informationen finden Sie unter Verwenden eines Konfigurationsprofils. |
JDBC- und ODBC-Optionen zum Erstellen von Benutzeranmeldeinformationen für die Datenbank
Geben Sie den Datenbankbenutzernamen als JDBC- oder ODBC-Option an, um den Amazon-Redshift-JDBC- oder -ODBC-Treiber zum Erstellen von Datenbankbenutzer-Anmeldeinformationen zu verwenden. Optional können Sie den Treiber einen neuen Datenbankbenutzer erstellen lassen, wenn keiner vorhanden ist, und Sie können eine Liste von Datenbankbenutzergruppen angeben, denen der Benutzer bei der Anmeldung zugewiesen wird.
Wenn Sie einen Identitätsanbieter verwenden, kann Ihnen der Identitätsanbieteradministrator die korrekten Werte für diese Optionen verraten. Der Identitätsanbieteradministrator kann außerdem Ihren Identitätsanbieter so konfigurieren, dass er diese Optionen bereitstellt. In diesem Fall müssen Sie sie nicht als JDBC- oder ODBC-Optionen bereitstellen. Weitere Informationen finden Sie unter Schritt 2: Konfigurieren von SAML-Zusicherungen für den Identitätsanbieter.
Anmerkung
Wenn Sie eine IAM-Richtlinienvariable verwenden, ${redshift:DbUser}, wie in Ressourcenbasierte Richtlinien für „GetClusterCredentials“ beschrieben, wird der Wert für DbUser durch den Wert ersetzt, der vom Abfragekontext der API-Operation abgerufen wird. Die Amazon-Redshift-Treiber verwenden den von der Verbindungs-URL bereitgestellten Wert für die DbUser-Variable, nicht den als SAML-Attribut bereitgestellten Wert.
Wir empfehlen, für die Sicherstellung dieser Konfiguration eine Bedingung in einer IAM-Richtlinie zu verwenden, um den DbUser-Wert mit dem RoleSessionName zu validieren. Beispiele, wie Sie eine Bedingung in einer IAM-Richtlinie einrichten, finden Sie in Beispielrichtlinie für die Verwendung von „GetClusterCredentials“.
In der folgenden Tabelle sind die Optionen für die Erstellung von Benutzeranmeldeinformationen für die Datenbank aufgeführt.
|
Option |
Beschreibung |
|---|---|
| DbUser |
Der Name eines Datenbankbenutzers. Falls in der Datenbank ein Benutzer namens „DbUser“ vorhanden ist, verfügen die temporären Anmeldeinformationen über dieselben Berechtigungen wie der bestehende Benutzer. Falls „DbUser“ in der Datenbank nicht vorhanden ist und für die Funktion „AutoCreate“ „true“ festgelegt ist, wird ein neuer Benutzer mit dem Namen „DbUser“ erstellt. Optional können Sie das Passwort eines bestehenden Benutzers deaktivieren. Weitere Informationen finden Sie unter ALTER_USER. |
| AutoCreate |
Geben Sie |
DbGroups |
Eine durch Kommata abgegrenzte Liste der Namen bestehender Datenbankgruppen, denen der Datenbankbenutzer für die Dauer der aktuellen Sitzung zugewiesen wird. Standardmäßig werden neue Benutzer nur der Gruppe „PUBLIC“ hinzugefügt. |
Anmeldeinformationsanbieter-Plugins
Amazon Redshift verwendet Plug-Ins für Anmeldeinformationsanbieter zur Single-Sign-On-Authentifizierung.
Zur Unterstützung der Single-Sign-On-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 Single-Sign-On-Authentifizierung über JDBC oder ODBC.
Multifaktor-Authentifizierung
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 OAuth-Authentifizierung wie folgt:
-
Ein Benutzer versucht sich anzumelden.
-
Das Plug-in startet einen lokalen Server, um eingehende Verbindungen auf dem localhost zu hören.
-
Das Plug-in startet einen Webbrowser, um eine SAML-Antwort über HTTPS von der angegebenen Single-Sign-On-URL des Verbundidentitätsanbieter-Endpunkts anzufordern.
-
Der Webbrowser folgt dem Link und fordert den Benutzer auf, Anmeldeinformationen einzugeben.
-
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. -
Der Webbrowser verschiebt die Antwortnachricht mit der SAML-Antwort auf die angegebene
redirect_uri. -
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:
-
Ein Benutzer versucht sich anzumelden.
-
Das Plug-in startet einen lokalen Server, um eingehende Verbindungen auf dem localhost zu hören.
-
Das Plugin startet einen Webbrowser, um einen Autorisierungscode vom Azure AD
oauth2/authorize-Endpunkt anzufordern. -
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.
-
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 angegebenenredirect_uri. -
Der Webbrowser verschiebt die Antwortnachricht mit der SAML-Antwort auf die angegebene
redirect_uri. -
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. -
Der Azure AD
oauth2/token-Endpunkt gibt eine Antwort mit einem Zugriffs-Token an den angegebenenredirect_urizurück. -
Das Plug-In ruft die SAML-Antwort ab und übergibt sie an Amazon Redshift.
Lesen Sie die folgenden Abschnitte:
-
Active Directory Federation Services (AD FS)
Weitere Informationen finden Sie unter Einrichten der Single-Sign-On-Authentifizierung über JDBC oder ODBC.
-
PingOne (Ping)
Ping wird ausschließlich mit dem vordefinierten Identitätsanbieteradapter für PingOne über Formularauthentifizierung unterstützt.
Weitere Informationen finden Sie unter Einrichten der Single-Sign-On-Authentifizierung über JDBC oder ODBC.
-
Okta
Okta wird nur für die von Okta bereitgestellte Anwendung unterstützt, die mit dem verwendet wird AWS-Managementkonsole.
Weitere Informationen finden Sie unter Einrichten der Single-Sign-On-Authentifizierung über JDBC oder ODBC.
-
Microsoft Azure Active Directory
Weitere Informationen finden Sie unter Einrichten der Single-Sign-On-Authentifizierung über JDBC oder ODBC.
Plugin-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:
Geben Sie bei ODBC eines der folgenden Elemente an:
|
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. |
|
|
Der vom Identitätsanbieter verwendete Port. Der Standardwert ist 443. Für Okta wird dieser Port ignoriert. |
|
|
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 Schritt 2: Konfigurieren von SAML-Zusicherungen für den Identitätsanbieter. |
|
|
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. |
|
|
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 |
|
|
Ein Mandant, der für Azure AD verwendet wird. Wird nur mit Azure verwendet. |
|
|
Eine Client-ID für die Amazon-Redshift-Unternehmensanwendung in Azure AD. Wird nur mit Azure verwendet. |