View a markdown version of this page

Ikhtisar pengelolaan izin akses ke sumber daya Amazon Redshift Anda - Amazon Redshift

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 yang diterbitkan pada 30 Juni 2025.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Ikhtisar pengelolaan izin akses ke sumber daya Amazon Redshift Anda

Setiap AWS sumber daya dimiliki oleh AWS akun, dan izin untuk membuat atau mengakses sumber daya diatur oleh kebijakan izin. Administrator akun dapat melampirkan kebijakan izin ke identitas IAM (yaitu, pengguna, grup, dan peran), dan beberapa layanan (seperti AWS Lambda) juga mendukung melampirkan kebijakan izin ke sumber daya.

catatan

Administrator akun (atau pengguna administrator) adalah pengguna dengan hak akses administrator. Untuk informasi selengkapnya, lihat Praktik terbaik IAM dalam Panduan Pengguna IAM.

Saat memberikan izin, Anda memutuskan siapa yang mendapatkan izin, sumber daya mana yang mendapatkan izin, dan tindakan spesifik yang ingin Anda izinkan pada sumber daya tersebut.

Sumber daya dan operasi Amazon Redshift

Amazon Redshift menyediakan sumber daya, tindakan, dan kunci konteks kondisi khusus layanan untuk digunakan dalam kebijakan izin IAM.

Amazon Redshift, Amazon Redshift Tanpa Server, Amazon Redshift Data API, dan izin akses editor kueri Amazon Redshift v2

Saat mengaturKontrol akses, Anda menulis kebijakan izin yang dapat Anda lampirkan ke identitas IAM (kebijakan berbasis identitas). Untuk informasi referensi terperinci, lihat topik berikut di Referensi O torisasi Layanan:

Refer ensi Otorisasi Layanan berisi informasi tentang operasi API mana yang dapat digunakan dalam kebijakan IAM. Ini juga mencakup AWS sumber daya yang dapat Anda berikan izin, dan kunci kondisi yang dapat Anda sertakan untuk kontrol akses yang halus. Untuk informasi lebih lanjut tentang syarat, lihat Menggunakan ketentuan kebijakan IAM untuk kontrol akses terperinci.

Anda menentukan tindakan di bidang Action kebijakan, nilai sumber daya di bidang Resource kebijakan, dan syarat di bidang Condition kebijakan. Untuk menentukan tindakan untuk Amazon Redshift, gunakan redshift: awalan yang diikuti oleh nama operasi API (misalnya,redshift:CreateCluster).

Memahami kepemilikan sumber daya

Pemilik sumber daya adalah AWS akun yang membuat sumber daya. Artinya, pemilik sumber daya adalah AWS akun entitas utama (akun root, pengguna IAM, atau peran IAM) yang mengotentikasi permintaan yang membuat sumber daya. Contoh berikut menggambarkan cara kerjanya:

  • Jika Anda menggunakan kredenSIAL akun root AWS akun Anda untuk membuat cluster DB, AWS akun Anda adalah pemilik sumber daya Amazon Redshift.

  • Jika Anda membuat peran IAM di AWS akun Anda dengan izin untuk membuat sumber daya Amazon Redshift, siapa pun yang dapat mengambil peran tersebut dapat membuat sumber daya Amazon Redshift. AWS Akun Anda, yang menjadi milik peran tersebut, memiliki sumber daya Amazon Redshift.

  • Jika Anda membuat pengguna IAM di AWS akun Anda dan memberikan izin untuk membuat sumber daya Amazon Redshift kepada pengguna tersebut, pengguna dapat membuat sumber daya Amazon Redshift. Namun, AWS akun Anda, tempat pengguna berada, memiliki sumber daya Amazon Redshift. Dalam kebanyakan kasus, metode ini tidak disarankan. Sebaiknya buat peran IAM dan melampirkan izin ke peran tersebut, lalu menetapkan peran tersebut ke pengguna.

Mengelola akses ke sumber daya

Kebijakan izin menjelaskan siapa yang memiliki akses ke suatu objek. Bagian berikut menjelaskan opsi yang tersedia untuk membuat kebijakan izin.

catatan

Bagian ini membahas penggunaan IAM dalam konteks Amazon Redshift. Bagian ini tidak memberikan informasi yang mendetail tentang layanan IAM. Untuk dokumentasi lengkap IAM, lihat Apa yang Dimaksud dengan IAM? dalam Panduan Pengguna IAM. Untuk informasi tentang sintaksis dan penjelasan kebijakan IAM, lihat AWS Referensi Kebijakan IAM dalam Panduan Pengguna IAM.

