Apa itu Azure Policy?

Azure Policy membantu memberlakukan standar organisasi dan menilai kepatuhan dalam skala besar. Melalui dasbor kepatuhannya, ia menyediakan tampilan agregat untuk mengevaluasi keadaan lingkungan secara menyeluruh, dengan kemampuan untuk menelusuri ke granularitas per sumber daya, per kebijakan dengan mendetail. Ini juga membantu untuk membawa sumber daya Anda ke kepatuhan melalui remediasi massal untuk sumber daya yang sudah ada dan remediasi otomatis untuk sumber daya baru.

Catatan

Untuk informasi selengkapnya tentang remediasi, lihat Memulihkan sumber daya yang tidak sesuai dengan Azure Policy.

Penggunaan umum Azure Policy meliputi menerapkan tata kelola untuk konsistensi sumber daya, kepatuhan terhadap peraturan, keamanan, biaya, dan manajemen. Definisi kebijakan untuk kasus penggunaan umum ini sudah tersedia sebagai bawaan di lingkungan Azure Anda untuk membantu Anda dalam memulai.

Secara khusus, beberapa tindakan tata kelola yang berguna yang dapat Anda tertibkan dengan Azure Policy meliputi:

  • Memastikan tim Anda menyebarkan sumber daya Azure hanya ke wilayah yang diizinkan
  • Memberlakukan penerapan tag taksonomi yang konsisten
  • Memerlukan sumber daya untuk mengirim log diagnostik ke ruang kerja Analitik Log

Penting untuk dikenali bahwa dengan diperkenalkannya Azure Arc, Anda dapat memperluas tata kelola berbasis kebijakan di berbagai penyedia cloud dan bahkan ke pusat data lokal Anda.

Semua data dan objek Azure Policy dienkripsi saat tidak digunakan. Untuk informasi selengkapnya, lihat Enkripsi data Azure saat tidak aktif.

Gambaran Umum

Azure Policy mengevaluasi sumber daya dan tindakan di Azure dengan membandingkan properti sumber daya tersebut dengan aturan bisnis. Aturan bisnis ini, yang dijelaskan dalam format JSON, dikenal sebagai definisi kebijakan. Untuk menyederhanakan manajemen, beberapa aturan bisnis dapat dikelompokkan bersama untuk membentuk inisiatif kebijakan (kadang-kadang disebut sebagai policySet). Setelah aturan bisnis Anda terbentuk, definisi atau inisiatif kebijakan ditetapkan ke cakupan sumber daya apa pun yang didukung Azure, seperti grup manajemen, langganan, grup sumber daya, atau sumber daya individu. Penugasan berlaku untuk semua sumber daya dalam Cakupan Resource Manager dari penugasan tersebut. Sub cakupan dapat dikecualikan, jika diperlukan. Untuk informasi selengkapnya, lihat Cakupan dalam Azure Policy.

Azure Policy menggunakan format JSON untuk membentuk logika yang digunakan oleh evaluasi untuk menentukan apakah sumber daya sesuai atau tidak. Definisi termasuk metadata dan aturan kebijakan. Aturan yang didefinisikan dapat menggunakan fungsi, parameter, operator logika, kondisi, dan alias properti untuk mencocokkan skenario yang sama dengan yang Anda inginkan. Aturan kebijakan menentukan sumber daya mana dalam cakupan penugasan yang dievaluasi.

Memahami hasil evaluasi

Sumber daya dievaluasi pada waktu tertentu selama siklus hidup sumber daya, siklus hidup penugasan kebijakan, dan untuk evaluasi kepatuhan yang sedang berlangsung secara teratur. Berikut ini adalah waktu atau peristiwa yang menyebabkan sumber daya dievaluasi:

  • Saat sumber daya dibuat atau diperbarui dalam cakupan dengan penetapan kebijakan.
  • Saat kebijakan atau inisiatif baru ditetapkan ke sebuah cakupan.
  • Saat kebijakan atau inisiatif baru yang telah ditetapkan diperbarui.
  • Selama siklus evaluasi kepatuhan standar, yang terjadi setiap 24 jam sekali.

