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:
- Tworzenie magazynu kluczy przy użyciu interfejsu wiersza polecenia platformy Azure
- Tworzenie magazynu kluczy przy użyciu programu Azure PowerShell
- Tworzenie magazynu kluczy przy użyciu witryny Azure Portal
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:
- Tworzenie konta magazynu przy użyciu interfejsu wiersza polecenia platformy Azure
- Tworzenie konta magazynu przy użyciu programu Azure PowerShell
- Tworzenie konta magazynu przy użyciu witryny Azure Portal
Nowy obszar roboczy usługi Log Analytics można utworzyć przy użyciu jednej z następujących metod:
- Tworzenie obszaru roboczego usługi Log Analytics przy użyciu interfejsu wiersza polecenia platformy Azure
- Tworzenie obszaru roboczego usługi Log Analytics przy użyciu programu Azure PowerShell
- Tworzenie obszaru roboczego usługi Log Analytics w witrynie Azure Portal
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.