Mengarsipkan log dan pelaporan tentang pengelolaan pemberian izin di Azure Monitor

ID Microsoft Entra menyimpan peristiwa audit hingga 30 hari di log audit. Namun, Anda dapat menyimpan data audit lebih lama dari periode retensi default, yang diuraikan dalam Berapa lama MICROSOFT Entra ID menyimpan data pelaporan?, dengan merutekannya ke akun Azure Storage atau menggunakan Azure Monitor. Anda kemudian dapat menggunakan buku kerja dan kueri kustom serta laporan pada data ini.

Mengonfigurasi ID Microsoft Entra untuk menggunakan Azure Monitor

Tip

Langkah-langkah dalam artikel ini mungkin sedikit berbeda berdasarkan portal tempat Anda memulai.

Sebelum menggunakan buku kerja Azure Monitor, Anda harus mengonfigurasi ID Microsoft Entra untuk mengirim salinan log auditnya ke Azure Monitor.

Pengarsipan log audit Microsoft Entra mengharuskan Anda memiliki Azure Monitor dalam langganan Azure. Anda dapat membaca selengkapnya tentang prasyarat dan perkiraan biaya penggunaan Azure Monitor di log aktivitas Microsoft Entra di Azure Monitor.

Peran prasyarat: Administrator Global

  1. Masuk ke pusat admin Microsoft Entra sebagai Administrator Global. Pastikan Anda memiliki akses ke grup sumber daya yang berisi ruang kerja Azure Monitor.

  2. Telusuri pengaturan Pemantauan Identitas>& Diagnostik kesehatan.>

  3. Periksa apakah sudah ada pengaturan untuk mengirim log audit ke ruang kerja tersebut.

  4. Jika belum ada pengaturan, pilih Tambahkan pengaturan diagnostik. Gunakan instruksi dalam Mengintegrasikan log Microsoft Entra dengan log Azure Monitor untuk mengirim log audit Microsoft Entra ke ruang kerja Azure Monitor.

    Diagnostics settings pane

  5. Setelah log dikirim ke Azure Monitor, pilih ruang kerja Analitik Log, dan pilih ruang kerja yang berisi log audit Microsoft Entra.

  6. Pilih Penggunaan dan perkiraan biaya dan pilih Retensi Data. Ubah penggeser ke jumlah hari yang Anda inginkan untuk menyimpan data agar memenuhi persyaratan audit Anda.

    Log Analytics workspaces pane

  7. Kemudian, untuk melihat rentang tanggal yang disimpan di ruang kerja, Anda dapat menggunakan buku kerja Rentang Tanggal Log yang Diarsipkan:

    1. Telusuri ke Pemantauan Identitas>& Buku Kerja kesehatan.>

    2. Perluas bagian Pemecahan Masalah Microsoft Entra, dan pilih Rentang Tanggal Log yang Diarsipkan.

Melihat kejadian untuk paket akses

Untuk melihat kejadian untuk paket akses, Anda harus memiliki akses ke ruang kerja monitor Azure yang mendasari (lihat Mengelola akses ke data log dan ruang kerja di Azure Monitor untuk informasi) dan dalam salah satu peran berikut:

  • Administrator global
  • Administrator keamanan
  • Pembaca keamanan
  • Pembaca laporan
  • Administrator aplikasi

Gunakan prosedur berikut untuk melihat kejadian:

  1. Di pusat admin Microsoft Entra, pilih Identitas lalu pilih Buku Kerja. Jika Anda hanya memiliki satu langganan, pindahkan lanjutkan ke langkah 3.

  2. Jika Anda memiliki beberapa langganan, pilih langganan yang berisi ruang kerja.

  3. Pilih buku kerja bernama Aktivitas Paket Akses.

  4. Dalam buku kerja tersebut, pilih rentang waktu (ubah ke Semua jika tidak yakin), dan pilih ID paket akses dari daftar tarik-turun semua paket akses yang memiliki aktivitas selama rentang waktu tersebut. Kejadian yang terkait dengan paket akses yang terjadi selama rentang waktu yang dipilih akan ditampilkan.

    View access package events

    Setiap baris mencakup waktu, ID paket akses, nama operasi, id objek, nama prinsipal pengguna, dan nama tampilan pengguna yang memulai operasi. Rincian tambahan disertakan dalam JSON.

  5. Jika Anda ingin melihat apakah ada perubahan pada penetapan peran aplikasi untuk aplikasi yang bukan karena penetapan paket akses, seperti oleh administrator global yang secara langsung menetapkan pengguna ke peran aplikasi, maka Anda dapat memilih buku kerja bernama Aktivitas penetapan peran aplikasi.

    View app role assignments

