Włączanie rejestrowania usługi 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 usługi Azure Key Vault.

Co jest rejestrowane:

  • Wszystkie uwierzytelnione żądania interfejsu API REST, w tym żądania niepomyślnie spowodowane uprawnieniami dostępu, błędami systemu lub nieprawidłowymi żądaniami.
  • Operacje na samym magazynie kluczy, w tym tworzenie, usuwanie, ustawianie zasad dostępu do 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, zawijanie i odpisanie kluczy, uzyskiwanie wpisów tajnych oraz wyświetlanie listy kluczy i wpisów tajnych (oraz 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.
  • Zdarzenia powiadomień usługi Azure Event Grid dla następujących warunków: wygasły, bliskie wygaśnięcie i zmienione zasady dostępu do magazynu (nowe zdarzenie wersji nie jest rejestrowane). Zdarzenia są rejestrowane, nawet jeśli istnieje subskrypcja zdarzeń utworzona w magazynie kluczy. Aby uzyskać więcej informacji, zobacz Usługa Azure Key Vault jako źródło usługi Event Grid.

Wymagania wstępne

Do ukończenia tego samouczka potrzebny jest 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. Miejscem docelowym może być istniejące lub nowe konto usługi Azure Storage i/lub obszar roboczy usługi Log Analytics.

Nowe konto usługi Azure Storage można utworzyć 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ą usługi 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ą programu Azure PowerShell możesz 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, musisz mieć 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 Get-AzKeyVault programu Azure PowerShell, 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 programie 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/myResourceGroups/providers/Microsoft.KeyVault/vaults/your-unique-keyvault-name. Zanotuj go w następnym kroku.

Włącz rejestrowanie

Rejestrowanie dla usługi Key Vault można włączyć przy użyciu interfejsu wiersza polecenia platformy Azure, programu Azure PowerShell lub witryny 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 usługi 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 programie 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

Z danych wyjściowych polecenia interfejsu wiersza polecenia platformy Azure lub polecenia cmdlet programu Azure PowerShell widać, że nazwy obiektów blob mają następujący format: 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żyć 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.

Ale 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>"

Za pomocą programu 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. Na 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 z miesiąca 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 usługi Key Vault AuditEvent , 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 usługi Key Vault.

Następne kroki

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