Untuk informasi rinci tentang kapan dan bagaimana evaluasi kebijakan terjadi, lihat Pemicu evaluasi.

Mengontrol respons ke evaluasi

Aturan bisnis untuk menangani sumber daya yang tidak sesuai sangat bervariasi di antara organisasi. Contoh cara organisasi yang ingin platform agar merespons sumber daya yang tidak sesuai meliputi:

  • Menolak perubahan sumber daya
  • Mencatat perubahan ke sumber daya
  • Mengubah sumber daya sebelum perubahan
  • Mengubah sumber daya setelah perubahan
  • Menyebarkan sumber daya terkait yang sesuai
  • Memblokir tindakan pada sumber daya

Azure Policy memungkinkan setiap respons bisnis ini melalui penerapan efek. Efek diatur dalam bagian aturan kebijakan dari definisi kebijakan.

Memulihkan sumber daya yang tidak sesuai

Meskipun efek ini terutama mempengaruhi sumber daya saat sumber daya dibuat atau diperbarui, Azure Policy juga mendukung saat berurusan dengan sumber daya yang tidak sesuai yang sudah ada tanpa perlu mengubah sumber daya tersebut. Untuk informasi selengkapnya tentang membuat sumber daya yang sudah ada agar sesuai, lihat memulihkan sumber daya.

Gambaran umum video

Ringkasan Azure Policy berikut ini berasal dari Build 2018. Untuk melihat slide atau mengunduh video, kunjungi Mengatur lingkungan Azure Anda melalui Azure Policy di Channel 9.

Memulai

Azure Policy dan Azure RBAC

Ada beberapa perbedaan utama antara Azure Policy dan kontrol akses berbasis peran Azure (Azure RBAC). Azure Policy mengevaluasi status dengan memeriksa properti pada sumber daya yang diwakili di Resource Manager dan properti beberapa Penyedia Sumber. Azure Policy memastikan bahwa status sumber daya mematuhi aturan bisnis Anda tanpa khawatir siapa yang melakukan perubahan atau siapa yang memiliki izin untuk melakukan perubahan. Azure Policy melalui efek DenyAction juga dapat memblokir tindakan tertentu pada sumber daya. Beberapa sumber daya Azure Policy, seperti definisi kebijakan, definisi inisiatif, dan tugas, dapat dilihat oleh semua pengguna. Desain ini memungkinkan transparansi kepada semua pengguna dan layanan terkait aturan kebijakan apa yang ditetapkan di lingkungan mereka.

Azure RBAC berfokus pada pengelolaan tindakan pengguna pada cakupan yang berbeda. Jika kontrol tindakan diperlukan berdasarkan informasi pengguna, maka Azure RBAC adalah alat yang benar untuk digunakan. Meskipun seseorang memiliki akses untuk melakukan sebuah tindakan, jika hasilnya adalah sumber daya yang tidak sesuai, Azure Policy masih memblokir pembuatan atau pembaruan.

Kombinasi Azure RBAC dan Azure Policy menyediakan kontrol cakupan penuh di Azure.

Izin Azure RBAC dalam Azure Policy

Azure Policy memiliki beberapa izin, yang dikenal sebagai operasi, di dua Penyedia Sumber:

Banyak peran bawaan yang memberikan izin ke sumber daya Azure Policy. Peran Kontributor Kebijakan Sumber Daya mencakup sebagian besar operasi Azure Policy. Pemilik memiliki hak penuh. Baik Kontributor dan Pembaca memiliki akses ke semua operasi baca Azure Policy.

Kontributor dapat memicu remediasi sumber daya, tetapi tidak dapat membuat atau memperbarui definisi dan penetapan. Admin Akses Pengguna diperlukan untuk memberikan identitas terkelola pada deployIfNotExists atau mengubah izin yang diperlukan tugas.

Catatan

