Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Langkah 3: Buat IAM peran dengan izin untuk memanggil GetClusterCredentials
SQLKlien Anda memerlukan otorisasi untuk memanggil GetClusterCredentials
operasi atas nama Anda. Untuk memberikan otorisasi tersebut, Anda membuat pengguna atau peran dan melampirkan kebijakan yang memberikan izin yang diperlukan.
Untuk membuat IAM peran dengan izin untuk memanggil GetClusterCredentials
-
Menggunakan IAM layanan, buat pengguna atau peran. Anda juga dapat menggunakan pengguna atau peran yang ada. Misalnya, jika Anda membuat IAM peran untuk akses penyedia identitas, Anda dapat melampirkan IAM kebijakan yang diperlukan untuk peran tersebut.
-
Lampirkan kebijakan izin dengan izin untuk memanggil
redshift:GetClusterCredentials
operasi. Bergantung pada parameter opsional yang Anda tentukan, Anda juga dapat mengizinkan atau membatasi tindakan dan sumber daya tambahan dalam kebijakan Anda:-
Untuk mengizinkan SQL klien Anda mengambil ID cluster, AWS Region, dan port, sertakan izin untuk memanggil
redshift:DescribeClusters
operasi dengan sumber daya cluster Redshift. -
Jika Anda menggunakan
AutoCreate
opsi, sertakan izin untuk meneleponredshift:CreateClusterUser
dengandbuser
sumber daya. Nama Sumber Daya Amazon berikut (ARN) menentukan Amazondbuser
Redshift. Ganti
,region
, danaccount-id
dengan nilai untuk AWS Wilayah, akun, dan cluster Anda. Untuknama cluster
, tentukan nama pengguna yang akan digunakan untuk masuk ke database cluster.nama dbuser
arn:aws:redshift:
region
:account-id
:dbuser:cluster-name
/dbuser-name
-
(Opsional) Tambahkan sumber daya Amazon
dbname
Redshift dalam format berikut. ARN Ganti
,region
, danaccount-id
dengan nilai untuk AWS Wilayah, akun, dan cluster Anda. Untuknama cluster
, tentukan nama database tempat pengguna akan masuk.database-name
arn:aws:redshift:
region
:account-id
:dbname:cluster-name
/database-name
-
Jika Anda menggunakan
DbGroups
opsi, sertakan izin untuk memanggilredshift:JoinGroup
operasi dengandbgroup
sumber daya Amazon Redshift dalam format berikut. Ganti
,region
, danaccount-id
dengan nilai untuk AWS Wilayah, akun, dan cluster Anda. Untuknama cluster
, tentukan nama grup pengguna yang bergabung dengan pengguna saat login.dbgroup-name
arn:aws:redshift:
region
:account-id
:dbgroup:cluster-name
/dbgroup-name
-
Untuk informasi selengkapnya dan contoh tambahan, lihat Kebijakan sumber daya untuk GetClusterCredentials.
Contoh berikut menunjukkan kebijakan yang memungkinkan IAM peran untuk memanggil GetClusterCredentials
operasi. Menentukan resource Amazon dbuser
Redshift memberikan akses peran ke temp_creds_user
nama pengguna database pada klaster bernama. examplecluster
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "redshift:GetClusterCredentials", "Resource": "arn:aws:redshift:us-west-2:123456789012:dbuser:examplecluster/temp_creds_user" } }
Anda dapat menggunakan wildcard (*) untuk mengganti semua, atau sebagian, nama cluster, nama pengguna, dan nama grup database. Contoh berikut memungkinkan nama pengguna apa pun yang dimulai temp_
dengan cluster apa pun di akun yang ditentukan.
penting
Pernyataan dalam contoh berikut menentukan karakter wildcard (*) sebagai bagian dari nilai sumber daya sehingga kebijakan mengizinkan sumber daya apa pun yang dimulai dengan karakter yang ditentukan. Menggunakan karakter wildcard dalam IAM kebijakan Anda mungkin terlalu permisif. Sebagai praktik terbaik, kami sarankan untuk menggunakan kebijakan paling ketat yang layak untuk aplikasi bisnis Anda.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "redshift:GetClusterCredentials", "Resource": "arn:aws:redshift:us-west-2:123456789012:dbuser:*/temp_*" } }
Contoh berikut menunjukkan kebijakan yang memungkinkan IAM peran memanggil GetClusterCredentials
operasi dengan opsi untuk secara otomatis membuat pengguna baru dan menentukan grup yang bergabung dengan pengguna saat login. "Resource":
"*"
Klausa memberikan akses peran ke sumber daya apa pun, termasuk cluster, pengguna database, atau grup pengguna.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "redshift:GetClusterCredentials", "redshift:CreateClusterUser", "redshift:JoinGroup" ], "Resource": "*" } }
Untuk informasi selengkapnya, lihat sintaks Amazon Redshift ARN.