Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menyangkal ModifyInstanceGroup tindakan di Amazon EMR
ModifyInstanceGroupsTindakan di Amazon EMR tidak mengharuskan Anda memberikan ID klaster dengan tindakan tersebut. Sebaliknya, Anda dapat hanya menentukan ID grup instans. Untuk alasan ini, langsung tolak kebijakan untuk tindakan ini berdasarkan ID klaster atau tanda klaster mungkin tidak memiliki efek yang dimaksudkan. Pertimbangkan kebijakan contoh berikut.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticmapreduce:ModifyInstanceGroups" ], "Effect": "Allow", "Resource": "*" }, { "Action": [ "elasticmapreduce:ModifyInstanceGroups" ], "Effect": "Deny", "Resource": "arn:aws:elasticmapreduce:us-east-1:123456789012:cluster/j-12345ABCDEFG67" } ] }
Jika pengguna dengan kebijakan terlampir ini melakukan tindakan ModifyInstanceGroup
dan menentukan hanya ID grup instans, kebijakan tidak berlaku. Karena tindakan diizinkan pada semua sumber daya lainnya, tindakan tersebut berhasil.
Solusi untuk masalah ini adalah melampirkan pernyataan kebijakan ke identitas yang menggunakan NotResourceelemen untuk menolak ModifyInstanceGroup
tindakan apa pun yang dikeluarkan tanpa ID klaster. Kebijakan contoh berikut menambahkan pernyataan tolak sehingga setiap permintaan ModifyInstanceGroups
gagal kecuali ID klaster ditentukan. Karena identitas harus menentukan ID klaster dengan tindakan, tolak pernyataan berdasarkan ID klaster karena efektif.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticmapreduce:ModifyInstanceGroups" ], "Effect": "Allow", "Resource": "*" }, { "Action": [ "elasticmapreduce:ModifyInstanceGroups" ], "Effect": "Deny", "Resource": "arn:aws:elasticmapreduce:us-east-1:123456789012:cluster/j-12345ABCDEFG67" }, { "Action": [ "elasticmapreduce:ModifyInstanceGroups" ], "Effect": "Deny", "NotResource": "arn:*:elasticmapreduce:*:*:cluster/*" } ] }
Masalah serupa ada saat Anda ingin tolak tindakan ModifyInstanceGroups
berdasarkan nilai yang terkait dengan tanda klaster. Solusinya serupa. Selain tolak pernyataan yang menentukan nilai tanda, Anda dapat menambahkan pernyataan kebijakan yang menolak tindakan ModifyInstanceGroup
tanda yang Anda tentukan tidak ada, terlepas dari nilai.
Contoh berikut menunjukkan kebijakan yang, saat dilampirkan ke identitas, menolak identitas tindakan ModifyInstanceGroups
klaster apapun dengan tanda department
yang diatur ke dev
. Pernyataan ini hanya efektif karena pernyataan tolak menggunakan syarat StringNotLike
untuk menolak tindakan kecuali tanda department
ada.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticmapreduce:ModifyInstanceGroups" ], "Effect": "Allow", "Resource": "*" }, { "Action": [ "elasticmapreduce:ModifyInstanceGroups" ], "Condition": { "StringEquals": { "aws:ResourceTag/department": "dev" } }, "Effect": "Deny", "Resource": "*" }, { "Action": [ "elasticmapreduce:ModifyInstanceGroups" ], "Condition": { "StringNotLike": { "aws:ResourceTag/department": "?*" } }, "Effect": "Deny", "Resource": "*" } ], }