Semua objek Kebijakan, termasuk definisi, inisiatif, dan penugasan, dapat dibaca untuk semua peran di atas cakupannya. Misalnya, penetapan Kebijakan yang dicakup ke langganan Azure akan dapat dibaca oleh semua pemegang peran pada cakupan langganan dan di bawah ini.

Jika tidak ada peran bawaan yang memiliki izin yang diperlukan, buat peran kustom.

Operasi Azure Policy dapat memiliki efek signifikan pada lingkungan Azure Anda. Hanya sekumpulan izin minimum yang diperlukan untuk melakukan tugas yang harus ditetapkan dan izin ini tidak boleh diberikan kepada pengguna yang tidak membutuhkannya.

Catatan

Identitas terkelola dari penetapan kebijakan deployIfNotExists atau modifikasi memerlukan izin yang cukup untuk membuat atau memperbarui sumber daya yang ditargetkan. Untuk informasi selengkapnya, lihat Mengonfigurasi definisi kebijakan untuk remediasi.

Persyaratan izin khusus untuk Azure Policy dengan Azure Virtual Network Manager

Azure Virtual Network Manager (pratinjau) memungkinkan Anda menerapkan kebijakan manajemen dan keamanan yang konsisten ke beberapa jaringan virtual Azure (VNet) di seluruh infrastruktur cloud Anda. Grup dinamis Azure Virtual Network Manager (AVNM) menggunakan definisi Azure Policy untuk mengevaluasi keanggotaan VNet dalam grup tersebut.

Untuk membuat, mengedit, atau menghapus kebijakan grup dinamis Azure Virtual Network Manager, Anda memerlukan:

  • Membaca dan menulis izin Azure RBAC ke kebijakan yang mendasar
  • Izin Azure RBAC untuk bergabung dengan grup jaringan (otorisasi Admin Klasik tidak didukung).

Secara khusus, izin penyedia sumber yang diperlukan adalah Microsoft.Network/networkManagers/networkGroups/join/action.

Penting

Untuk memodifikasi grup dinamis AVNM, Anda harus diberikan akses melalui penetapan peran Azure RBAC saja. Otorisasi Admin/warisan klasik tidak didukung; ini berarti jika akun Anda hanya ditetapkan sebagai peran langganan administrator bersama, Anda tidak akan memiliki izin pada grup dinamis AVNM.

Sumber daya yang dicakup oleh Azure Policy

Meskipun kebijakan dapat ditetapkan di tingkat grup manajemen, hanya sumber daya di tingkat langganan atau grup sumber daya yang dievaluasi.

Untuk penyedia sumber tertentu seperti Konfigurasi mesin, Azure Kubernetes Service, dan Azure Key Vault, ada integrasi yang lebih dalam untuk mengelola pengaturan dan objek. Untuk mengetahui lebih lanjut, buka mode Penyedia Sumber Daya.

Rekomendasi untuk mengelola kebijakan

Berikut adalah beberapa petunjuk dan tips yang perlu diingat:

  • Mulailah dengan audit efek atau auditIfNotExist alih-alih efek penegakan (deny, modify, ) deployIfNotExistuntuk melacak dampak definisi kebijakan Anda pada sumber daya di lingkungan Anda. Jika Anda sudah memiliki skrip untuk menskalakan otomatis aplikasi Anda, menetapkan efek penegakan dapat menghambat tugas otomatisasi tersebut yang sudah ada.

  • Pertimbangkan hierarki organisasi saat membuat definisi dan penugasan. Sebaiknya buat definisi di tingkat yang lebih tinggi seperti grup manajemen atau tingkat langganan. Kemudian, buat penugasan di tingkat anak berikutnya. Jika Anda membuat definisi di grup manajemen, penugasan dapat dicakup ke grup langganan atau sumber daya dalam grup manajemen tersebut.

  • Sebaiknya buat dan tetapkan definisi inisiatif bahkan untuk satu definisi kebijakan. Misalnya, Anda memiliki kebijakan definisi DefA dan membuatnya di bawah definisi inisiatif initiativeDefC. Jika Anda membuat definisi kebijakan lain nanti untuk policyDefB dengan tujuan yang mirip dengan policyDefA, Anda dapat menambahkannya di bawah initiativeDefC dan melacaknya bersama-sama.

    • Setelah Anda membuat penugasan inisiatif, definisi kebijakan yang ditambahkan ke inisiatif juga menjadi bagian dari penugasan inisiatif tersebut.

    • Ketika penugasan inisiatif dievaluasi, semua kebijakan dalam inisiatif tersebut juga dievaluasi. Jika Anda perlu mengevaluasi kebijakan secara individu, lebih baik untuk tidak memasukkannya dalam inisiatif.

  • Kelola sumber daya Azure Policy sebagai kode dengan tinjauan manual tentang perubahan definisi, inisiatif, dan penetapan kebijakan. Untuk mempelajari lebih lanjut tentang pola dan alat yang disarankan, lihat Merancang Azure Policy sebagai Alur Kerja Kode.

