Amazon Redshift tidak akan lagi mendukung penggunaan Python UDF setelah 30 Juni 2026. Kami akan mulai menegakkannya secara bertahap. Untuk informasi lebih lanjut tentang detail opsi akhir masa pakai dan migrasi Python, lihat posting blog
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan API Data dengan propagasi identitas tepercaya
Sebagai administrator akun Amazon Redshift, Anda dapat mengintegrasikan cluster atau grup kerja Amazon Redshift Anda AWS IAM Identity Center, yang membantu mengelola akses tenaga kerja Anda ke Amazon Redshift dengan sistem masuk tunggal. Untuk informasi selengkapnya, lihat Penyiapan AWS Integrasi Pusat Identitas IAM dengan Amazon Redshift. Amazon Redshift Data API mendukung penyebaran identitas pengguna Pusat Identitas IAM ke cluster atau grup kerja Amazon Redshift, dan ke layanan lain, seperti,, di bawah rantai. AWS Lake Formation Anda dapat mengatur dan menanyakan menggunakan API Data dengan mengikuti langkah-langkah di AWS Layanan Access secara terprogram menggunakan propagasi identitas tepercaya.
Saat memanggil API Data menggunakan identitas pengguna Pusat Identitas IAM dari sesi peran IAM yang disempurnakan dengan identitas, Anda hanya dapat mengakses pernyataan dan hasil pernyataan yang dihasilkan menggunakan pengguna Pusat Identitas IAM yang sama. Misalnya, AWS CLI perintah berikut memanggil execute-statement operasi untuk menjalankan perintah SQL dengan propagasi identitas tepercaya.
aws redshift-data execute-statement --sql "select current_user;" --cluster-idmycluster--databasedev
Per AWS CLI intah berikut memanggil batch-execute-statement operasi untuk menjalankan dua perintah SQL.
aws redshift-data batch-execute-statement --sqls "select current_user;" "select current_date;" --cluster-idmycluster--databasedev
Untuk mengakses pernyataan dengancancel-statement,, describe-statementget-statement-result, dan diki get-statement-result-v2 rimkan oleh sesi peran IAM yang ditingkatkan identitas, pengguna Pusat Identitas IAM dan peran IAM harus cocok dengan kredenSIAL yang digunakan untuk menjalankan atau. execute-statement batch-execute-statement Misalnya, AWS CLI perintah berikut mendapatkan hasil dari pernyataan SQL.
aws redshift-data get-statement-result --ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111
Untuk membuat daftar pernyataan, workgroup-name parameter cluster-identifier atau harus disediakan untuk memastikan bahwa pengguna Pusat Identitas IAM hanya memiliki akses ke aplikasi Pusat Identitas IAM Amazon Redshift yang ditugaskan untuk mereka. Misalnya, AWS CLI perintah berikut mencantumkan pernyataan untuk cluster tertentu.
aws redshift-data list-statements --cluster-identifiermycluster
Anda juga dapat memanggil operasi API Data yang mengakses objek database dalam cluster atau kelompok kerja menggunakan propagasi identitas tepercaya. Ini termasuklist-databases,list-schemas,list-tables, dan describe-table operasi.
Panggilan API yang dilakukan oleh pengguna Pusat Identitas IAM dapat dilacak. AWS CloudTrail Bagian onBehalfOf CloudTrail acara menunjukkan id pengguna IAM Identity Center dan penyimpanan identitas ARN. Contoh berikut menunjukkan cuplikan CloudTrail peristiwa yang menunjukkan onBehalfOf bagian dengan ID pengguna Pusat Identitas IAM a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 dan ARN penyimpanan Identitas. 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" }
Anda dapat menjalankan perintah SQL berikut untuk memeriksa kueri yang dikirimkan oleh pengguna Pusat Identitas IAM. Dalam contoh ini, email yang terdaftar di Pusat Identitas adalahusername@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;