Menyiapkan AWS Identity and Access Management (IAM) kebijakan untuk RDS Proxy - Layanan Basis Data Relasional Amazon

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

Menyiapkan AWS Identity and Access Management (IAM) kebijakan untuk RDS Proxy

Setelah Anda membuat rahasia di Secrets Manager, Anda membuat IAM kebijakan yang dapat mengakses rahasia tersebut. Untuk informasi umum tentang penggunaanIAM, lihatManajemen identitas dan akses untuk Amazon RDS Amazon.

Tip

Prosedur berikut berlaku jika Anda menggunakan IAM konsol. Jika Anda menggunakan AWS Management Console forRDS, RDS dapat membuat IAM kebijakan untuk Anda secara otomatis. Dalam kasus ini, Anda dapat melewati prosedur berikut.

Untuk membuat IAM kebijakan yang mengakses rahasia Secrets Manager Anda untuk digunakan dengan proxy Anda
  1. Masuk ke IAM konsol. Ikuti proses Buat peran, seperti yang dijelaskan dalam Membuat IAM peran, memilih Membuat peran untuk mendelegasikan izin ke layanan. AWS

    Pilih Layanan AWS untuk Jenis entitas tepercaya. Di bawah Kasus penggunaan, pilih RDSdari Dropdown kasus penggunaan untuk AWS layanan lain. Pilih RDS- Tambahkan Peran ke Database.

  2. Untuk peran baru, lakukan langkah Tambahkan kebijakan sebaris. Gunakan prosedur umum yang sama seperti dalam IAMkebijakan Pengeditan. Tempelkan berikut ini JSON ke dalam kotak JSON teks. Ganti ID akun Anda sendiri. Gantikan AWS Wilayah Anda untukus-east-2. Gantikan Amazon Resource Names (ARNs) untuk rahasia yang Anda buat, lihat Menentukan KMS kunci dalam pernyataan IAM kebijakan. Untuk kms:Decrypt tindakan, gantikan default AWS KMS key atau KMS kunci Anda sendiri. ARN Mana yang Anda gunakan bergantung pada mana yang Anda gunakan untuk mengenkripsi rahasia Secrets Manager.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "secretsmanager:GetSecretValue", "Resource": [ "arn:aws:secretsmanager:us-east-2:account_id:secret:secret_name_1", "arn:aws:secretsmanager:us-east-2:account_id:secret:secret_name_2" ] }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": "kms:Decrypt", "Resource": "arn:aws:kms:us-east-2:account_id:key/key_id", "Condition": { "StringEquals": { "kms:ViaService": "secretsmanager.us-east-2.amazonaws.com" } } } ] }
  3. Edit kebijakan kepercayaan untuk IAM peran ini. Tempelkan berikut ini JSON ke dalam kotak JSON teks.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Perintah berikut akan melakukan operasi yang sama melalui AWS CLI.

PREFIX=my_identifier USER_ARN=$(aws sts get-caller-identity --query "Arn" --output text) aws iam create-role --role-name my_role_name \ --assume-role-policy-document '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"Service":["rds.amazonaws.com"]},"Action":"sts:AssumeRole"}]}' ROLE_ARN=arn:aws:iam::account_id:role/my_role_name aws iam put-role-policy --role-name my_role_name \ --policy-name $PREFIX-secret-reader-policy --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "secretsmanager:GetSecretValue", "Resource": [ "arn:aws:secretsmanager:us-east-2:account_id:secret:secret_name_1", "arn:aws:secretsmanager:us-east-2:account_id:secret:secret_name_2" ] }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": "kms:Decrypt", "Resource": "arn:aws:kms:us-east-2:account_id:key/key_id", "Condition": { "StringEquals": { "kms:ViaService": "secretsmanager.us-east-2.amazonaws.com" } } } ] }