Włączanie rejestrowania Key Vault

Po utworzeniu co najmniej jednego magazynu kluczy warto monitorować sposób i czas uzyskiwania dostępu do magazynów kluczy oraz przez kogo. Aby uzyskać szczegółowe informacje na temat funkcji, zobacz Rejestrowanie w usłudze Azure Key Vault.

Co jest rejestrowane:

  • Wszystkie uwierzytelnione żądania interfejsu API REST, w tym żądania nieudane w wyniku uprawnień dostępu, błędów systemowych lub złych żądań.
  • Operacje na samym magazynie kluczy, w tym tworzenie, usuwanie, ustawianie zasad dostępu magazynu kluczy i aktualizowanie atrybutów magazynu kluczy, takich jak tagi.
  • Operacje na kluczach i wpisach tajnych w magazynie kluczy, w tym:
    • Tworzenie, modyfikowanie lub usuwanie tych kluczy lub wpisów tajnych.
    • Podpisywanie, weryfikowanie, szyfrowanie, odszyfrowywanie, opakowywanie i rozpakuj klucze, pobieranie wpisów tajnych oraz wyświetlanie kluczy i wpisów tajnych (i ich wersji).
  • Nieuwierzytelnione żądania, które powodują uzyskanie odpowiedzi 401. Przykłady to żądania, które nie mają tokenu elementu nośnego, są źle sformułowane lub wygasły lub mają nieprawidłowy token.
  • Azure Event Grid zdarzenia powiadomień dla następujących warunków: wygasłe, bliskie wygaśnięcie i zmienione zasady dostępu magazynu (nowe zdarzenie wersji nie jest rejestrowane). Zdarzenia są rejestrowane nawet wtedy, gdy w magazynie kluczy jest tworzona subskrypcja zdarzeń. Aby uzyskać więcej informacji, zobacz Azure Key Vault jako źródło usługi Event Grid.

Wymagania wstępne

Do ukończenia tego samouczka potrzebny będzie magazyn kluczy platformy Azure. Nowy magazyn kluczy można utworzyć przy użyciu jednej z następujących metod:

Będziesz również potrzebować miejsca docelowego dla dzienników. Miejsce docelowe może być istniejącym lub nowym kontem usługi Azure Storage i/lub obszarem roboczym usługi Log Analytics.

Możesz utworzyć nowe konto usługi Azure Storage przy użyciu jednej z następujących metod:

Nowy obszar roboczy usługi Log Analytics można utworzyć przy użyciu jednej z następujących metod:

Nawiązywanie połączenia z subskrypcją Key Vault

Pierwszym krokiem konfigurowania rejestrowania kluczy jest nawiązanie połączenia z subskrypcją zawierającą magazyn kluczy, jeśli masz wiele subskrypcji skojarzonych z kontem.

Za pomocą interfejsu wiersza polecenia platformy Azure możesz wyświetlić wszystkie subskrypcje przy użyciu polecenia az account list . Następnie nawiąż połączenie z jednym za pomocą polecenia az account set :

az account list

az account set --subscription "<subscriptionID>"

Za pomocą Azure PowerShell można najpierw wyświetlić listę subskrypcji przy użyciu polecenia cmdlet Get-AzSubscription. Następnie nawiąż połączenie z jednym za pomocą polecenia cmdlet Set-AzContext :

Get-AzSubscription

Set-AzContext -SubscriptionId "<subscriptionID>"

Uzyskiwanie identyfikatorów zasobów

Aby włączyć rejestrowanie w magazynie kluczy, potrzebny będzie identyfikator zasobu magazynu kluczy i miejsce docelowe (konto usługi Azure Storage lub Log Analytics).

Jeśli nie pamiętasz nazwy magazynu kluczy, możesz użyć polecenia az keyvault list interfejsu wiersza polecenia platformy Azure lub polecenia cmdlet Azure PowerShell Get-AzKeyVault, aby go znaleźć.

Użyj nazwy magazynu kluczy, aby znaleźć jego identyfikator zasobu. Za pomocą interfejsu wiersza polecenia platformy Azure użyj polecenia az keyvault show .

az keyvault show --name "<your-unique-keyvault-name>"

W przypadku Azure PowerShell użyj polecenia cmdlet Get-AzKeyVault.

Get-AzKeyVault -VaultName "<your-unique-keyvault-name>"

Identyfikator zasobu magazynu kluczy ma następujący format: "/subscriptions/your-subscription-ID/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/your-unique-keyvault-name. Zanotuj go w następnym kroku.

Włącz rejestrowanie

Rejestrowanie dla Key Vault można włączyć przy użyciu interfejsu wiersza polecenia platformy Azure, Azure PowerShell lub Azure Portal.

Interfejs wiersza polecenia platformy Azure

Użyj polecenia az monitor diagnostic-settings create interfejsu wiersza polecenia platformy Azure, identyfikatora konta magazynu i identyfikatora zasobu magazynu kluczy w następujący sposób:

az monitor diagnostic-settings create --storage-account "<storage-account-id>" --resource "<key-vault-resource-id>" --name "Key vault logs" --logs '[{"category": "AuditEvent","enabled": true}]' --metrics '[{"category": "AllMetrics","enabled": true}]'