Objek Azure Policy

Definisi kebijakan

Perjalanan membuat dan mengimplementasikan kebijakan di Azure Policy dimulai dengan membuat sebuah definisi kebijakan. Setiap definisi kebijakan memiliki kondisi di mana itu diberlakukan. Selain itu, ia memiliki efek yang ditentukan yang terjadi jika syarat terpenuhi.

Dalam Azure Policy, kami menawarkan beberapa kebijakan bawaan yang tersedia secara default. Contohnya:

  • SKU Akun Penyimpanan yang Diizinkan (Tolak): Menentukan apakah akun penyimpanan yang disebarkan berada dalam satu kumpulan ukuran SKU. Efeknya adalah untuk menolak semua akun penyimpanan yang tidak mematuhi kumpulan ukuran SKU yang ditentukan.
  • Jenis Sumber Daya yang Diizinkan (Tolak): Menentukan jenis sumber daya yang dapat Anda sebarkan. Efeknya adalah untuk menolak semua sumber daya yang bukan merupakan bagian dari daftar yang telah ditentukan ini.
  • Lokasi yang Diizinkan (Tolak): Membatasi lokasi yang tersedia untuk sumber daya baru. Efeknya digunakan untuk menerapkan persyaratan kepatuhan lokasi geografis Anda.
  • SKU Komputer Virtual yang Diizinkan (Tolak): Menentukan seperangkat SKU komputer virtual yang dapat Anda sebarkan.
  • Menambahkan tag ke sumber daya (Modifikasi): Menerapkan tag yang diperlukan dan nilai defaultnya jika tidak ditentukan oleh permintaan penyebaran.
  • Jenis sumber daya yang tidak diperbolehkan (Tolak): Mencegah daftar jenis sumber daya disebarkan.

Untuk menerapkan definisi kebijakan ini (definisi bawaan dan kustom), Anda perlu menetapkannya. Anda dapat menetapkan salah satu kebijakan ini melalui portal Microsoft Azure, PowerShell, atau Azure CLI.

Evaluasi kebijakan terjadi dengan beberapa tindakan berbeda, seperti penugasan kebijakan atau pembaruan kebijakan. Untuk daftar lengkapnya, lihat Pemicu evaluasi kebijakan.

Untuk mempelajari lebih lanjut struktur definisi kebijakan, tinjau Struktur Definisi Kebijakan.

Parameter kebijakan membantu menyederhanakan manajemen kebijakan Anda dengan mengurangi jumlah definisi kebijakan yang harus Anda buat. Anda dapat menentukan parameter saat membuat definisi kebijakan agar lebih umum. Kemudian Anda dapat menggunakan kembali definisi kebijakan tersebut untuk skenario yang berbeda. Anda melakukannya dengan meneruskan nilai yang berbeda saat menetapkan definisi kebijakan. Misalnya, menentukan satu set lokasi untuk sebuah langganan.

