Sintaks dan contoh kebijakan tag - AWS Organizations

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

Sintaks dan contoh kebijakan tag

Halaman ini menjelaskan sintaks kebijakan tag dan memberikan contoh.

Sintaks kebijakan tag

Kebijakan tag adalah file plaintext yang terstruktur sesuai dengan aturan JSON. Sintaks untuk kebijakan tag tersebut mengikuti sintaks untuk jenis kebijakan pengelolaan. Untuk pembahasan lengkap tentang sintaks itu, lihat Memahami warisan kebijakan manajemen. Topik ini berfokus pada penerapan sintaks umum untuk persyaratan spesifik jenis kebijakan tag.

Kebijakan tag berikut menunjukkan sintaks kebijakan tag basic:

{ "tags": { "costcenter": { "tag_key": { "@@assign": "CostCenter" }, "tag_value": { "@@assign": [ "100", "200" ] }, "enforced_for": { "@@assign": [ "secretsmanager:*" ] } } } }

Sintaks kebijakan tag mencakup elemen-elemen berikut:

  • Nama kunci bidang tags. Kebijakan tag selalu dimulai dengan nama kunci tetap ini. Ini adalah baris teratas dalam contoh kebijakan di atas.

  • Sebuah kunci kebijakan yang secara unik mengidentifikasi pernyataan kebijakan. Ini harus sesuai dengan nilai untuk kunci tag, kecuali untuk perlakuan kasus. Berbeda dengan kunci tag (dijelaskan selanjutnya), nilai kebijakan tidak peka huruf besar kecil.

    Dalam contoh ini, costcenter adalah kunci kebijakan.

  • Setidaknya satu kunci tag yang menentukan kunci tag yang diperbolehkan dengan kapitalisasi yang Anda ingin dipatuhi oleh sumber daya. Jika penanganan kasus tidak didefinisikan, maka huruf kecil adalah perlakuan kasus default untuk kunci tag. Nilai untuk kunci tag harus sesuai dengan nilai untuk kunci kebijakan. Tapi karena nilai kunci kebijakan sensitif huruf besar kecil, maka kapitalisasi-nya bisa berbeda.

    Dalam contoh ini, CostCenter adalah kunci tag. Ini adalah perlakuan kasus yang diperlukan untuk kepatuhan dengan kebijakan tag. Sumber daya dengan perlakuan kasus alternatif untuk kunci tag ini tidak patuh dengan kebijakan tag.

    Anda dapat menentukan beberapa kunci tag dalam kebijakan tag.

  • (Opsional) Daftar satu atau lebih nilai tag yang dapat diterima untuk kunci tag. Jika kebijakan tag tidak menentukan nilai tag untuk kunci tag tersebut, maka nilai apapun (termasuk tidak ada nilai sama sekali) akan dianggap patuh.

    Dalam contoh ini, nilai yang dapat diterima untuk kunci tag CostCenter adalah 100 dan 200.

  • (Opsional) Sebuah opsi enforced_for yang menunjukkan apakah akan mencegah operasi penandaan tidak patuh pada layanan tertentu dan sumber daya. Di konsol tersebut, ini adalah opsi Mencegah operasi tidak patuh untuk tag ini di editor visual untuk membuat kebijakan tag. Nilai pengaturan default untuk opsi ini adalah null.

    Kebijakan tag contoh menetapkan bahwa CostCenter tag yang diteruskan pada semua AWS Secrets Manager sumber daya harus sesuai dengan kebijakan ini.

    Awas

    Anda hanya harus mengubah opsi ini dari pengaturan default-nya jika Anda berpengalaman menggunakan kebijakan tag. Jika tidak, Anda dapat mencegah pengguna di akun organisasi Anda dari membuat sumber daya yang mereka butuhkan.

  • Operator yang menentukan bagaimana kebijakan tag bergabung dengan kebijakan tag lain dalam pohon organisasi untuk membuat kebijakan tag efektif. Dalam contoh ini, @@assign digunakan untuk menetapkan string ke tag_key, tag_value, dan enforced_for. Untuk informasi selengkapnya tentang operator, lihat Operator pewarisan.

  • — Anda dapat menggunakan wildcard * dalam nilai tag dan bidang enforced_for.

    • Anda dapat menggunakan satu wildcard saja untuk setiap nilai tag. Misalnya, *@example.com diperbolehkan, tapi *@*.com tidak.

    • Untuk enforced_for, Anda dapat menggunakan <service>:* dengan beberapa layanan untuk memungkinkan penegakan untuk semua sumber daya untuk layanan tersebut. Untuk daftar layanan dan jenis sumber daya yang men-support enforced_for, lihat Layanan dan jenis sumber daya yang men-support penegakan.

      Anda tidak dapat menggunakan wildcard untuk menentukan semua layanan atau menentukan sumber daya untuk semua layanan.

Contoh kebijakan tag

Contoh kebijakan tag berikut adalah untuk tujuan informasi saja.

catatan

