Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pencegahan "confused deputy" lintas layanan
Masalah "confused deputy" adalah masalah keamanan saat entitas yang tidak memiliki izin untuk melakukan suatu tindakan dapat memaksa entitas yang memilik hak akses lebih tinggi untuk melakukan tindakan tersebut. Pada tahun AWS, peniruan lintas layanan dapat mengakibatkan masalah wakil yang membingungkan. Peniruan identitas lintas layanan dapat terjadi ketika satu layanan (layanan yang dipanggil) memanggil layanan lain (layanan yang dipanggil). Layanan pemanggilan dapat dimanipulasi menggunakan izinnya untuk bertindak pada sumber daya pelanggan lain dengan cara yang seharusnya tidak dilakukannya kecuali bila memiliki izin untuk mengakses. Untuk mencegah hal ini, AWS menyediakan alat yang membantu Anda melindungi data untuk semua layanan dengan principal layanan yang telah diberi akses ke sumber daya di akun Anda.
Sebaiknya gunakan kunci konteks kondisi aws:SourceAccount
global aws:SourceArn
dan global dalam kebijakan sumber daya untuk membatasi izin yang diberikan AWS Parallel Computing Service (AWS PCS) layanan lain ke sumber daya. Gunakan aws:SourceArn
jika Anda ingin hanya satu sumber daya yang akan dikaitkan dengan akses lintas layanan. Gunakan aws:SourceAccount
jika Anda ingin mengizinkan sumber daya apa pun di akun tersebut dikaitkan dengan penggunaan lintas layanan.
Cara paling efektif untuk melindungi dari masalah "confused deputy" adalah dengan menggunakan kunci konteks kondisi global aws:SourceArn
dengan ARN lengkap sumber daya. Jika Anda tidak mengetahui ARN lengkap sumber daya atau jika Anda menentukan beberapa sumber daya, gunakan kunci kondisi konteks global aws:SourceArn
dengan karakter wildcard (*
) untuk bagian ARN yang tidak diketahui. Misalnya, arn:aws:
. servicename
:*:123456789012
:*
Jika nilai aws:SourceArn
tidak berisi ID akun, seperti ARN bucket Amazon S3, Anda harus menggunakan kedua kunci konteks kondisi global tersebut untuk membatasi izin.
Nilai aws:SourceArn
harus berupa ARN cluster.
Contoh berikut menunjukkan bagaimana Anda dapat menggunakan aws:SourceArn
dan kunci konteks kondisi aws:SourceAccount
global di AWS PCS untuk mencegah masalah wakil yang membingungkan.
{ "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "pcs.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": [ "arn:aws:pcs:us-east-1:123456789012:cluster/*" ] }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } }
Peran IAM untuk EC2 instans Amazon disediakan sebagai bagian dari grup node komputasi
AWS PCS secara otomatis mengatur kapasitas EC2 Amazon untuk setiap grup node komputasi yang dikonfigurasi dalam sebuah cluster. Saat membuat grup node komputasi, pengguna harus menyediakan profil instans IAM melalui bidang. iamInstanceProfileArn
Profil instance menentukan izin yang terkait dengan instance yang disediakan EC2 . AWS PCS menerima peran apa pun yang memiliki AWSPCS
awalan nama peran atau /aws-pcs/
sebagai bagian dari jalur peran. iam:PassRole
Izin diperlukan pada identitas IAM (pengguna atau peran) yang membuat atau memperbarui grup node komputasi. Ketika pengguna memanggil tindakan CreateComputeNodeGroup
atau UpdateComputeNodeGroup
API, AWS PCS memeriksa untuk melihat apakah pengguna diizinkan untuk melakukan iam:PassRole
tindakan.
Contoh kebijakan berikut memberikan izin untuk hanya meneruskan peran IAM yang namanya dimulai. AWSPCS
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::123456789012:role/AWSPCS*", "Condition": { "StringEquals": { "iam:PassedToService": [ "ec2.amazonaws.com" ] } } } ] }