View a markdown version of this page

Mengontrol akses dengan kebijakan IAM - AWS Identity and Access Management

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

Mengontrol akses dengan kebijakan IAM

IAM menyediakan beberapa jenis kebijakan untuk mengontrol akses ke fitur federasi identitas keluar. Anda dapat menggunakan kebijakan berbasis identitas untuk mengontrol prinsipal IAM mana yang dapat meminta token dan menerapkan properti token tertentu seperti audiens, masa pakai, dan algoritma penandatanganan. Kebijakan Kontrol Layanan (SCP) memungkinkan Anda menerapkan pembatasan seluruh organisasi pada pembuatan token di semua akun di Organisasi Anda. AWS Kebijakan Kontrol Sumber Daya (RCP) mengontrol akses di tingkat sumber daya. Anda juga dapat menggunakan kebijakan titik akhir VPC untuk membatasi prinsipal mana yang dapat mengakses AWS STS GetWebIdentityToken API melalui titik akhir VPC Anda, menambahkan kontrol tingkat jaringan ke postur keamanan Anda. Bagian ini menjelaskan cara menerapkan kontrol akses halus menggunakan jenis kebijakan dan kunci kondisi ini.

Untuk meminta token identitas, kepala sekolah IAM harus memiliki sts:GetWebIdentityToken izin. Berikan izin ini melalui kebijakan identitas yang dilampirkan ke pengguna atau peran IAM. Untuk mengizinkan Tag (kunci, pasangan nilai) diteruskan ke GetWebIdentityToken panggilan, prinsipal IAM harus memiliki sts:TagGetWebIdentityToken izin.

  • Gunakan kunci IdentityTokenAudience syarat sts: untuk membatasi layanan eksternal mana yang dapat menerima token.

  • Gunakan sts: DurationSeconds condition key untuk menegakkan masa pakai token maksimum.

  • Gunakan kunci SigningAlgorithm kondisi sts: untuk memerlukan algoritma kriptografi tertentu.

  • Gunakan kunci RequestTag kondisi aws: bandingkan pasangan kunci-nilai tag yang diteruskan dalam permintaan dengan pasangan tag yang Anda tentukan dalam kebijakan.

  • Gunakan kunci TagKeys kondisi aws: untuk membandingkan kunci tag dalam permintaan dengan kunci yang Anda tentukan dalam kebijakan.

Lihat IAM dan kunci AWS STS kondisi untuk mempelajari lebih lanjut tentang kunci kondisi yang tersedia di kebijakan IAM.

Kebijakan identitas sampel ini menggabungkan beberapa kunci kondisi:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowTokenGenerationWithRestrictions", "Effect": "Allow", "Action": "sts:GetWebIdentityToken", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "sts:IdentityTokenAudience": [ "https://api1.example.com", "https://api2.example.com" ] }, "NumericLessThanEquals": { "sts:DurationSeconds": 300 }, "StringEquals": { "sts:SigningAlgorithm": "ES384" } } } ] }

Praktik terbaik

Ikuti rekomendasi ini untuk menyatukan AWS identitas Anda dengan aman ke layanan eksternal.

  • Gunakan masa pakai token pendek: Minta token dengan masa pakai terpendek yang memenuhi kebutuhan operasional Anda.

  • Menerapkan akses hak istimewa terkecil dan batasi properti token dengan kebijakan IAM: Ber ikan sts:GetWebIdentityToken izin hanya kepada prinsipal IAM yang memerlukannya. Gunakan kunci kondisi untuk menentukan algoritma penandatanganan, pemirsa token yang diizinkan, dan masa pakai token maksimum sesuai kebutuhan Anda.

  • Validasi klaim dalam layanan eksternal: Untuk keamanan, selalu validasi klaim yang relevan seperti subjek (“sub”), audiens (“aud”), dll. untuk memastikan klaim tersebut sesuai dengan nilai yang Anda harapkan. Validasi klaim kustom bila memungkinkan untuk mengaktifkan keputusan otorisasi berbutir halus di layanan eksternal.