Parameter didefinisikan saat membuat definisi kebijakan. Saat parameter didefinisikan, parameter akan diberi nama dan secara opsional diberi nilai. Misalnya, Anda dapat mendefinisikan parameter untuk kebijakan berjudul lokasi. Kemudian Anda dapat memberikan nilai yang berbeda seperti EastUS atau WestUS saat menetapkan kebijakan.

Untuk informasi selengkapnya tentang parameter kebijakan, lihat Struktur definisi - Parameter.

Definisi inisiatif

Definisi inisiatif adalah kumpulan definisi kebijakan yang disesuaikan untuk mencapai satu tujuan yang menyeluruh. Definisi inisiatif menyederhanakan pengelolaan dan penetapan definisi kebijakan. Mereka menyederhanakan dengan mengelompokkan serangkaian kebijakan sebagai satu item. Misalnya, Anda dapat membuat inisiatif berjudul Aktifkan Pemantauan di Microsoft Defender untuk Cloud, dengan tujuan untuk memantau semua rekomendasi keamanan yang tersedia di instans Microsoft Defender untuk Cloud Anda.

Catatan

SDK, seperti Azure CLI dan Azure PowerShell, menggunakan properti dan parameter bernama PolicySet untuk merujuk ke inisiatif.

Di bawah inisiatif ini, Anda akan memiliki definisi kebijakan seperti:

  • Memantau SQL Database yang tidak terenkripsi di Microsoft Defender untuk Cloud - Untuk memantau database dan server SQL yang tidak terenkripsi.
  • Memantau kerentanan OS di Microsoft Defender untuk Cloud - Untuk memantau server yang tidak memenuhi garis besar yang dikonfigurasi.
  • Memantau Perlindungan Titik Akhir yang hilang di Microsoft Defender untuk Cloud - Untuk memantau server tanpa agen perlindungan titik akhir yang diinstal.

Seperti parameter kebijakan, parameter inisiatif membantu menyederhanakan manajemen inisiatif dengan mengurangi redundansi. Parameter inisiatif adalah parameter yang digunakan oleh definisi kebijakan dalam inisiatif.

Misalnya, ambil skenario di mana Anda memiliki definisi inisiatif - initiativeC, dengan definisi policyA dan policyB yang masing-masing diharapkan memiliki jenis parameter yang berbeda:

Kebijakan Nama parameter Jenis parameter Catatan
policyA allowedLocations array Parameter ini mengharapkan daftar untai (karakter) untuk sebuah nilai karena jenis parameternya telah didefinisikan sebagai array
policyB allowedSingleLocation string Parameter ini mengharapkan satu kata untuk sebuah nilai karena jenis parameternya telah didefinisikan sebagai untai (karakter)

Dalam skenario ini, ketika mendefinisikan parameter inisiatif untuk initiativeC, Anda memiliki tiga opsi:

  • Gunakan parameter definisi kebijakan dalam inisiatif ini: Dalam contoh ini, allowedLocations dan allowedSingleLocation menjadi parameter inisiatif untuk initiativeC.
  • Berikan nilai pada parameter definisi kebijakan di dalam definisi inisiatif ini. Dalam contoh ini, Anda dapat memberikan daftar lokasi untuk parameter policyA yang ada - allowedLocations dan policyB untuk parameternya - allowedSingleLocation. Anda juga dapat memberikan nilai saat menetapkan inisiatif ini.
  • Berikan daftar opsi nilai yang bisa digunakan saat menetapkan inisiatif ini. Ketika Anda menetapkan inisiatif ini, parameter yang diwariskan dari definisi kebijakan di dalam inisiatif, hanya dapat memiliki nilai dari daftar yang telah disediakan ini.

Saat membuat opsi nilai dalam definisi inisiatif, Anda tidak dapat memasukkan nilai yang berbeda selama penugasan inisiatif karena bukan bagian dari daftar.

Untuk mempelajari lebih lanjut struktur definisi inisiatif, tinjau Struktur Definisi Inisiatif.

Penetapan

