Yönetilen HSM günlük kaydı

Bir veya daha fazla Yönetilen HSM oluşturduktan sonra HSM'lerinize nasıl ve ne zaman erişildiğini ve kim tarafından erişildiğini izlemek isteyebilirsiniz. Bu işlemi, sağladığınız bir Azure depolama hesabına bilgi kaydeden günlüğü etkinleştirerek yapabilirsiniz. Belirtilen depolama hesabınız için insights-logs-auditevent adlı yeni bir kapsayıcı otomatik olarak oluşturulur. Bu depolama hesabını birden çok Yönetilen HSM için günlükleri toplamak için kullanabilirsiniz.

Yönetilen HSM işleminden 10 dakika (en fazla) sonra günlük bilgilerinize erişebilirsiniz. Çoğu durumda, bundan daha hızlı olacaktır. Depolama hesabınızdaki günlüklerinizi yönetmek size bağlıdır:

  • Günlüklerinize erişebilecek kişileri kısıtlayarak güvenliklerini sağlamak için standart Azure erişim denetimi yöntemlerini kullanın.
  • Artık depolama hesabınızda tutmak istemediğiniz günlükleri silin.

Yönetilen HSM günlüğünü kullanmaya başlamanıza yardımcı olması için bu öğreticiyi kullanın. Bir depolama hesabı oluşturacak, günlüğe kaydetmeyi etkinleştirip toplanan günlük bilgilerini yorumlayacaksınız.

Not

Bu öğretici, Yönetilen HSM'leri veya anahtarları oluşturma yönergelerini içermez. Bu makalede tanılama günlüğünü güncelleştirmek için Azure CLI yönergeleri sağlanır.

Önkoşullar

Bu makaledeki adımları tamamlamak için aşağıdaki öğelere sahip olmanız gerekir:

Azure Cloud Shell

Azure, tarayıcınız aracılığıyla kullanabileceğiniz etkileşimli bir kabuk ortamı olan Azure Cloud Shell'i barındırıyor. Azure hizmetleriyle çalışmak için Cloud Shell ile Bash veya PowerShell kullanabilirsiniz. Yerel ortamınıza herhangi bir şey yüklemek zorunda kalmadan bu makaledeki kodu çalıştırmak için Cloud Shell önceden yüklenmiş komutlarını kullanabilirsiniz.

Azure Cloud Shell'i başlatmak için:

Seçenek Örnek/Bağlantı
Kodun veya komut bloğunun sağ üst köşesindeki Deneyin'i seçin. Deneyin seçildiğinde kod veya komut otomatik olarak Cloud Shell'e kopyalanmaz. Azure Cloud Shell için Deneyin örneğini gösteren ekran görüntüsü.
https://shell.azure.comadresine gidin veya Cloud Shell'i tarayıcınızda açmak için Cloud Shell'i Başlat düğmesini seçin. Azure Cloud Shell'i başlatma düğmesi.
Azure portalının sağ üst kısmındaki menü çubuğunda Cloud Shell düğmesini seçin. Azure portalında Cloud Shell düğmesini gösteren ekran görüntüsü

Azure Cloud Shell'i kullanmak için:

  1. Cloud Shell'i başlatın.

  2. Kodu veya komutu kopyalamak için kod bloğundaki (veya komut bloğundaki) Kopyala düğmesini seçin.

  3. Windows ve Linux'ta Ctrl+Shift V'yi seçerek veya macOS üzerinde Cmd+Shift++V'yi seçerek kodu veya komutu Cloud Shell oturumuna yapıştırın.

  4. Kodu veya komutu çalıştırmak için Enter'ı seçin.

Azure aboneliğinize bağlanma

Anahtar günlüğünü ayarlamanın ilk adımı, Azure CLI'yi günlüğe kaydetmek istediğiniz Yönetilen HSM'ye yöneltmektir.

az login

CLI aracılığıyla oturum açma seçenekleri hakkında daha fazla bilgi için Azure CLI ile oturum açma

Yönetilen HSM'nizi oluşturmak için kullandığınız aboneliği belirtmeniz gerekebilir. Hesabınızın aboneliklerini görmek için aşağıdaki komutu girin:

Yönetilen HSM ve depolama hesabını tanımlama

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

Günlü kaydını etkinleştir

Yönetilen HSM için günlüğe kaydetmeyi etkinleştirmek için az monitor diagnostic-settings create komutunu, yeni depolama hesabı ve Yönetilen HSM için oluşturduğumuz değişkenlerle birlikte kullanın. Ayrıca -Enabled bayrağını $true ve kategoriyi AuditEvent (Yönetilen HSM günlüğü için tek kategori) olarak ayarlayacağız:

Bu çıkış, yönetilen HSM'niz için günlüğe kaydetmenin etkinleştirildiğini onaylar ve bilgileri depolama hesabınıza kaydeder.

İsteğe bağlı olarak, eski günlüklerin otomatik olarak silinmesi için günlükleriniz için bir bekletme ilkesi ayarlayabilirsiniz. Örneğin, -RetentionEnabled bayrağını $true olarak ayarlayarak bekletme ilkesini ayarlayın ve 90 günden eski günlüklerin otomatik olarak silinmesi için -RetentionInDays parametresini 90 olarak ayarlayın.

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

Günlüğe kaydedilenler:

  • Erişim izinleri, sistem hataları, güvenlik duvarı blokları veya hatalı istekler sonucunda başarısız istekler de dahil olmak üzere tüm kimliği doğrulanmış REST API istekleri.
  • Yönetilen HSM kaynağının kendisinde, etiketler gibi öznitelikleri oluşturma, silme ve güncelleştirme dahil yönetilen düzlem işlemleri.
  • Başlatma ve indirme, kurtarmayı başlatma, karşıya yükleme gibi Güvenlik Etki Alanı ile ilgili işlemler
  • Tam HSM yedekleme, geri yükleme ve seçmeli geri yükleme işlemleri
  • Rol atamalarını oluşturma/görüntüleme/silme ve özel rol tanımlarını oluşturma/görüntüleme/silme gibi rol yönetimi işlemleri
  • Anahtarlar üzerindeki işlemler, örneğin:
    • Anahtarları oluşturma, değiştirme veya silme.
    • İmzalama, doğrulama, şifreleme, şifre çözme, anahtarları sarmalama ve açma, anahtarları listeleme.
    • Anahtar yedekleme, geri yükleme, temizleme
    • Anahtar sürümü
  • 404 yanıtına neden olan geçersiz yollar.

Günlüklerinize erişme

Yönetilen HSM günlükleri, sağladığınız depolama hesabında insights-logs-auditevent kapsayıcısında depolanır. Günlükleri görüntülemek için blobları indirmeniz gerekir. Azure Depolama hakkında bilgi için bkz. Azure CLI ile blob oluşturma, indirme ve listeleme.

Tek tek bloblar metin olarak depolanır ve JSON olarak biçimlendirilir. Şimdi örnek bir günlük girdisine bakalım. Aşağıdaki örnekte, yönetilen HSM'ye tam yedekleme oluşturma isteği gönderildiğinde günlük girişi gösterilmektedir.

[
  {
    "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"
  }
]

Sonraki adımlar

  • Yönetilen HSM sağlamak ve kullanmak için en iyi yöntemler hakkında bilgi edinin
  • Yönetilen HSM'yi Yedekleme ve Geri Yükleme hakkında bilgi edinin