IAMJSONelemen kebijakan: NotAction - 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.

IAMJSONelemen kebijakan: NotAction

NotAction adalah elemen kebijakan tingkat lanjut yang secara eksplisit cocok dengan semuanya kecuali daftar tindakan yang ditentukan. Menggunakan NotAction dapat menghasilkan kebijakan yang lebih singkat dengan mencantumkan hanya beberapa tindakan yang harus tidak cocok, daripada menyertakan daftar panjang tindakan yang sesuai. Tindakan yang NotAction ditentukan dalam tidak terpengaruh oleh Allow atau Deny efek dalam pernyataan kebijakan. Hal ini, pada gilirannya, berarti bahwa semua tindakan atau layanan yang berlaku yang tidak terdaftar diperbolehkan jika Anda menggunakan efek Allow. Sebagai tambahan, tindakan atau layanan yang tidak terdaftar tersebut ditolak jika Anda menggunakan efek Deny. Saat Anda menggunakan NotAction dengan elemen Resource, Anda memberikan cakupan untuk kebijakan. Ini adalah bagaimana AWS menentukan tindakan atau layanan mana yang berlaku. Untuk informasi selengkapnya, lihat kebijakan contoh berikut.

NotAction dengan Izinkan

Anda dapat menggunakan NotAction elemen dalam pernyataan dengan "Effect": "Allow" untuk menyediakan akses ke semua tindakan dalam AWS layanan, kecuali untuk tindakan yang ditentukan dalamNotAction. Anda dapat menggunakannya dengan elemen Resource untuk menyediakan cakupan untuk kebijakan, membatasi tindakan yang diizinkan untuk tindakan yang dapat dilakukan pada sumber daya tertentu.

Contoh berikut memungkinkan pengguna mengakses semua tindakan Amazon S3 yang dapat dilakukan pada sumber daya S3 kecuali untuk menghapus bucket. Ini tidak memungkinkan pengguna untuk menggunakan API operasi ListAllMyBuckets S3, karena tindakan itu memerlukan sumber daya “*”. Kebijakan ini juga tidak mengizinkan tindakan dalam layanan lain, karena tindakan layanan lainnya tidak berlaku untuk sumber daya S3.

"Effect": "Allow", "NotAction": "s3:DeleteBucket", "Resource": "arn:aws:s3:::*",

Terkadang, Anda mungkin ingin memungkinkan akses ke sejumlah besar tindakan. Dengan menggunakan elemen NotAction secara efektif membalik pernyataan, yang menghasilkan daftar tindakan yang lebih singkat. Misalnya, karena AWS memiliki begitu banyak layanan, Anda mungkin ingin membuat kebijakan yang memungkinkan pengguna melakukan semuanya kecuali IAM tindakan akses.

Contoh berikut memungkinkan pengguna untuk mengakses setiap tindakan di setiap AWS layanan kecuali untukIAM.

"Effect": "Allow", "NotAction": "iam:*", "Resource": "*"

Hati-hati saat menggunakan elemen NotAction dan "Effect": "Allow" dalam pernyataan yang sama atau dalam pernyataan yang berbeda dalam kebijakan. NotAction cocok dengan semua layanan dan tindakan yang tidak tercantum atau berlaku secara eksplist untuk sumber daya yang ditentukan, dan dapat mengakibatkan pemberian izin kepada pengguna lebih dari yang Anda inginkan.

NotAction dengan mendustakan

Anda dapat menggunakan elemen NotAction dalam pernyataan dengan "Effect": "Deny" untuk menolak akses ke semua sumber daya yang tercantum kecuali untuk tindakan yang ditentukan dalam elemen NotAction. Kombinasi ini tidak memungkinkan item yang terdaftar, tetapi sebaliknya secara eksplisit menolak tindakan yang tidak tercantum. Anda tetap harus mengizinkan tindakan yang ingin Anda izinkan.

Contoh bersyarat berikut menolak akses ke IAM non-tindakan jika pengguna tidak masuk menggunakan. MFA Jika pengguna masuk denganMFA, maka "Condition" tes gagal dan "Deny" pernyataan akhir tidak berpengaruh. Perhatikan, bagaimanapun, bahwa ini tidak akan memberikan pengguna akses ke tindakan apa pun; itu hanya akan secara eksplisit menolak semua tindakan lain kecuali IAM tindakan.

{ "Version": "2012-10-17", "Statement": [{ "Sid": "DenyAllUsersNotUsingMFA", "Effect": "Deny", "NotAction": "iam:*", "Resource": "*", "Condition": {"BoolIfExists": {"aws:MultiFactorAuthPresent": "false"}} }] }

Untuk contoh kebijakan yang menolak akses ke tindakan di luar Wilayah tertentu, kecuali untuk tindakan dari layanan tertentu, lihat AWS: Menolak akses AWS berdasarkan Wilayah yang diminta.