Membuat kueri Azure Monitor kustom menggunakan pusat admin Microsoft Entra

Anda dapat membuat kueri Anda sendiri pada peristiwa audit Microsoft Entra, termasuk peristiwa pengelolaan pemberian hak.

  1. Di Identitas pusat admin Microsoft Entra, pilih Log di bawah bagian Pemantauan di menu navigasi kiri untuk membuat halaman kueri baru.

  2. Ruang kerja Anda harus diperlihatkan di sebelah kiri atas halaman kueri. Jika Anda memiliki beberapa ruang kerja Azure Monitor, dan ruang kerja yang Anda gunakan untuk menyimpan peristiwa audit Microsoft Entra tidak ditampilkan, pilih Pilih Cakupan. Lalu, pilih langganan dan ruang kerja yang benar.

  3. Selanjutnya, di area teks kueri, hapus string "cari *" dan ganti dengan kueri berikut:

    AuditLogs | where Category == "EntitlementManagement"
    
  4. Lalu pilih Jalankan.

    Click Run to start query

Tabel memperlihatkan peristiwa log audit untuk pengelolaan pemberian hak dari satu jam terakhir secara default. Anda dapat mengubah pengaturan "Rentang waktu" untuk melihat kejadian lama. Namun, mengubah pengaturan ini hanya akan menampilkan peristiwa yang terjadi setelah ID Microsoft Entra dikonfigurasi untuk mengirim peristiwa ke Azure Monitor.

Jika Anda ingin mengetahui acara audit terlama dan terbaru yang diadakan di Azure Monitor, gunakan kueri berikut:

AuditLogs | where TimeGenerated > ago(3653d) | summarize OldestAuditEvent=min(TimeGenerated), NewestAuditEvent=max(TimeGenerated) by Type

Untuk informasi selengkapnya tentang kolom yang disimpan untuk peristiwa audit di Azure Monitor, lihat Menginterpretasikan skema log audit Microsoft Entra di Azure Monitor.

Membuat kueri Azure Monitor kustom menggunakan Azure PowerShell

Anda dapat mengakses log melalui PowerShell setelah mengonfigurasi ID Microsoft Entra untuk mengirim log ke Azure Monitor. Kemudian, kirim kueri dari skrip atau baris perintah PowerShell, tanpa perlu menjadi Administrator Global di penyewa.

Memastikan pengguna atau perwakilan layanan memiliki penetapan peran yang benar

Pastikan Anda, pengguna atau perwakilan layanan yang akan mengautentikasi ke ID Microsoft Entra, berada dalam peran Azure yang sesuai di ruang kerja Analitik Log. Opsi peran adalah Pembaca Analitik Log atau Kontributor Analitik Log. Jika Anda sudah berada di salah satu peran tersebut, lompati ke Mengambil ID Analitik Log dengan satu langganan Azure.

Untuk mengatur penetapan peran dan membuat kueri, lakukan langkah-langkah berikut:

  1. Di pusat admin Microsoft Entra, temukan ruang kerja Analitik Log.

  2. Pilih Kontrol Akses (IAM) .

  3. Lalu pilih Tambahkan untuk menambahkan penetapan peran.

    Add a role assignment

Install Azure PowerShell Module

Setelah Anda memiliki penetapan peran yang sesuai, luncurkan PowerShell, lalu instal modul Azure PowerShell (jika Anda belum melakukannya), dengan mengetik:

install-module -Name az -allowClobber -Scope CurrentUser

Sekarang Anda siap untuk mengautentikasi ke ID Microsoft Entra, dan mengambil ID ruang kerja Analitik Log yang Anda kueri.

Mengambil ID Analitik Log dengan satu langganan Azure

Jika Anda hanya memiliki satu langganan Azure, dan satu ruang kerja Log Analytics, ketik yang berikut ini untuk mengautentikasi ke ID Microsoft Entra, menyambungkan ke langganan tersebut, dan mengambil ruang kerja tersebut:

Connect-AzAccount
$wks = Get-AzOperationalInsightsWorkspace

Mengambil ID Analitik Log dengan beberapa langganan Azure

Get-AzOperationalInsightsWorkspace beroperasi dalam satu langganan sekaligus. Jadi, jika Anda memiliki beberapa langganan Azure, Anda ingin memastikan Anda tersambung ke langganan yang memiliki ruang kerja Analitik Log dengan log Microsoft Entra.

