Menggunakan tanda dengan kebijakan IAM - Integrasi terkelola untuk AWS IoT Device Management

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

Menggunakan tanda dengan kebijakan IAM

Anda dapat menerapkan izin tingkat sumber daya berbasis tag dalam kebijakan IAM yang Anda gunakan untuk tindakan API integrasi terkelola. Hal ini memberi Anda kontrol yang lebih baik atas sumber daya yang dapat dibuat, dimodifikasi, atau digunakan oleh pengguna. Anda menggunakan elemen Condition (juga disebut blok Condition) dengan kunci konteks syarat berikut dan nilai-nilai dalam kebijakan IAM untuk mengontrol akses pengguna (izin) berdasarkan tanda sumber daya:

  • Gunakan aws:ResourceTag/tag-key: tag-value untuk mengizinkan atau menolak tindakan pengguna pada sumber daya dengan tag tertentu.

  • Gunakan aws:RequestTag/tag-key: tag-value untuk mengharuskan tag tertentu digunakan (atau tidak digunakan) saat membuat permintaan API untuk membuat atau memodifikasi sumber daya yang memungkinkan tag.

  • Gunakan aws:TagKeys: [tag-key, ...] untuk mengharuskan sekumpulan kunci tag tertentu digunakan (atau tidak digunakan) saat membuat permintaan API untuk membuat atau memodifikasi sumber daya yang memungkinkan tag.

catatan

Kunci konteks kondisi dan nilai dalam kebijakan IAM hanya berlaku untuk tindakan integrasi terkelola tersebut di mana pengidentifikasi untuk sumber daya yang mampu diberi tag adalah parameter wajib. Misalnya, penggunaan GetCustomEndpointtidak diizinkan atau ditolak berdasarkan kunci dan nilai konteks kondisi karena tidak ada sumber daya yang dapat diberi tag (hal-hal yang dikelola, profil penyediaan, loker kredensi, over-the-air tugas) yang direferensikan dalam permintaan ini. Untuk informasi selengkapnya tentang sumber daya integrasi terkelola yang dapat diberi tag dan kunci kondisi yang mereka dukung, baca Tindakan, sumber daya, dan kunci kondisi untuk fitur integrasi AWS IoT terkelola. AWS IoT Device Management

Untuk informasi selengkapnya tentang penggunaan tag, lihat Mengontrol Akses Menggunakan Tag di Panduan AWS Identity and Access Management Pengguna. Bagian Referensi Kebijakan IAM JSON dari panduan itu memiliki sintaks terperinci, deskripsi, dan contoh elemen, variabel, dan logika evaluasi kebijakan JSON di IAM.

Kebijakan contoh berikut menerapkan dua batasan berbasis tag untuk CreateManagedThing tindakan tersebut. Pengguna IAM dibatasi oleh kebijakan ini:

  • Tidak dapat membuat hal yang dikelola dengan tag “env=prod” (dalam contoh, lihat baris). "aws:RequestTag/env" : "prod"

  • Tidak dapat memodifikasi atau mengakses hal terkelola yang memiliki tag “env=prod” yang ada (dalam contoh, lihat baris). "aws:ResourceTag/env" : "prod"

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "iotmanagedintegrations:CreateManagedThing", "Resource": "arn:aws:iotmanagedintegrations:${Region}:${Account}:managed-thing/*", "Condition": { "StringEquals": { "aws:RequestTag/env": "prod" } } }, { "Effect": "Deny", "Action": [ "iotmanagedintegrations:CreateManagedThing", "iotmanagedintegrations:DeleteManagedThing", "iotmanagedintegrations:GetManagedThing", "iotmanagedintegrations:UpdateManagedThing" ], "Resource": "arn:aws:iotmanagedintegrations:${Region}:${Account}:managed-thing/*", "Condition": { "StringEquals": { "aws:ResourceTag/env": "prod" } } }, { "Effect": "Allow", "Action": [ "iotmanagedintegrations:CreateManagedThing", "iotmanagedintegrations:DeleteManagedThing", "iotmanagedintegrations:GetManagedThing", "iotmanagedintegrations:UpdateManagedThing" ], "Resource": "*" } ] }

Anda juga dapat menentukan beberapa nilai tag untuk kunci tag tertentu dengan melampirkannya dalam daftar, seperti ini:

"StringEquals" : { "aws:ResourceTag/env" : ["dev", "test"] }
catatan

Jika Anda mengizinkan atau menolak akses para pengguna ke sumber daya berdasarkan tanda, maka Anda harus mempertimbangkan untuk menolak secara eksplisit memberikan kemampuan kepada pengguna untuk menambahkan atau menghapus tanda tersebut dari sumber daya yang sama. Jika tidak, pengguna dapat mengakali pembatasan Anda dan mendapatkan akses atas sumber daya dengan melakukan modifikasi pada tanda dari sumber daya tersebut.