Kebijakan yang terlampir pada identitas IAM disebut kebijakan (kebijakan IAM) berbasis identitas dan kebijakan yang dilampirkan pada sumber daya disebut kebijakan berbasis sumber daya. Amazon Redshift hanya mendukung kebijakan berbasis identitas (kebijakan IAM).

Identity-based kebijakan (kebijakan IAM)

Anda dapat menetapkan izin dengan melampirkan kebijakan ke peran IAM dan kemudian menetapkan peran tersebut ke pengguna atau grup. Berikut ini adalah contoh kebijakan yang berisi izin untuk membuat, menghapus, memodifikasi, dan me-reboot cluster Amazon Redshift untuk AWS akun Anda.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid":"AllowManageClusters", "Effect":"Allow", "Action": [ "redshift:CreateCluster", "redshift:DeleteCluster", "redshift:ModifyCluster", "redshift:RebootCluster" ], "Resource":"*" } ] }

Untuk informasi selengkapnya tentang menggunakan kebijakan berbasis identitas dengan Amazon Redshift, lihat. Menggunakan kebijakan berbasis identitas (kebijakan IAM) untuk Amazon Redshift Untuk informasi lebih lanjut tentang pengguna, kelompok, peran, dan izin, lihat Identitas (Pengguna, Grup, dan Peran) dalam Panduan Pengguna IAM.

Resource-based kebijakan

Layanan lain, seperti Amazon S3, juga mendukung kebijakan izin berbasis sumber daya. Misalnya, Anda dapat melampirkan kebijakan ke bucket S3 untuk mengelola izin akses ke bucket tersebut. Amazon Redshift tidak mendukung kebijakan berbasis sumber daya.

Menentukan elemen kebijakan: Tindakan, efek, sumber daya, dan principal

