View a markdown version of this page

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 kumpulan 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 di mana pengenal untuk sumber daya yang dapat diberi tag adalah parameter yang diperlukan. Misalnya, penggunaan GetCustomEndpoint tidak diizinkan atau ditolak berdasarkan kunci konteks kondisi dan nilai karena tidak ada sumber daya yang dapat ditandai (hal-hal yang dikelola, profil penyediaan, loker kredensia, tugas over-the-air) yang direferensikan dalam permintaan ini. Untuk informasi selengkapnya tentang sumber daya integrasi terkelola yang dapat ditandai dan kunci kondisi yang didukungnya, baca fitur Tind akan, sumber daya, dan kunci kondisi untuk integrasi ter AWS IoT kelola. AWS IoT Device Management

Untuk informasi selengkapnya tentang menggunakan tag, lihat Mengontrol Akses Menggunakan Tag di Panduan AWS Identity and Access Management Pengguna. Bagian Referensi Kebijakan JSON IAM dari panduan tersebut 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 yang dibatasi oleh kebijakan ini:

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

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

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "iotmanagedintegrations:CreateManagedThing", "Resource": "arn:aws:iotmanagedintegrations:us-east-1:123456789012:managed-thing/*", "Condition": { "StringEquals": { "aws:RequestTag/env": "prod" } } }, { "Effect": "Deny", "Action": [ "iotmanagedintegrations:CreateManagedThing", "iotmanagedintegrations:DeleteManagedThing", "iotmanagedintegrations:GetManagedThing", "iotmanagedintegrations:UpdateManagedThing" ], "Resource": "arn:aws:iotmanagedintegrations:us-east-1:123456789012: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.