Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Kebijakan untuk kendali akses berbasis tanda
Anda dapat menggunakan kondisi di kebijakan berbasis identitas Anda untuk mengontrol akses ke klaster virtual dan tugas berjalan berbasis tanda. Untuk informasi lebih lanjut tentang penandaan, lihat Menandai Sumber Daya Amazon EMR di EKS Anda.
Contoh berikut menunjukkan skenario dan cara yang berbeda untuk menggunakan operator kondisi dengan Amazon EMR pada kunci EKS kondisi. Pernyataan IAM kebijakan ini dimaksudkan untuk tujuan demonstrasi saja dan tidak boleh digunakan dalam lingkungan produksi. Ada beberapa cara untuk menggabungkan pernyataan kebijakan untuk memberikan dan menolak izin sesuai dengan kebutuhan Anda. Untuk informasi selengkapnya tentang IAM kebijakan perencanaan dan pengujian, lihat Panduan IAM pengguna.
penting
Secara eksplisit menolak izin untuk tindakan penandaan adalah pertimbangan penting. Hal ini mencegah pengguna dari penandaan sumber daya dan dengan demikian memberikan sendiri izin yang tidak ingin Anda berikan. Jika tindakan penandaan untuk sumber daya tidak ditolak, pengguna dapat memodifikasi tanda dan menghindari maksud kebijakan berbasis tanda. Untuk contoh kebijakan yang menolak tindakan penandaan, lihat Tolak akses untuk menambah dan menghapus tanda.
Contoh di bawah ini menunjukkan kebijakan izin berbasis identitas yang digunakan untuk mengontrol tindakan yang diizinkan dengan Amazon EMR di klaster virtual. EKS
Izinkan tindakan hanya pada sumber daya dengan nilai tanda tertentu
Dalam contoh kebijakan berikut, operator StringEquals kondisi mencoba mencocokkan dev dengan nilai untuk departemen tag. Jika departemen tanda belum ditambahkan ke klaster virtual, atau tidak mengandung dev nilai, kebijakan tersebut tidak berlaku, dan tindakan tersebut tidak diizinkan oleh kebijakan ini. Jika tidak ada pernyataan kebijakan lain mengizinkan tindakan, pengguna hanya dapat bekerja dengan klaster virtual yang memiliki tanda ini dengan nilai ini.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-containers:DescribeVirtualCluster" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/department": "dev" } } } ] }
Anda juga dapat menentukan beberapa nilai tanda menggunakan operator syarat. Misalnya, untuk mengizinkan tindakan pada klaster virtual di mana tanda department
berisi nilai dev
atau test
, Anda bisa mengganti blok syarat di contoh sebelumnya dengan berikut ini.
"Condition": { "StringEquals": { "aws:ResourceTag/department": ["dev", "test"] } }
Memerlukan penandaan ketika sumber daya dibuat
Pada contoh di bawah ini, tanda perlu diterapkan saat membuat klaster virtual.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-containers:CreateVirtualCluster" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/department": "dev" } } } ] }
Pernyataan kebijakan berikut mengizinkan pengguna untuk membuat klaster virtual hanya jika klaster memiliki tanda department
, yang dapat berisi nilai apa pun.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-containers:CreateVirtualCluster" ], "Resource": "*", "Condition": { "Null": { "aws:RequestTag/department": "false" } } } ] }
Tolak akses untuk menambah dan menghapus tanda
Efek dari kebijakan ini adalah untuk menolak izin pengguna untuk menambah atau menghapus tanda apa pun pada klaster virtual yang ditandai dengan tanda department
yang berisi nilai dev
.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "emr-containers:TagResource", "emr-containers:UntagResource" ], "Resource": "*", "Condition": { "StringNotEquals": { "aws:ResourceTag/department": "dev" } } } ] }