Penetapan adalah definisi kebijakan atau inisiatif yang telah ditetapkan untuk cakupan tertentu. Rentang cakupan ini bisa dari grup manajemen hingga sumber daya individu. Istilah cakupan mengacu pada semua sumber daya, grup sumber daya, langganan, atau grup manajemen tempat definisi ditetapkan. Penugasan diwariskan oleh semua sumber daya anak. Desain ini berarti bahwa definisi yang diterapkan ke sebuah grup sumber daya juga diterapkan ke sumber daya dalam grup sumber daya tersebut. Namun, Anda dapat mengecualikan sebuah sub cakupan dari penugasan.

Misalnya, pada cakupan langganan, Anda dapat menetapkan definisi yang mencegah pembuatan sumber daya jaringan. Anda dapat mengecualikan grup sumber daya di dalam langganan yang ditujukan untuk infrastruktur jaringan. Anda kemudian memberikan akses ke grup sumber daya jaringan ini kepada pengguna yang Anda percayai dengan pembuatan sumber daya jaringan.

Dalam contoh lain, Anda mungkin ingin menetapkan definisi allowlist atau daftar yang diizinkan pada jenis sumber daya di tingkat grup manajemen. Kemudian Anda menetapkan kebijakan yang lebih permisif (memungkinkan lebih banyak jenis sumber daya) pada grup manajemen anak atau bahkan langsung pada langganan. Namun, contoh ini tidak akan berfungsi karena Azure Policy adalah sistem tolak yang bersifat eksplisit. Sebagai gantinya, Anda harus mengecualikan grup manajemen anak atau langganan dari penugasan tingkat grup manajemen. Kemudian, tetapkan definisi yang lebih permisif pada grup manajemen anak atau pada tingkat langganan. Jika ada penugasan yang mengakibatkan sumber daya ditolak, maka satu-satunya cara untuk mengizinkan sumber dayanya adalah dengan memodifikasi penugasan yang ditolak.

Penetapan kebijakan selalu menggunakan status terbaru dari definisi atau inisiatif yang ditetapkan saat mengevaluasi sumber daya. Jika definisi kebijakan yang sudah ditetapkan diubah, semua penugasan yang ada dari definisi tersebut akan menggunakan logika yang diperbarui saat mengevaluasi.

Untuk informasi selengkapnya tentang mengatur penugasan melalui portal, lihat Membuat penugasan kebijakan untuk mengidentifikasi sumber daya yang tidak sesuai di lingkungan Azure Anda. Langkah-langkah untuk PowerShell dan Azure CLI juga tersedia. Untuk informasi tentang struktur penugasan, lihat Struktur Penugasan.

Jumlah maksimum objek Azure Policy

Ada jumlah maksimum untuk setiap jenis objek untuk Kebijakan Azure. Untuk definisi, entri Cakupan berarti grup manajemen atau langganan. Untuk tugas dan pengecualian, entri Cakupan berarti grup manajemen, langganan, grup sumber daya, atau sumber daya individu.

Di mana Apa Jumlah maksimum
Scope Definisi kebijakan 500
Scope Definisi Inisiatif 200
Penyewa Definisi Inisiatif 2.500
Scope Penetapan kebijakan atau inisiatif 200
Scope Pengecualian 1000
Definisi kebijakan Parameter 20
Definisi inisiatif Kebijakan 1000
Definisi inisiatif Parameter 400
Penetapan kebijakan atau inisiatif Pengecualian (notScopes) 400
Aturan kebijakan Kondisional bertumpuk 512
Tugas remediasi Sumber 50.000
Isi definisi kebijakan, inisiatif, atau permintaan penetapan Byte 1,048,576

Aturan kebijakan memiliki batasan tambahan untuk jumlah kondisi dan kompleksitasnya. Lihat Batasan aturan kebijakan untuk mengetahui detail selengkapnya.

Langkah berikutnya

Sekarang setelah Anda memiliki ringkasan tentang Azure Policy dan beberapa konsep utamanya, berikut adalah langkah-langkah berikutnya yang disarankan: