Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Multi-account setup (tanpa AWS Organizations)
Jika sumber daya layanan Anda menjangkau beberapa AWS akun dan Anda tidak menggunakan AWS Organizations, Anda memerlukan peran lintas akun selain peran invoker.
Langkah 1: Buat peran lintas akun
Di setiap akun yang berisi sumber daya untuk layanan Anda, buat peran dengan:
-
ReadOnlyAccesskebijakan terlampir. -
Kebijakan kepercayaan yang memungkinkan peran invoker untuk menganggapnya, menggunakan
ExternalIduntuk mencegah serangan wakil yang membingungkan. GunakanExternalIdnilai unik per layanan dan kombinasi akun:{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/AWSResilienceHubAssessmentRole" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "ngrh-my-service-111122223333" } } }] }
Langkah 2: Berikan izin peran invoker untuk mengambil peran lintas akun
Tambahkan kebijakan inline ke peran invoker Anda yang memungkinkannya mengambil peran lintas akun:
{ "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": [ "arn:aws:iam::111122223333:role/NGRHResourceRole", "arn:aws:iam::444455556666:role/NGRHResourceRole" ] }
Langkah 3: Konfigurasikan peran lintas akun pada layanan Anda
Tentukan ARN peran lintas akun dan ID eksternal saat membuat layanan:
aws resiliencehubv2 create-service \ --name "my-service" \ --regions '["us-east-1"]' \ --permission-model '{ "invokerRoleName": "AWSResilienceHubAssessmentRole", "crossAccountRoles": [ { "crossAccountRoleArn": "arn:aws:iam::111122223333:role/NGRHResourceRole", "externalId": "ngrh-my-service-111122223333" }, { "crossAccountRoleArn": "arn:aws:iam::444455556666:role/NGRHResourceRole", "externalId": "ngrh-my-service-444455556666" } ] }'
Anda dapat mengonfigurasi hingga 5 ARN peran lintas akun per layanan.