Opcjonalnie można ustawić zasady przechowywania dzienników, aby starsze dzienniki zostały automatycznie usunięte po upływie określonego czasu. Można na przykład ustawić zasady przechowywania, które automatycznie usuwają dzienniki starsze niż 90 dni.

Za pomocą interfejsu wiersza polecenia platformy Azure użyj polecenia az monitor diagnostic-settings update .

az monitor diagnostic-settings update --name "Key vault retention policy" --resource "<key-vault-resource-id>" --set retentionPolicy.days=90

Uzyskiwanie dostępu do dzienników

Dzienniki Key Vault znajdują się w kontenerze insights-logs-auditevent na podanym koncie magazynu. Aby wyświetlić dzienniki, musisz pobrać obiekty blob.

Najpierw wyświetl listę wszystkich obiektów blob w kontenerze. Za pomocą interfejsu wiersza polecenia platformy Azure użyj polecenia az storage blob list .

az storage blob list --account-name "<your-unique-storage-account-name>" --container-name "insights-logs-auditevent"

W przypadku Azure PowerShell użyj polecenia Get-AzStorageBlob. Aby wyświetlić listę wszystkich obiektów blob w tym kontenerze, wprowadź:

Get-AzStorageBlob -Container "insights-logs-auditevent" -Context $sa.Context

W danych wyjściowych polecenia interfejsu wiersza polecenia platformy Azure lub polecenia cmdlet Azure PowerShell widać, że nazwy obiektów blob są w następującym formacie: resourceId=<ARM resource ID>/y=<year>/m=<month>/d=<day of month>/h=<hour>/m=<minute>/filename.json. Wartości daty i godziny używają uniwersalnego czasu koordynowanego.

Ponieważ można używać tego samego konta magazynu do zbierania dzienników dla wielu zasobów, pełny identyfikator zasobu w nazwie obiektu blob jest przydatny do uzyskiwania dostępu do obiektów blob lub pobierania tylko potrzebnych obiektów blob.

Najpierw pobierz wszystkie obiekty blob. Za pomocą interfejsu wiersza polecenia platformy Azure użyj polecenia az storage blob download , przekaż nazwy obiektów blob oraz ścieżkę do pliku, w którym chcesz zapisać wyniki.

az storage blob download --container-name "insights-logs-auditevent" --file <path-to-file> --name "<blob-name>" --account-name "<your-unique-storage-account-name>"

W przypadku Azure PowerShell użyj polecenia cmdlet Get-AzStorageBlob, aby uzyskać listę obiektów blob. Następnie należy przekazać listę do polecenia cmdlet Get-AzStorageBlobContent , aby pobrać dzienniki do wybranej ścieżki.

$blobs = Get-AzStorageBlob -Container "insights-logs-auditevent" -Context $sa.Context | Get-AzStorageBlobContent -Destination "<path-to-file>"

Po uruchomieniu tego drugiego polecenia cmdlet w programie PowerShell / ogranicznik w nazwach obiektów blob tworzy pełną strukturę folderów w folderze docelowym. Ta struktura służy do pobierania i przechowywania obiektów blob jako plików.

Aby selektywnie pobierać obiekty blob, użyj symboli wieloznacznych. Przykład:

  • Jeśli masz wiele magazynów kluczy i chcesz pobrać dzienniki dla tylko jednego magazynu kluczy o nazwie CONTOSOKEYVAULT3:

    Get-AzStorageBlob -Container "insights-logs-auditevent" -Context $sa.Context -Blob '*/VAULTS/CONTOSOKEYVAULT3
    
  • Jeśli masz wiele grup zasobów i chcesz pobrać dzienniki dla tylko jednej grupy zasobów, użyj parametru -Blob '*/RESOURCEGROUPS/<resource group name>/*':

    Get-AzStorageBlob -Container "insights-logs-auditevent" -Context $sa.Context -Blob '*/RESOURCEGROUPS/CONTOSORESOURCEGROUP3/*'
    
  • Jeśli chcesz pobrać wszystkie dzienniki w miesiącu stycznia 2019 r., użyj polecenia -Blob '*/year=2019/m=01/*':

    Get-AzStorageBlob -Container "insights-logs-auditevent" -Context $sa.Context -Blob '*/year=2016/m=01/*'
    

Korzystanie z dzienników usługi Azure Monitor

Aby przejrzeć dzienniki Key VaultAuditEvent, możesz użyć rozwiązania Key Vault w dziennikach usługi Azure Monitor. W dziennikach usługi Azure Monitor zapytania dzienników są używane do analizowania danych i uzyskiwania potrzebnych informacji. Aby uzyskać więcej informacji, zobacz Monitorowanie Key Vault.

Następne kroki

  • Aby uzyskać informacje koncepcyjne, w tym sposób interpretowania dzienników Key Vault, zobacz Key Vault rejestrowania.
  • Aby dowiedzieć się więcej na temat korzystania z usługi Azure Monitor w magazynie kluczy, zobacz Monitorowanie Key Vault.