Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Buat peran untuk memberikan izin kepada pengguna IAM
Anda dapat menggunakan peran IAM untuk menyediakan akses ke AWS sumber daya Anda. Dengan peran IAM, Anda dapat membangun hubungan kepercayaan antara akun kepercayaan Anda dan akun AWS tepercaya lainnya. Akun trusting memiliki sumber daya yang akan diakses dan akun terpercaya berisi pengguna yang membutuhkan akses ke sumber daya. Namun, akun lain bisa saja memiliki sumber daya di akun Anda. Misalnya, akun kepercayaan mungkin mengizinkan akun tepercaya untuk membuat sumber daya baru, seperti membuat objek baru di bucket Amazon S3. Dalam hal ini, akun yang menciptakan sumber daya memiliki sumber daya dan mengendalikan siapa yang dapat mengakses sumber daya tersebut.
Setelah Anda membuat hubungan kepercayaan, pengguna IAM atau aplikasi dari akun tepercaya dapat menggunakan operasi AssumeRole
API AWS Security Token Service (AWS STS). Operasi ini menyediakan kredensi keamanan sementara yang memungkinkan akses ke AWS sumber daya di akun Anda.
Akun-akun tersebut dapat dikendalikan oleh Anda, atau akun dengan pengguna-pengguna dapat dikendalikan oleh pihak ketiga. Jika akun lain dengan pengguna adalah Akun AWS yang tidak Anda kendalikan, maka Anda dapat menggunakan externalId
atribut tersebut. ID eksternal dapat berupa kata atau nomor apa pun yang disepakati antara Anda dan administrator akun pihak ketiga. Opsi ini secara otomatis menambahkan persyaratan kepada kebijakan kepercayaan yang memperbolehkan pengguna untuk mengasumsikan peran hanya jika permintaan mencakup sts:ExternalID
yang benar. Untuk informasi selengkapnya, lihat Akses ke Akun AWS yang dimiliki oleh pihak ketiga.
Untuk informasi tentang cara menggunakan peran untuk mendelegasikan izin, lihat Istilah dan konsep peran. Untuk informasi tentang menggunakan peran layanan untuk memperbolehkan layanan mengakses sumber daya di akun Anda, lihat Membuat peran untuk mendelegasikan izin ke layanan AWS.
Membuat peran IAM (konsol)
Anda dapat menggunakan AWS Management Console untuk membuat peran yang dapat diasumsikan oleh pengguna IAM. Misalnya, asumsikan bahwa organisasi Anda memiliki banyak Akun AWS untuk mengisolasi lingkungan pengembangan dari lingkungan produksi. Untuk informasi tingkat tinggi tentang membuat peran yang memungkinkan pengguna di akun pengembangan mengakses sumber daya di akun produksi, lihatContoh skenario menggunakan akun pengembangan dan produksi terpisah.
Izin minimum
Untuk melakukan langkah-langkah berikut, Anda harus memiliki setidaknya izin IAM berikut:
-
access-analyzer:ValidatePolicy
-
iam:AttachRolePolicy
-
iam:CreatePolicy
-
iam:CreateRole
-
iam:GetAccountSummary
-
iam:GetPolicy
-
iam:GetPolicyVersion
-
iam:GetRole
-
iam:ListAccountAliases
-
iam:ListAttachedRolePolicies
-
iam:ListOpenIDConnectProviders
-
iam:ListPolicies
-
iam:ListRolePolicies
-
iam:ListRoles
-
iam:ListRoleTags
-
iam:ListSAMLProviders
Membuat peran IAM ()AWS CLI
Membuat peran dari AWS CLI melibatkan beberapa langkah. Saat Anda menggunakan konsol untuk membuat peran, banyak langkah dilakukan untuk Anda, tetapi dengan itu AWS CLI Anda harus secara eksplisit melakukan setiap langkah sendiri. Anda harus membuat peran dan kemudian menetapkan kebijakan izin untuk peran tersebut. Atau, Anda juga dapat mengatur batas izin untuk peran Anda.
Untuk membuat peran bagi akses lintas akun (AWS CLI)
-
Buat peran: aws iam create-role
-
Lampirkan kebijakan izin terkelola ke peran: aws iam attach-role-policy
atau
Buat kebijakan izin sebaris untuk peran tersebut: aws iam put-role-policy
-
(Opsional) Tambahkan atribut khusus ke peran tersebut dengan melampirkan tag: aws iam tag-role
Untuk informasi selengkapnya, lihat Mengelola tag pada IAM peran (AWS CLI atau AWS API).
-
(Opsional) Tetapkan batas izin untuk peran: aws iam put-role-permissions-boundary
Batas izin mengontrol izin maksimum yang dapat dimiliki sebuah peran. Batas izin adalah AWS fitur lanjutan.
Contoh berikut menunjukkan dua langkah pertama, dan yang paling umum untuk membuat peran lintas akun dalam lingkungan sederhana. Contoh ini memungkinkan setiap pengguna dalam akun 123456789012
untuk mengasumsikan peran dan melihat example_bucket
bucket Amazon S3. Contoh ini juga mengasumsikan bahwa Anda menggunakan komputer klien yang menjalankan Windows, dan telah mengonfigurasi antarmuka baris perintah Anda kredensial akun dan Wilayah Anda. Untuk informasi selengkapnya, lihat Mengonfigurasi Antarmuka Baris AWS Perintah.
Dalam contoh ini, sertakan kebijakan kepercayaan berikut pada perintah pertama ketika Anda membuat peran tersebut. Kebijakan kepercayaan ini memperbolehkan pengguna dalam akun 123456789012
untuk mengasumsikan peran dengan menggunakan operasi AssumeRole
, tetapi hanya jika pengguna memberikan otentikasi MFA dengan menggunakan parameter SerialNumber
dan TokenCode
. Untuk informasi lebih lanjut tentang MFA, lihat AWS Otentikasi multi-faktor di IAM.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Action": "sts:AssumeRole", "Condition": { "Bool": { "aws:MultiFactorAuthPresent": "true" } } } ] }
penting
Jika elemen Principal
Anda memuat ARN untuk peran atau pengguna IAM tertentu, kemudian ARN diubah menjadi ID prinsipal unik saat kebijakan disimpan. Hal ini membantu memitigasi risiko seseorang meningkatkan izin mereka dengan menghapus dan membuat kembali peran atau pengguna. Anda biasanya tidak melihat ID ini di dalam konsol karena terdapat transformasi balik kembali ke ARN ketika kebijakan kepercayaan ditampilkan. Namun, jika Anda menghapus peran atau pengguna, maka ID utama muncul di konsol karena tidak AWS dapat lagi memetakannya kembali ke ARN. Oleh karena itu, jika Anda menghapus dan membuat ulang pengguna atau peran yang dirujuk di dalam elemen Principal
kebijakan kepercayaan, Anda harus mengubah peran untuk mengganti ARN.
Saat menggunakan perintah kedua, Anda harus melampirkan kebijakan terkelola yang ada pada peran tersebut. Kebijakan izin berikut ini memperbolehkan siapa pun yang mengasumsikan peran untuk hanya melaksanakan tindakan ListBucket
pada example_bucket
bucket Amazon S3.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::example_bucket" } ] }
Untuk membuat peran Test-UserAccess-Role
ini, Anda harus terlebih dahulu menyimpan kebijakan kepercayaan sebelumnya dengan nama trustpolicyforacct123456789012.json
ke folder policies
di drive lokal C:
Anda. Kemudian simpan kebijakan izin sebelumnya sebagai kebijakan terkelola pelanggan di nama PolicyForRole
Anda Akun AWS . Kemudian Anda dapat menggunakan perintah berikut untuk membuat peran dan melampirkan kebijakan terkelola.
# Create the role and attach the trust policy file that allows users in the specified account to assume the role. $
aws iam create-role --role-name Test-UserAccess-Role --assume-role-policy-document file://C:\policies\trustpolicyforacct123456789012.json
# Attach the permissions policy (in this example a managed policy) to the role to specify what it is allowed to do. $
aws iam attach-role-policy --role-name Test-UserAccess-Role --policy-arn arn:aws:iam::123456789012:policy/PolicyForRole
penting
Ingatlah bahwa ini hanya setengah bagian pertama dari konfigurasi yang diperlukan. Anda juga harus memberikan izin kepada pengguna individu dalam akun terpercaya untuk beralih ke peran. Untuk informasi selengkapnya tentang langkah ini, lihat Berikan izin pengguna untuk beralih peran.
Setelah Anda membuat peran dan memberinya izin untuk melakukan AWS tugas atau mengakses AWS
sumber daya, setiap pengguna di 123456789012
akun dapat mengambil peran tersebut. Untuk informasi selengkapnya, lihat Beralih ke IAM peran (AWS CLI).
Membuat peran IAM (AWS API)
Membuat peran dari AWS API melibatkan beberapa langkah. Saat Anda menggunakan konsol untuk membuat peran, banyak langkah yang dilakukan untuk Anda, tetapi dengan API Anda harus melakukan setiap langkah sendiri secara eksplisit. Anda harus membuat peran dan kemudian menetapkan kebijakan izin untuk peran tersebut. Atau, Anda juga dapat mengatur batas izin untuk peran Anda.
Untuk membuat peran dalam kode (AWS API)
-
Buat peran: CreateRole
Untuk kebijakan kepercayaan peran, Anda dapat menentukan lokasi file.
-
Lampirkan kebijakan izin terkelola pada peran: AttachRolePolicy
atau
Buat kebijakan izin inline untuk peran: PutRolePolicy
penting
Ingatlah bahwa ini hanya setengah bagian pertama dari konfigurasi yang diperlukan. Anda juga harus memberikan izin kepada pengguna individu dalam akun terpercaya untuk beralih ke peran. Untuk informasi selengkapnya tentang langkah ini, lihat Berikan izin pengguna untuk beralih peran.
-
(Opsional) Tambahkan atribut khusus ke pengguna dengan melampirkan tag: TagRole
Untuk informasi selengkapnya, lihat Mengelola tag pada IAM pengguna (AWS CLI atau AWS API).
-
(Opsional) Tetapkan batas izin untuk peran tersebut: PutRolePermissionsBoundary
Batas izin mengontrol izin maksimum yang dapat dimiliki sebuah peran. Batas izin adalah AWS fitur lanjutan.
Setelah Anda membuat peran dan memberinya izin untuk melakukan AWS tugas atau mengakses AWS sumber daya, Anda harus memberikan izin kepada pengguna di akun agar mereka dapat mengambil peran tersebut. Untuk informasi lebih lanjut tentang mengambil peran, lihat Beralih ke IAM peran (AWS API).
Membuat peran IAM ()AWS CloudFormation
Untuk informasi tentang membuat peran IAM AWS CloudFormation, lihat referensi sumber daya dan properti serta contoh di Panduan AWS CloudFormation Pengguna.
Untuk informasi selengkapnya tentang template IAM di AWS CloudFormation, lihat cuplikan AWS Identity and Access Management templat di Panduan Pengguna.AWS CloudFormation