Brankas penyebaran penetapan Azure Policy
Saat lingkungan Anda meluas, begitu juga permintaan untuk alur penyebaran berkelanjutan (CD) terkontrol dengan kontrol eksposur progresif. Oleh karena itu, Microsoft merekomendasikan tim DevOps mengikuti kerangka kerja praktik penyebaran aman (SDP). Penyebaran definisi dan penugasan Azure Policy yang aman membantu membatasi dampak perilaku sumber daya kebijakan yang tidak diinginkan.
Pendekatan tingkat tinggi untuk menerapkan SDP dengan Azure Policy adalah meluncurkan penetapan kebijakan secara bertahap dengan cincin untuk mendeteksi perubahan kebijakan yang memengaruhi lingkungan pada tahap awal sebelum memengaruhi infrastruktur cloud penting.
Cincin penyebaran dapat diatur dengan berbagai cara. Dalam tutorial cara ini, cincin dibagi oleh wilayah Azure yang berbeda dengan Ring 0 yang mewakili lokasi lalu lintas non-kritis dan rendah dan Ring 5 yang menunjukkan lokasi lalu lintas paling penting dan tertinggi.
Langkah-langkah untuk penyebaran penetapan Azure Policy dengan aman dengan efek tolak atau tambahkan
Gunakan diagram alur berikut sebagai referensi saat kita bekerja melalui cara menerapkan kerangka kerja SDP ke penetapan Azure Policy yang menggunakan deny
efek kebijakan atau append
.
Catatan
Untuk mempelajari selengkapnya tentang efek kebijakan Azure, lihat Memahami cara kerja efek.
Nomor langkah diagram alur:
Setelah Anda memilih definisi kebijakan, tetapkan kebijakan pada cakupan tingkat tertinggi yang termasuk dari semua cincin penyebaran. Terapkan pemilih sumber daya untuk mempersempit penerapan ke cincin paling tidak penting dengan menggunakan
"kind": "resource location"
properti . Konfigurasikanaudit
jenis efek dengan menggunakan penugasan mengambil alih. Pemilih sampel denganeastUS
lokasi dan efek sebagaiaudit
:"resourceSelectors": [{ "name": "SDPRegions", "selectors": [{ "kind": "resourceLocation", "in": [ "eastUS" ] }] }], "overrides":[{ "kind": "policyEffect", "value": "Audit" }]
Setelah penugasan disebarkan dan pemindaian kepatuhan awal telah selesai, validasi bahwa hasil kepatuhan seperti yang diharapkan.
Anda juga harus mengonfigurasi pengujian otomatis yang menjalankan pemeriksaan kepatuhan. Pemeriksaan kepatuhan harus mencakup logika berikut:
- Mengumpulkan hasil kepatuhan
- Jika hasil kepatuhan seperti yang diharapkan, alur harus dilanjutkan
- Jika hasil kepatuhan tidak seperti yang diharapkan, alur harus gagal dan Anda harus mulai men-debug
Misalnya, Anda dapat mengonfigurasi pemeriksaan kepatuhan dengan menggunakan alat lain dalam alur integrasi berkelanjutan/penyebaran berkelanjutan (CI/CD) tertentu.
Pada setiap tahap peluncuran, pemeriksaan kesehatan aplikasi harus mengonfirmasi stabilitas layanan dan dampak kebijakan. Jika hasilnya tidak seperti yang diharapkan karena konfigurasi aplikasi, refaktor aplikasi sebagaimana mewajarinya.
Ulangi dengan memperluas nilai properti pemilih sumber daya untuk menyertakan cincin berikutnya. lokasi dan memvalidasi hasil kepatuhan yang diharapkan dan kesehatan aplikasi. Contoh pemilih dengan nilai lokasi tambahan:
"resourceSelectors": [{ "name": "SDPRegions", "selectors": [{ "kind": "resourceLocation", "in": [ "eastUS", "westUS"] }] }]
Setelah Anda berhasil menetapkan kebijakan ke semua cincin menggunakan
audit
mode, alur harus memicu tugas yang mengubah efek kebijakan menjadideny
dan mengatur ulang pemilih sumber daya ke lokasi yang terkait dengan Ring 0. Contoh pemilih dengan satu wilayah dan efek diatur ke tolak:"resourceSelectors": [{ "name": "SDPRegions", "selectors": [{ "kind": "resourceLocation", "in": [ "eastUS" ] }] }], "overrides":[{ "kind": "policyEffect", "value": "Deny" }]
Setelah efek diubah, pengujian otomatis harus memeriksa apakah penerapan berlangsung seperti yang diharapkan.
Ulangi dengan menyertakan lebih banyak cincin dalam konfigurasi pemilih sumber daya Anda.
Ulangi proses ini untuk semua cincin produksi.
Langkah-langkah untuk penyebaran penetapan Azure Policy dengan aman dengan efek modifikasi atau deployIfNotExists
Langkah-langkah untuk kebijakan yang menggunakan modify
efek atau deployIfNotExists
mirip dengan langkah-langkah yang dijelaskan sebelumnya dengan tindakan tambahan menggunakan mode penegakan dan memicu tugas remediasi.
Tinjau diagram alur berikut dengan langkah 5-9 yang dimodifikasi:
Nomor langkah diagram alur:
Setelah Anda memilih definisi kebijakan, tetapkan kebijakan pada cakupan tingkat tertinggi yang termasuk dari semua cincin penyebaran. Terapkan pemilih sumber daya untuk mempersempit penerapan ke cincin paling tidak penting dengan menggunakan
"kind": "resource location"
properti . Konfigurasikan mode penegakan penugasan ke DoNotEnforce. Pemilih sampel denganeastUS
lokasi dan enforcementMode sebagai DoNotEnforce:"resourceSelectors": [{ "name": "SDPRegions", "selectors": [{ "kind": "resourceLocation", "in": [ "eastUS" ] }] }], "enforcementMode": "DoNotEnforce"
Setelah penugasan disebarkan dan pemindaian kepatuhan awal telah selesai, validasi bahwa hasil kepatuhan seperti yang diharapkan.
Anda juga harus mengonfigurasi pengujian otomatis yang menjalankan pemeriksaan kepatuhan. Pemeriksaan kepatuhan harus mencakup logika berikut:
- Mengumpulkan hasil kepatuhan
- Jika hasil kepatuhan seperti yang diharapkan, alur harus dilanjutkan
- Jika hasil kepatuhan tidak seperti yang diharapkan, alur harus gagal dan Anda harus mulai men-debug
Anda dapat mengonfigurasi pemeriksaan kepatuhan dengan menggunakan alat lain dalam alur integrasi berkelanjutan/penyebaran berkelanjutan (CI/CD).
Pada setiap tahap peluncuran, pemeriksaan kesehatan aplikasi harus mengonfirmasi stabilitas layanan dan dampak kebijakan. Jika hasilnya tidak seperti yang diharapkan karena konfigurasi aplikasi, refaktor aplikasi sebagaimana mewajarinya.
Anda juga dapat memicu tugas remediasi untuk memulihkan sumber daya yang tidak patuh yang ada. Pastikan tugas remediasi membawa sumber daya ke kepatuhan seperti yang diharapkan.
Ulangi dengan memperluas nilai properti pemilih sumber daya untuk menyertakan lokasi cincin berikutnya dan memvalidasi hasil kepatuhan yang diharapkan dan kesehatan aplikasi. Contoh pemilih dengan nilai lokasi tambahan:
"resourceSelectors": [{ "name": "SDPRegions", "selectors": [{ "kind": "resourceLocation", "in": [ "eastUS", "westUS"] }] }]
Setelah Anda berhasil menetapkan kebijakan ke semua cincin menggunakan mode DoNotEnforce, alur harus memicu tugas yang mengubah kebijakan
enforcementMode
menjadi Pengaktifan default dan mengatur ulang pemilih sumber daya ke lokasi yang terkait dengan Ring 0. Contoh pemilih dengan satu wilayah dan efek diatur ke tolak:"resourceSelectors": [{ "name": "SDPRegions", "selectors": [{ "kind": "resourceLocation", "in": [ "eastUS" ] }] }], "enforcementMode": "Default",
Setelah efek diubah, pengujian otomatis harus memeriksa apakah penerapan berlangsung seperti yang diharapkan.
Ulangi dengan menyertakan lebih banyak cincin dalam konfigurasi pemilih sumber daya Anda.
Ulangi proses ini untuk semua cincin produksi.
Langkah berikutnya
- Pelajari cara membuat kebijakan secara terprogram.
- Tinjau Azure Policy sebagai alur kerja kode.
- Pelajari panduan Microsoft tentang praktik penyebaran yang aman.
- Tinjau Memulihkan sumber daya yang tidak sesuai dengan Azure Policy.