Untuk setiap sumber daya Amazon Redshift (lihatSumber daya dan operasi Amazon Redshift), layanan menentukan serangkaian operasi API (lihat Tindakan https://docs.aws.amazon.com/redshift/latest/APIReference/API_Operations.html). Untuk memberikan izin untuk operasi API ini, Amazon Redshift mendefinisikan serangkaian tindakan yang dapat Anda tentukan dalam kebijakan. Melakukan operasi API akan memerlukan izin untuk lebih dari satu tindakan.

Berikut ini adalah elemen-elemen kebijakan dasar:

  • Sumber daya – Dalam kebijakan, Anda menggunakan Amazon Resource Name (ARN) untuk mengidentifikasi sumber daya yang diatur kebijakan. Untuk informasi selengkapnya, lihat Sumber daya dan operasi Amazon Redshift.

  • Tindakan – Anda menggunakan kata kunci tindakan untuk mengidentifikasi operasi sumber daya yang ingin Anda izinkan atau tolak. Misalnya, redshift:DescribeClusters izin memungkinkan izin pengguna untuk melakukan DescribeClusters operasi Amazon Redshift.

  • Efek – Anda menentukan efek ketika pengguna meminta tindakan tertentu—efek ini dapat berupa pemberian izin atau penolakan. Jika Anda tidak secara eksplisit memberikan akses ke (mengizinkan) sumber daya, akses akan ditolak secara implisit. Anda juga dapat secara eksplisit menolak akses ke sumber daya, yang mungkin Anda lakukan untuk memastikan bahwa pengguna tidak dapat mengaksesnya, meskipun kebijakan yang berbeda memberikan akses.

  • Principal – Dalam kebijakan berbasis identitas (Kebijakan IAM), pengguna yang kebijakannya terlampir adalah principal yang implisit. Untuk kebijakan berbasis sumber daya, Anda menentukan pengguna, akun, layanan, atau entitas lain yang diinginkan untuk menerima izin (berlaku hanya untuk kebijakan berbasis sumber daya). Amazon Redshift tidak mendukung kebijakan berbasis sumber daya.

Untuk mempelajari selengkapnya tentang sintaks dan deskripsi kebijakan IAM, lihat referensi kebijakan AWS IAM di Panduan Pengguna IAM.

Untuk tabel yang menunjukkan semua tindakan Amazon Redshift API dan sumber daya yang diterapkan, lihatAmazon Redshift, Amazon Redshift Tanpa Server, Amazon Redshift Data API, dan izin akses editor kueri Amazon Redshift v2.

Menentukan kondisi dalam kebijakan

Ketika Anda memberikan izin, Anda dapat menggunakan bahasa kebijakan akses untuk menentukan syarat kapan kebijakan akan berlaku. Misalnya, Anda mungkin ingin kebijakan diterapkan hanya setelah tanggal tertentu. Untuk informasi selengkapnya tentang menentukan kondisi dalam bahasa kebijakan akses, lihat Elemen kebijakan JSON IAM: Kondisi di Panduan Pengguna IAM.

Untuk mengidentifikasi kondisi di mana kebijakan izin berlaku, sertakan Condition elemen dalam kebijakan izin IAM Anda. Misalnya, Anda dapat membuat kebijakan yang mengizinkan pengguna membuat cluster menggunakan redshift:CreateCluster tindakan, dan Anda dapat menambahkan Condition elemen untuk membatasi pengguna tersebut agar hanya membuat cluster di wilayah tertentu. Lihat perinciannya di Menggunakan ketentuan kebijakan IAM untuk kontrol akses terperinci. Untuk daftar yang menampilkan semua nilai kunci kondisi dan tindakan Amazon Redshift serta sumber daya yang diterapkan, lihatAmazon Redshift, Amazon Redshift Tanpa Server, Amazon Redshift Data API, dan izin akses editor kueri Amazon Redshift v2.

Menggunakan ketentuan kebijakan IAM untuk kontrol akses terperinci

Di Amazon Redshift, Anda dapat menggunakan kunci kondisi untuk membatasi akses ke sumber daya berdasarkan tag untuk sumber daya tersebut. Berikut ini adalah kunci kondisi Amazon Redshift yang umum.

Kunci syarat Deskripsi

aws:RequestTag

Membutuhkan pengguna untuk menyertakan kunci tag (nama) dan nilai setiap kali mereka membuat sumber daya. Untuk informasi selengkapnya, lihat aws: RequestTag di Panduan Pengguna IAM.

aws:ResourceTag

Membatasi akses pengguna ke sumber daya berdasarkan kunci dan nilai tag tertentu. Untuk informasi selengkapnya, lihat aws: ResourceTag di Panduan Pengguna IAM.

aws:TagKeys

Gunakan kunci ini untuk membandingkan kunci tanda dalam permintaan dengan kunci yang Anda sebutkan dalam kebijakan. Untuk informasi selengkapnya, lihat aws: TagKeys di Panduan Pengguna IAM.

Untuk informasi tentang tag, lihatMenandai sumber daya di Amazon Redshift.

Untuk daftar tindakan API yang mendukung kunci redshift:RequestTag dan redshift:ResourceTag kondisi, lihatAmazon Redshift, Amazon Redshift Tanpa Server, Amazon Redshift Data API, dan izin akses editor kueri Amazon Redshift v2.

Kunci kondisi berikut dapat digunakan dengan GetClusterCredentials tindakan Amazon Redshift.

Kunci syarat Deskripsi

redshift:DurationSeconds

Batasi jumlah detik yang dapat ditentukan untuk durasi.

redshift:DbName

Membatasi nama database yang dapat ditentukan.

redshift:DbUser

Membatasi nama pengguna database yang dapat ditentukan.

Contoh 1: Membatasi akses dengan menggunakan kunci ResourceTag kondisi aws:

Gunakan kebijakan IAM berikut untuk mengizinkan pengguna memodifikasi cluster Amazon Redshift hanya untuk AWS akun tertentu di us-west-2 wilayah dengan tag bernama environment dengan nilai tag. test

JSON
{ "Version":"2012-10-17", "Statement": { "Sid":"AllowModifyTestCluster", "Effect": "Allow", "Action": "redshift:ModifyCluster", "Resource": "arn:aws:redshift:us-west-2:123456789012:cluster:*", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "test" } } } }

Contoh 2: Membatasi akses dengan menggunakan kunci RequestTag kondisi aws:

Gunakan kebijakan IAM berikut untuk mengizinkan pengguna membuat cluster Amazon Redshift hanya jika perintah untuk membuat cluster menyertakan tag bernama usage dan nilai tag. production Kondisi dengan aws:TagKeys dan ForAllValues pengubah menentukan bahwa hanya kunci costcenter dan usage dapat ditentukan dalam permintaan.

JSON
{ "Version":"2012-10-17", "Statement": { "Sid":"AllowCreateProductionCluster", "Effect": "Allow", "Action": [ "redshift:CreateCluster", "redshift:CreateTags" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/usage": "production" }, "ForAllValues:StringEquals": { "aws:TagKeys": [ "costcenter", "usage" ] } } } }