Pengelogan HSM terkelola

Setelah membuat satu atau beberapa HSM Terkelola, Anda mungkin ingin memantau bagaimana dan kapan HSM Anda diakses, dan oleh siapa. Anda dapat melakukan ini dengan mengaktifkan pengelogan untuk Azure Key Vault, yang menyimpan informasi di akun Azure storage yang Anda sediakan. Kontainer baru yang bernama insights-logs-auditevent secara otomatis dibuat untuk akun penyimpanan yang Anda tentukan. Anda dapat menggunakan akun penyimpanan yang sama ini untuk mengumpulkan log untuk beberapa HSM Terkelola.

Anda dapat mengakses informasi pengelogan Anda 10 menit (paling lama) setelah operasi HSM Terkelola. Dalam kebanyakan kasus, akan lebih cepat dari ini. Terserah Anda untuk mengelola log di akun penyimpanan Anda:

  • Gunakan metode kontrol akses Azure standar untuk mengamankan log dengan membatasi siapa yang bisa mengaksesnya.
  • Hapus log yang tidak ingin Anda simpan lagi di akun penyimpanan.

Gunakan tutorial ini untuk membantu Anda memulai pembuatan log HSM terkelola. Anda akan membuat akun penyimpanan, mengaktifkan pengelogan, dan menginterpretasikan informasi log yang dikumpulkan.

Catatan

Tutorial ini tidak mencakup instruksi tentang cara membuat HSM Terkelola atau kunci. Artikel ini menyediakan instruksi CLI Azure untuk memperbarui pembuatan log diagnostik.

Prasyarat

Untuk menyelesaikan langkah-langkah dalam artikel ini, Anda harus memiliki item berikut:

Azure Cloud Shell

Azure meng-hosting Azure Cloud Shell, lingkungan shell interaktif yang dapat Anda gunakan melalui browser. Anda dapat menggunakan Bash atau PowerShell dengan Cloud Shell untuk bekerja dengan layanan Azure. Anda dapat menggunakan perintah Cloud Shell yang telah diinstal sebelumnya untuk menjalankan kode dalam artikel ini tanpa harus menginstal apa-apa di lingkungan lokal Anda.

Untuk memulai Azure Cloud Shell:

Opsi Contoh/Tautan
Pilih Coba di pojok kanan atas blok kode atau perintah. Memilih Coba tidak otomatis menyalin kode atau perintah ke Cloud Shell. Cuplikan layar yang menunjukkan contoh Try It for Azure Cloud Shell.
Buka https://shell.azure.com, atau pilih tombol Luncurkan Cloud Shell untuk membuka Cloud Shell di browser Anda. Tombol untuk meluncurkan Azure Cloud Shell.
Pilih tombol Cloud Shell pada bilah menu di kanan atas di portal Microsoft Azure. Cuplikan layar yang menunjukkan tombol Cloud Shell di portal Azure

Untuk menggunakan Azure Cloud Shell:

  1. Mulai Cloud Shell.

  2. Pilih tombol Salin pada blok kode (atau blok perintah) untuk menyalin kode atau perintah.

  3. Tempel kode atau perintah ke dalam sesi Cloud Shell dengan memilih Ctrl+Shift+V di Windows dan Linux, atau dengan memilih Cmd+Shift+V di macOS.

  4. Pilih Masukkan untuk menjalankan kode atau perintah.

Menyambungkan ke langganan Azure Anda

Langkah pertama dalam menyiapkan pengelogan kunci adalah mengarahkan Azure CLI ke HSM Terkelola yang ingin Anda catat.

az login

Untuk informasi selengkapnya tentang opsi masuk melalui CLI, lihat masuk dengan Azure CLI

Anda mungkin harus menentukan langganan yang Anda gunakan untuk membuat HSM Terkelola Anda. Masukkan perintah berikut untuk melihat langganan untuk akun Anda:

Identifikasi HSM dan akun penyimpanan yang dikelola

hsmresource=$(az keyvault show --hsm-name ContosoMHSM --query id -o tsv)
storageresource=$(az storage account show --name ContosoMHSMLogs --query id -o tsv)

Aktifkan pencatatan log

Untuk mengaktifkan pengelogan untuk HSM Terkelola, gunakan perintah buat pengaturan diagnostik monitor az, bersama dengan variabel yang kami buat untuk akun penyimpanan baru dan HSM terkelola. Kami juga akan mengatur flag -Enabled ke $true dan mengatur kategori ke AuditEvent (satu-satunya kategori untuk pembuatan log HSM terkelola):

