Amazon Redshift wird UDFs ab dem 1. November 2025 die Erstellung von neuem Python nicht mehr unterstützen. Wenn Sie Python verwenden möchten UDFs, erstellen Sie das UDFs vor diesem Datum liegende. Bestehendes Python UDFs wird weiterhin wie gewohnt funktionieren. Weitere Informationen finden Sie im Blog-Posting
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwenden der Data API mit Weitergabe von vertrauenswürdigen Identitäten
Als Amazon Redshift-Kontoadministrator können Sie Ihren Amazon Redshift Redshift-Cluster oder Ihre Arbeitsgruppe in integrierenAWS IAM Identity Center, was Ihnen hilft, den Zugriff Ihrer Mitarbeiter auf Amazon Redshift mit Single Sign-On zu verwalten. Weitere Informationen finden Sie unter Einrichtung der AWS IAM Identity Center-Integration mit Amazon Redshift. Die Amazon Redshift Data API unterstützt die Weitergabe von IAM Identity Center-Benutzeridentitäten an einen Amazon Redshift Redshift-Cluster oder eine Arbeitsgruppe und an andere Dienste, z. B. in der Kette. AWS Lake Formation Sie können die Daten-API einrichten und Abfragen durchführen, indem Sie die Schritte unter Access AWS Services
Wenn Sie die Data API mithilfe einer IAM-Identity-Center-Benutzeridentität aus einer IAM-Rollensitzung mit verbesserter Identität aufrufen, können Sie nur mit demselben IAM-Identity-Center-Benutzer auf die resultierende Anweisung und das Ergebnis der Anweisung zugreifen. Der folgende AWS CLI Befehl ruft beispielsweise den execute-statement Vorgang zur Ausführung eines SQL-Befehls mit vertrauenswürdiger Identitätsverbreitung auf.
aws redshift-data execute-statement --sql "select current_user;" --cluster-idmycluster--databasedev
Der folgende AWS CLI Befehl ruft die batch-execute-statement Operation zur Ausführung von zwei SQL-Befehlen auf.
aws redshift-data batch-execute-statement --sqls "select current_user;" "select current_date;" --cluster-idmycluster--databasedev
Für den Zugriff auf Anweisungen mit cancel-statement, describe-statement, get-statement-result und get-statement-result-v2, die über IAM-Rollensitzungen mit verbesserter Identität übermittelt wurden, müssen der IAM-Identity-Center-Benutzer und die IAM-Rolle mit den Anmeldeinformationen übereinstimmen, die für die Ausführung von execute-statment oder batch-execute-statement verwendet wurden. Mit dem folgenden AWS CLI Befehl werden beispielsweise die Ergebnisse einer SQL-Anweisung abgerufen.
aws redshift-data get-statement-result --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111
Um Anweisungen aufzulisten, muss ein Parameter cluster-identifier oder workgroup-name angegeben werden, um sicherzustellen, dass der IAM-Identity-Center-Benutzer nur Zugriff auf die IAM-Identity-Center-Anwendungen von Amazon Redshift hat, denen er zugewiesen ist. Der folgende AWS CLI Befehl listet beispielsweise Anweisungen für einen bestimmten Cluster auf.
aws redshift-data list-statements --cluster-identifiermycluster
Sie können auch die Data-API-Operationen aufrufen, die unter Verwendung der Weitergabe von vertrauenswürdigen Identitäten auf Datenbankobjekte in einem Cluster oder einer Arbeitsgruppe zugreifen. Dies umfasst die Operationen list-databases, list-schemas, list-tables und describe-table.
API-Aufrufe des IAM-Identity-Center-Benutzers können in AWS CloudTrail nachverfolgt werden. onBehalfOfIn einem Abschnitt des CloudTrail Ereignisses werden die IAM Identity Center-Benutzer-ID und der Identitätsspeicher-ARN angezeigt. Das folgende Beispiel zeigt einen Ausschnitt eines CloudTrail Ereignisses, das den onBehalfOf Abschnitt mit der IAM Identity Center-Benutzer-ID von a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 und dem Identitätsspeicher-ARN von zeigt. arn:aws:identitystore::123456789012:identitystore/d-9067bc44d2
{ "eventVersion":"1.10", "userIdentity":{ "type":"AssumedRole", ... }, "onBehalfOf":{ "userId":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "identityStoreArn":"arn:aws:identitystore::123456789012:identitystore/d-9067bc44d2" } }, "eventTime":"2025-01-13T04:46:27Z", "eventSource":"redshift-data.amazonaws.com", "eventName":"ExecuteStatement", "awsRegion":"us-east-1" }
Sie können den folgenden SQL-Befehl ausführen, um die vom IAM-Identity-Center-Benutzer eingereichte Abfrage zu überprüfen. In diesem Beispiel lautet die in Identity Center registrierte E-Mail-Adresse username@example.com.
SELECT h.query_id, h.database_name, h.status, h.query_text, u.usename, h.start_time, h.end_time FROM sys_query_history h LEFT JOIN pg_user u ON h.user_id = u.usesysid where u.usename='awsidc:username@example.com' ORDER BY h.start_time DESC;