Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Efeknya deny digunakan untuk mencegah permintaan sumber daya yang tidak cocok dengan standar yang ditentukan melalui definisi kebijakan dan gagal permintaan.
Menolak evaluasi
Saat membuat atau memperbarui sumber daya yang cocok dalam mode Resource Manager, penolakan mencegah permintaan sebelum dikirim ke Penyedia Sumber Daya. Permintaan dikembalikan sebagai 403 (Forbidden). Di dalam portal, Forbidden dapat dianggap sebagai status penyebaran yang dicegah oleh penugasan kebijakan. Untuk mode Penyedia Sumber Daya, penyedia sumber daya mengelola evaluasi sumber daya.
Selama evaluasi sumber daya yang ada, sumber daya yang cocok dengan deny definisi kebijakan ditandai sebagai tidak patuh.
Tolak properti
Untuk mode Resource Manager, deny efek tidak memiliki properti lagi untuk digunakan dalam then kondisi definisi kebijakan.
Untuk mode Penyedia Sumber Daya Microsoft.Kubernetes.Data, efek deny memiliki subproperti berikut dari details. Penggunaan templateInfo diperlukan untuk definisi kebijakan baru atau yang diperbarui seperti constraintTemplate yang tidak digunakan lagi.
-
templateInfo(diperlukan)- Tidak dapat digunakan dengan
constraintTemplate. -
sourceType(diperlukan)Menentukan jenis sumber untuk templat batasan. Nilai yang diizinkan:
PublicURLatauBase64Encoded.Jika
PublicURL, dipasangkan dengan propertiurluntuk menyediakan lokasi templat batasan. Lokasi harus dapat diakses publik.Peringatan
Jangan gunakan SAS URI atau token di
urlatau apa pun yang dapat mengekspos rahasia.Jika
Base64Encoded, dipasangkan dengan properticontentuntuk menyediakan templat batasan dasar 64 yang dikodekan. Lihat Membuat definisi kebijakan dari templat batasan untuk membuat definisi kustom dari templat batasanOpen Policy Agent (OPA) Gatekeeper v3 yang ada.
- Tidak dapat digunakan dengan
-
constraint(opsional)- Tidak dapat digunakan dengan
templateInfo. - Implementasi CRD dari templat Batasan. Menggunakan parameter yang diteruskan melalui
valuessebagai{{ .Values.<valuename> }}. Dalam contoh 2 di bawah ini, nilai-nilai ini adalah{{ .Values.excludedNamespaces }}dan{{ .Values.allowedContainerImagesRegex }}.
- Tidak dapat digunakan dengan
-
constraintTemplate(tidak digunakan lagi)- Tidak dapat digunakan dengan
templateInfo. - Harus diganti dengan
templateInfosaat membuat atau memperbarui definisi kebijakan. - Templat Batasan CustomResourceDefinition (CRD) yang menentukan Batasan baru. Templat menentukan logika Rego, skema Batasan, dan parameter Batasan yang diteruskan melalui
valuesdari Azure Policy. Untuk informasi selengkapnya, buka Batasan Gatekeeper.
- Tidak dapat digunakan dengan
-
constraintInfo(opsional)- Tidak dapat digunakan dengan
constraint, ,constraintTemplate,apiGroupsataukinds. - Jika
constraintInfotidak disediakan, batasan dapat dihasilkan daritemplateInfodan kebijakan. -
sourceType(diperlukan)Menentukan jenis sumber untuk batasan. Nilai yang diizinkan:
PublicURLatauBase64Encoded.Jika
PublicURL, dipasangkan dengan propertiurluntuk menyediakan lokasi batasan. Lokasi harus dapat diakses publik.Peringatan
Jangan gunakan SAS URI atau token di
urlatau apa pun yang dapat mengekspos rahasia.
- Tidak dapat digunakan dengan
-
namespaces(opsional)- Larik namespace Kubernetes untuk membatasi evaluasi kebijakan pada.
- Nilai kosong atau hilang menyebabkan evaluasi kebijakan menyertakan semua namespace, kecuali yang ditentukan dalam
excludedNamespaces.
-
excludedNamespaces(diperlukan)- Array namespace Kubernetes yang dikecualikan dari evaluasi kebijakan.
-
labelSelector(diperlukan)-
Objek yang mencakup
matchLabelsproperti (objek) danmatchExpression(array) untuk memungkinkan penentuan sumber daya Kubernetes mana yang akan disertakan untuk evaluasi kebijakan yang cocok dengan label dan selektor yang disediakan. - Nilai kosong atau hilang menyebabkan evaluasi kebijakan menyertakan semua label dan pemilih, kecuali namespace yang ditentukan dalam
excludedNamespaces.
-
Objek yang mencakup
-
apiGroups(diperlukan saat menggunakan templateInfo)-
Array yang menyertakan grup API yang cocok. Array kosong (
[""]) adalah grup API inti. - Penentuan
["*"]untuk apiGroups tidak diizinkan.
-
Array yang menyertakan grup API yang cocok. Array kosong (
-
kinds(diperlukan saat menggunakan templateInfo)- Array yang mencakup jenis objek Kubernetes untuk membatasi evaluasi.
-
["*"]Menentukan jenis tidak diizinkan.
-
values(opsional)- Menentukan parameter atau nilai apa pun untuk diteruskan ke Kendala. Setiap nilai harus ada dalam template Batasan CRD.
Contoh penolakan
Contoh 1: Menggunakan deny efek untuk mode Resource Manager.
"then": {
"effect": "deny"
}
Contoh 2: Menggunakan deny efek untuk mode Penyedia Sumber Daya dari Microsoft.Kubernetes.Data. Informasi tambahan dalam details.templateInfo menyatakan penggunaan PublicURL dan menetapkan url ke lokasi templat batasan yang digunakan di Kubernetes untuk membatasi gambar kontainer yang diizinkan.
"then": {
"effect": "deny",
"details": {
"templateInfo": {
"sourceType": "PublicURL",
"url": "https://store.policy.core.windows.net/kubernetes/container-allowed-images/v1/template.yaml",
},
"values": {
"imageRegex": "[parameters('allowedContainerImagesRegex')]"
},
"apiGroups": [
""
],
"kinds": [
"Pod"
]
}
}
Langkah berikutnya
- Tinjau contoh di Azure Policy samples.
- Lakukan tinjauan terhadap struktur definisi Azure Policy.
- Memahami cara membuat kebijakan secara terprogram.
- Pelajari cara mendapatkan data kepatuhan.
- Pelajari cara memulihkan sumber daya yang tidak sesuai syarat.
- Tinjau grup manajemen Azure.