Output ini mengonfirmasi bahwa pengelogan sekarang diaktifkan untuk HSM Terkelola Anda, dan itu akan menyimpan informasi ke akun penyimpanan Anda.

Secara opsional, Anda dapat menetapkan kebijakan penyimpanan untuk log Anda sedemikian rupa sehingga log yang lebih lama dihapus secara otomatis. Misalnya, tetapkan kebijakan penyimpanan dengan mengatur bendera -RetentionEnabled ke $true, dan atur parameter -RetentionInDays ke 90 sehingga log yang lebih lama dari 90 hari akan dihapus secara otomatis.

az monitor diagnostic-settings create --name ContosoMHSM-Diagnostics --resource $hsmresource --logs '[{"category": "AuditEvent","enabled": true}]' --storage-account $storageresource

Apa yang di-log:

  • Semua permintaan REST API yang diautentikasi, termasuk permintaan yang gagal sebagai akibat dari izin akses, kesalahan sistem, blok firewall, atau permintaan buruk.
  • Operasi pesawat terkelola pada sumber daya HSM terkelola itu sendiri, termasuk pembuatan, penghapusan, dan memperbarui atribut seperti tag.
  • Operasi terkait Domain Keamanan seperti menginisialisasi & menginisialisasi pemulihan, mengunggah
  • Operasi pencadangan, pemulihan, dan pemulihan selektif HSM penuh
  • Operasi manajemen peran seperti membuat/melihat/menghapus penetapan peran dan membuat/melihat/menghapus definisi peran kustom
  • Operasi pada kunci, termasuk:
    • Membuat, mengubah, atau menghapus kunci.
    • Menandatangani, memverifikasi, mengenkripsi, mendekripsi, membungkus, dan membongkar kunci, mencantumkan kunci.
    • Pencadangan kunci, pemulihan, hapus menyeluruh
    • Rilis kunci
  • Jalur tidak valid yang menghasilkan respons 404.

Mengakses log Anda

Log HSM terkelola disimpan dalam kontainer insights-logs-auditevent di akun penyimpanan yang Anda sediakan. Untuk melihat log, Anda harus mengunduh blob. Untuk informasi tentang Azure Storage, lihat Membuat, mengunduh, dan mencantumkan blob dengan CLI Azure.

Blob individual disimpan sebagai teks, diformat sebagai blob JSON. Mari kita lihat contoh entri log. Contoh di bawah ini menunjukkan entri log ketika permintaan untuk membuat cadangan lengkap dikirim ke HSM terkelola.

[
  {
    "TenantId": "{tenant-id}",
    "time": "2020-08-31T19:52:39.763Z",
    "resourceId": "/SUBSCRIPTIONS/{subscription-id}/RESOURCEGROUPS/CONTOSORESOURCEGROUP/PROVIDERS/MICROSOFT.KEYVAULT/MANAGEDHSMS/CONTOSOMHSM",
    "operationName": "BackupCreate",
    "operationVersion": "7.0",
    "category": "AuditEvent",
    "resultType": "Success",
    "properties": {
        "PoolType": "M-HSM",
        "sku_Family": "B",
        "sku_Name": "Standard_B1"
    },
    "durationMs": 488,
    "callerIpAddress": "X.X.X.X",
    "identity": "{\"claim\":{\"appid\":\"{application-id}\",\"http_schemas_microsoft_com_identity\":{\"claims\":{\"objectidentifier\":\"{object-id}\"}},\"http_schemas_xmlsoap_org_ws_2005_05_identity\":{\"claims\":{\"upn\":\"admin@contoso.com\"}}}}",
    "clientInfo": "azsdk-python-core/1.7.0 Python/3.8.2 (Linux-4.19.84-microsoft-standard-x86_64-with-glibc2.29) azsdk-python-azure-keyvault/7.2",
    "correlationId": "8806614c-ebc3-11ea-9e9b-00155db778ad",
    "subnetId": "(unknown)",
    "httpStatusCode": 202,
    "PoolName": "mhsmdemo",
    "requestUri": "https://ContosoMHSM.managedhsm.azure.net/backup",
    "resourceGroup": "ContosoResourceGroup",
    "resourceProvider": "MICROSOFT.KEYVAULT",
    "resource": "ContosoMHSM",
    "resourceType": "managedHSMs"
  }
]

Langkah berikutnya