Azure Key Vault-Protokollierung
Nachdem Sie einen oder mehrere Schlüsseltresore erstellt haben, möchten Sie vermutlich überwachen, wie, wann und von wem auf die Schlüsseltresore zugegriffen wird. Bei Aktivieren der Protokollierung für Azure Key Vault werden diese Informationen in einem von Ihnen angegebenen Azure-Speicherkonto gespeichert. Eine detaillierte Anleitung finden Sie unter Aktivieren der Protokollierung in Key Vault.
Sie können auf Ihre Protokollinformationen (spätestens) zehn Minuten nach dem Schlüsseltresorvorgang zugreifen. In den meisten Fällen geht es schneller. Die Verwaltung der Protokolle im Speicherkonto ist Ihre Aufgabe:
- Verwenden Sie zum Schützen Ihrer Protokolle in Ihrem Speicherkonto Standardmethoden für die Azure-Zugriffssteuerung, indem Sie einschränken, wer darauf zugreifen kann.
- Löschen Sie Protokolle, die im Speicherkonto nicht mehr aufbewahrt werden sollen.
Eine Übersicht über Key Vault finden Sie unter Was ist Azure Key Vault?. Informationen dazu, wo Key Vault verfügbar ist, finden Sie auf der Seite mit der Preisübersicht. Informationen zur Verwendung von Azure Monitor für Key Vault finden Sie hier.
Interpretieren der Key Vault-Protokolle
Wenn Sie die Protokollierung aktivieren, wird automatisch ein neuer Container namens insights-logs-auditevent für Ihr angegebenes Speicherkonto erstellt. Sie können dasselbe Speicherkonto verwenden, um Protokolle für mehrere Schlüsseltresore zu sammeln.
Einzelne Blobs werden als Text und formatiert als JSON-Blob gespeichert. Schauen wir uns einen Beispielprotokolleintrag an.
{
"records":
[
{
"time": "2016-01-05T01:32:01.2691226Z",
"resourceId": "/SUBSCRIPTIONS/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/RESOURCEGROUPS/CONTOSOGROUP/PROVIDERS/MICROSOFT.KEYVAULT/VAULTS/CONTOSOKEYVAULT",
"operationName": "VaultGet",
"operationVersion": "2015-06-01",
"category": "AuditEvent",
"resultType": "Success",
"resultSignature": "OK",
"resultDescription": "",
"durationMs": "78",
"callerIpAddress": "104.40.82.76",
"correlationId": "",
"identity": {"claim":{"http://schemas.microsoft.com/identity/claims/objectidentifier":"d9da5048-2737-4770-bd64-XXXXXXXXXXXX","http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn":"live.com#username@outlook.com","appid":"00001111-aaaa-2222-bbbb-3333cccc4444"}},
"properties": {"clientInfo":"azure-resource-manager/2.0","requestUri":"https://control-prod-wus.vaultcore.azure.net/subscriptions/361da5d4-a47a-4c79-afdd-XXXXXXXXXXXX/resourcegroups/contosoresourcegroup/providers/Microsoft.KeyVault/vaults/contosokeyvault?api-version=2015-06-01","id":"https://contosokeyvault.vault.azure.net/","httpStatusCode":200}
}
]
}
In der folgenden Tabelle sind die Feldnamen und Beschreibungen aufgeführt:
Feldname | BESCHREIBUNG |
---|---|
time | Datum und Uhrzeit (UTC). |
Ressourcen-ID | Azure Resource Manager-Ressourcen-ID Für Key Vault-Protokolle ist es immer die Key Vault-Ressourcen-ID. |
operationName | Name des Vorgangs, wie in der folgenden Tabelle beschrieben |
operationVersion | Die vom Client angeforderte REST-API-Version. |
category | Der Typ des Ergebnisses. Für Key Vault-Protokolle ist AuditEvent der einzige verfügbare Wert. |
resultType | Das Ergebnis der REST-API-Anforderung. |
resultSignature | HTTP-Status |
resultDescription | Zusätzliche Beschreibung zum Ergebnis, falls verfügbar. |
durationMs | Verarbeitungsdauer der REST-API-Anforderung in Millisekunden. Die Netzwerklatenz ist nicht in der Zeit enthalten, sodass die auf der Clientseite gemessene Zeit unter Umständen nicht mit diesem Zeitraum übereinstimmt. |
callerIpAddress | Die IP-Adresse des Clients, der die Anforderung gestellt hat. |
correlationId | Optionale GUID, die vom Client zum Korrelieren von clientseitigen Protokollen mit dienstseitigen Protokollen (Schlüsseltresor) übergeben werden kann |
Identität | Identität des Tokens, das in der REST-API-Anforderung angegeben wurde. In der Regel ein „Benutzer“, ein „Dienstprinzipal“ oder die Kombination „Benutzer+appId“, wenn die Anforderung z. B. von einem Azure PowerShell-Cmdlet stammt. |
properties | Informationen, die je nach Vorgang (operationName) variieren. In den meisten Fällen enthält dieses Feld Clientinformationen (vom Client übergebene Zeichenfolge „useragent“), den genauen REST-API-Anforderungs-URI und den HTTP-Statuscode. Wenn ein Objekt als Ergebnis einer Anforderung (z. B. KeyCreate oder VaultGet) zurückgegeben wird, enthält es außerdem den Schlüssel-URI (als id ), den Tresor-URI oder den URI des Geheimnisses. |
Die Feldwerte unter operationName liegen im ObjectVerb-Format vor. Beispiel:
- Alle Schlüsseltresorvorgänge verfügen über das Format
Vault<action>
, z. B.VaultGet
undVaultCreate
. - Alle Schlüsselvorgänge verfügen über das Format
Key<action>
, z. B.KeySign
undKeyList
. - Alle Geheimnisvorgänge verfügen über das Format
Secret<action>
, z. B.SecretGet
undSecretListVersions
.
Die folgende Tabelle enthält die operationName-Werte und die entsprechenden REST-API-Befehle:
Tabelle mit Vorgangsnamen
operationName | REST-API-Befehl |
---|---|
Authentifizierung | Authentifizierung über Microsoft Entra Endpunkt |
VaultGet | Abrufen von Informationen über einen Schlüsseltresor |
VaultPut | Erstellen oder Aktualisieren eines Schlüsseltresors |
VaultDelete | Löschen eines Schlüsseltresors |
VaultPatch | Erstellen oder Aktualisieren eines Schlüsseltresors |
VaultList | Auflisten aller Schlüsseltresore in einer Ressourcengruppe |
VaultPurge | Gelöschten Tresor endgültig löschen |
VaultRecover | Gelöschten Tresor wiederherstellen |
VaultGetDeleted | Gelöschten Tresor abrufen |
VaultListDeleted | Gelöschten Tresor auflisten |
VaultAccessPolicyChangedEventGridNotification | Das Ereignis „Tresorzugriffsrichtlinie geändert“ wurde veröffentlicht. Es wird unabhängig davon protokolliert, ob ein Event Grid-Abonnement vorhanden ist. |
Verwenden von Azure Monitor-Protokollen
Sie können die Key Vault-Lösung in Azure Monitor verwenden, um AuditEvent
-Protokolle von Key Vault zu überprüfen. In Azure Monitor-Protokollen verwenden Sie Protokollabfragen, um Daten zu analysieren und die benötigten Informationen zu erhalten.
Weitere Informationen, z. B. zur Einrichtung, finden Sie im Artikel zu Azure Key Vault in Azure Monitor.
Informationen zum Analysieren von Protokollen finden Sie unter Kusto-Beispielprotokollabfragen.
Nächste Schritte
- Aktivieren der Protokollierung in Key Vault
- Azure Monitor
- Ein Tutorial zur Verwendung von Azure Key Vault in einer .NET-Webanwendung finden Sie unter Verwenden von Azure Key Vault aus einer Webanwendung.
- Eine Referenz zur Programmierung finden Sie im Entwicklerhandbuch für den Azure-Schlüsseltresor.
- Eine Liste der Azure PowerShell 1.0-Cmdlets für Azure Key Vault finden Sie unter Azure Key Vault-Cmdlets.