Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai 1 November 2025. Jika Anda ingin menggunakan Python UDFs, buat UDFs sebelum tanggal tersebut. Python yang ada UDFs akan terus berfungsi seperti biasa. Untuk informasi lebih lanjut, lihat posting blog
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengakses objek database Amazon Redshift Tanpa Server dengan izin peran basis data
Prosedur ini menunjukkan cara memberikan izin untuk menanyakan tabel melalui peran database Amazon Redshift. Peran ditetapkan melalui tag yang dilampirkan ke pengguna di IAM dan diteruskan ke Amazon Redshift saat mereka masuk. Ini adalah penjelasan dengan contoh konsep dalam Mendefinisikan peran database untuk diberikan kepada pengguna federasi di Amazon Redshift Tanpa Server. Manfaat menyelesaikan langkah-langkah ini adalah Anda dapat mengaitkan pengguna dengan peran database dan menghindari pengaturan izin mereka untuk setiap objek database. Ini menyederhanakan mengelola kemampuan pengguna untuk query, memodifikasi, atau menambahkan data ke tabel dan untuk melakukan tindakan lain.
Prosedur ini mengasumsikan Anda telah menyiapkan database Amazon Redshift Tanpa Server dan Anda memiliki kemampuan untuk memberikan izin dalam database. Ini juga mengasumsikan Anda memiliki izin untuk membuat pengguna IAM di AWS konsol, untuk membuat peran IAM, dan menetapkan izin kebijakan.
-
Buat pengguna IAM, menggunakan konsol IAM. Nanti, Anda akan terhubung ke database dengan pengguna ini.
-
Buat peran database Redshift, menggunakan editor kueri v2 atau klien SQL lainnya. Untuk informasi selengkapnya tentang membuat peran database, lihat MEMBUAT PERAN.
CREATE ROLE urban_planning;
Kueri tampilan sistem SVV_ROLES untuk memeriksa apakah peran Anda dibuat. Ini juga mengembalikan peran sistem.
SELECT * from SVV_ROLES;
-
Berikan peran database yang Anda buat izin untuk memilih dari tabel. (Pengguna IAM yang Anda buat pada akhirnya akan masuk dan memilih catatan dari tabel melalui peran database.) Nama peran dan nama tabel dalam contoh kode berikut adalah sampel. Di sini, izin diberikan untuk memilih dari tabel bernama
cities
.GRANT SELECT on TABLE cities to ROLE urban_planning;
-
Gunakan AWS Identity and Access Management konsol untuk membuat peran IAM. Peran ini memberikan izin untuk menggunakan editor kueri v2. Buat peran IAM baru dan, untuk jenis entitas tepercaya, pilih AWS akun. Kemudian pilih Akun ini. Berikan peran izin kebijakan berikut:
-
AmazonRedshiftReadOnlyAccess
-
tag:GetResources
-
tag:GetTagKeys
-
Semua tindakan untuk sqlworkbench, termasuk dan.
sqlworkbench:ListDatabases
sqlworkbench:UpdateConnection
-
-
Di konsol IAM, tambahkan tag dengan Kunci
RedshiftDbRoles
ke pengguna IAM yang Anda buat sebelumnya. Nilai tag harus sesuai dengan peran database yang Anda buat pada langkah pertama. Itu adaurban_planning
di sampel.
Setelah Anda menyelesaikan langkah-langkah ini, tetapkan peran IAM ke pengguna yang Anda buat di konsol IAM. Saat pengguna masuk ke database dengan editor kueri v2, nama peran database mereka di tag diteruskan ke Amazon Redshift dan dikaitkan dengannya. Dengan demikian, mereka dapat menanyakan tabel yang sesuai dengan peran database. Untuk mengilustrasikan, pengguna dalam sampel ini dapat melakukan query cities
tabel melalui peran urban_planning
database.