Cmdlet berikut menampilkan daftar langganan dan menemukan ID langganan yang memiliki ruang kerja Analitik Log:

Connect-AzAccount
$subs = Get-AzSubscription
$subs | ft

Anda dapat mengautentikasi ulang dan mengaitkan sesi PowerShell Anda ke langganan tersebut menggunakan perintah seperti Connect-AzAccount –Subscription $subs[0].id. Untuk mempelajari selengkapnya tentang cara mengautentikasi ke Azure dari PowerShell, termasuk secara non-interaktif, lihat Masuk dengan Azure PowerShell.

Jika Anda memiliki beberapa ruang kerja Analitik Log dalam langganan tersebut, maka cmdlet Get-AzOperationalInsightsWorkspace mengembalikan daftar ruang kerja. Kemudian Anda dapat menemukan yang memiliki log Microsoft Entra. Bidang CustomerId yang dikembalikan oleh cmdlet ini sama dengan nilai "ID Ruang Kerja" yang ditampilkan di pusat admin Microsoft Entra di gambaran umum ruang kerja Analitik Log.

$wks = Get-AzOperationalInsightsWorkspace
$wks | ft CustomerId, Name

Mengirim kueri ke ruang kerja Analitik Log

Terakhir, setelah Anda memiliki ruang kerja yang teridentifikasi, Anda dapat menggunakan Invoke-AzOperationalInsightsQuery untuk mengirim kueri Kusto ke ruang kerja tersebut. Kueri ini ditulis dalam bahasa pemrogram kueri Kusto.

Misalnya, Anda dapat mengambil rentang tanggal rekaman kejadian audit dari ruang kerja Analitik Log dengan cmdlet PowerShell untuk mengirim kueri seperti:

$aQuery = "AuditLogs | where TimeGenerated > ago(3653d) | summarize OldestAuditEvent=min(TimeGenerated), NewestAuditEvent=max(TimeGenerated) by Type"
$aResponse = Invoke-AzOperationalInsightsQuery -WorkspaceId $wks[0].CustomerId -Query $aQuery
$aResponse.Results |ft

Anda juga dapat mengambil kejadian pengelolaan pemberian hak menggunakan kueri seperti:

$bQuery = 'AuditLogs | where Category == "EntitlementManagement"'
$bResponse = Invoke-AzOperationalInsightsQuery -WorkspaceId $wks[0].CustomerId -Query $Query
$bResponse.Results |ft 

Menggunakan filter kueri

Anda bisa menyertakan TimeGenerated bidang untuk mencakup kueri ke rentang waktu tertentu. Misalnya, untuk mengambil peristiwa log audit untuk kebijakan penetapan paket akses pengelolaan pemberian hak yang dibuat atau diperbarui dalam 90 hari terakhir, Anda dapat menyediakan kueri yang menyertakan bidang ini serta kategori dan jenis operasi.

AuditLogs | 
where TimeGenerated > ago(90d) and Category == "EntitlementManagement" and Result == "success" and (AADOperationType == "CreateEntitlementGrantPolicy" or AADOperationType == "UpdateEntitlementGrantPolicy") | 
project ActivityDateTime,OperationName, InitiatedBy, AdditionalDetails, TargetResources

Untuk peristiwa audit beberapa layanan seperti pengelolaan pemberian hak, Anda juga dapat memperluas dan memfilter properti sumber daya yang terpengaruh yang diubah. Misalnya, Anda hanya dapat melihat catatan log audit tersebut untuk kebijakan penetapan paket akses yang dibuat atau diperbarui, yang tidak memerlukan persetujuan bagi pengguna untuk menambahkan tugas.

AuditLogs | 
where TimeGenerated > ago(90d) and Category == "EntitlementManagement" and Result == "success" and (AADOperationType == "CreateEntitlementGrantPolicy" or AADOperationType == "UpdateEntitlementGrantPolicy") | 
mv-expand TargetResources | 
where TargetResources.type == "AccessPackageAssignmentPolicy" | 
project ActivityDateTime,OperationName,InitiatedBy,PolicyId=TargetResources.id,PolicyDisplayName=TargetResources.displayName,MP1=TargetResources.modifiedProperties | 
mv-expand MP1 | 
where (MP1.displayName == "IsApprovalRequiredForAdd" and MP1.newValue == "\"False\"") |
order by ActivityDateTime desc 

Langkah berikutnya