Sebelum Anda mencoba menggunakan kebijakan tag contoh ini dalam organisasi Anda, perhatikan hal berikut:

  • Pastikan Anda telah mengikuti alur kerja yang direkomendasikan untuk memulai kebijakan tag.

  • Anda harus hati-hati dalam meninjau dan menyesuaikan kebijakan tag ini untuk kebutuhan unik Anda.

  • Semua karakter dalam kebijakan tag Anda tunduk pada ukuran maksimum. Contoh dalam panduan ini menunjukkan kebijakan tag yang diformat dengan spasi kosong ekstra untuk meningkatkan keterbacaannya. Namun, untuk menghemat ruang jika ukuran kebijakan Anda mendekati ukuran maksimum, maka Anda dapat menghapus spasi kosong. Contoh spasi kosong termasuk karakter spasi dan jeda baris yang berada di luar tanda kutip.

  • Sumber daya yang tidak diberi tag tidak akan muncul sebagai tag tidak patuh dalam hasil.

Contoh 1: Tentukan kasus kunci tag di seluruh organisasi

Contoh berikut menunjukkan kebijakan tag yang hanya mendefinisikan dua kunci tag dan kapitalisasi yang Anda inginkan agar akun dalam organisasi Anda menjadi standardisasi.

Kebijakan A — kebijakan tag akar organisasi

{ "tags": { "CostCenter": { "tag_key": { "@@assign": "CostCenter", "@@operators_allowed_for_child_policies": ["@@none"] } }, "Project": { "tag_key": { "@@assign": "Project", "@@operators_allowed_for_child_policies": ["@@none"] } } } }

Kebijakan tag ini mendefinisikan dua kunci tag: CostCenter dan Project. Melampirkan kebijakan tag ini pada root organisasi memiliki efek berikut:

  • Semua akun dalam organisasi Anda akan mewarisi kebijakan tag ini.

  • Semua akun dalam organisasi Anda harus menggunakan perlakuan kasus yang ditetapkan untuk kepatuhan. Sumber daya dengan tag CostCenter dan Project adalah patuh. Sumber daya dengan perlakuan kasus alternatif untuk kunci tag (misalnya, costcenter, Costcenter, atau COSTCENTER) adalah tidak patuh.

  • Garis @@operators_allowed_for_child_policies": ["@@none"] mengunci kunci tag. Kebijakan tag yang dilampirkan di bagian bawah pohon organisasi (kebijakan anak) tidak dapat menggunakan pengaturan nilai operator untuk mengubah kunci tag, termasuk perlakuan kasus.

  • Seperti semua kebijakan tag, Sumber daya atau tag yang tak ditandai yang tidak didefinisikan dalam kebijakan tag tidak akan dievaluasi demi kepatuhan terhadap kebijakan tag.

AWS merekomendasikan agar Anda menggunakan contoh ini sebagai panduan dalam membuat kebijakan tag serupa untuk kunci tag yang ingin Anda gunakan. Lampirkan kebijakan tag ke organisasi root. Kemudian buat kebijakan tag yang serupa dengan contoh berikutnya, yang hanya mendefinisikan nilai yang dapat diterima saja untuk kunci tag yang didefinisikan tersebut.

Langkah berikutnya: Tentukan nilai

Asumsikan bahwa Anda melampirkan kebijakan tag sebelumnya ke root organisasi. Selanjutnya, Anda dapat membuat kebijakan tag seperti berikut ini dan melampirkannya pada akun. Kebijakan ini mendefinisikan nilai yang dapat diterima untuk kunci tag CostCenter dan Project.

Kebijakan B — kebijakan tag akun

{ "tags": { "CostCenter": { "tag_value": { "@@assign": [ "Production", "Test" ] } }, "Project": { "tag_value": { "@@assign": [ "A", "B" ] } } } }

Jika Anda melampirkan kebijakan A ke root organisasi dan kebijakan B pada akun, maka kebijakan tersebut bergabung untuk membuat kebijakan tag efektif berikut ini untuk akun tersebut:

Kebijakan A+Kebijakan B = kebijakan tag efektif untuk akun

{ "tags": { "Project": { "tag_value": [ "A", "B" ], "tag_key": "Project" }, "CostCenter": { "tag_value": [ "Production", "Test" ], "tag_key": "CostCenter" } } }

Untuk informasi lebih lanjut tentang warisan kebijakan, termasuk contoh bagaimana operator warisan bekerja dan contoh kebijakan tag efektif, lihat Memahami warisan kebijakan manajemen.

Contoh 2: Mencegah penggunaan kunci tag

Untuk mencegah penggunaan kunci tag, Anda dapat melampirkan kebijakan tag seperti berikut pada entitas organisasi.

Kebijakan contoh ini menetapkan bahwa tidak ada nilai yang dapat diterima untuk kunci tag Color. Hal ini juga menetapkan bahwa tidak ada operator yang diizinkan dalam kebijakan tag anak. Oleh karena itu, setiap tag Color pada sumber daya pada akun yang terpengaruh dianggap tidak patuh. Namun, enforced_for sebenarnya mencegah akun yang terpengaruh dari penandaan tabel Amazon DynamoDB dengan tag Color saja.

{ "tags": { "Color": { "tag_key": { "@@operators_allowed_for_child_policies": [ "@@none" ], "@@assign": "Color" }, "tag_value": { "@@operators_allowed_for_child_policies": [ "@@none" ], "@@assign": [] }, "enforced_for": { "@@assign": [ "dynamodb:table" ] } } } }