Så här aktiverar du Key Vault loggningHow to enable Key Vault logging

När du har skapat ett eller flera nyckel valv vill du förmodligen övervaka hur och när nyckel valven nås, och av vem.After you create one or more key vaults, you'll likely want to monitor how and when your key vaults are accessed, and by whom. Fullständig information om funktionen finns i Key Vault loggning.For full details on the feature, see Key Vault logging.

Vad loggas:What is logged:

  • Alla autentiserade REST API begär Anden, inklusive misslyckade förfrågningar till följd av åtkomst behörigheter, systemfel eller felaktiga begär Anden.All authenticated REST API requests, including failed requests as a result of access permissions, system errors, or bad requests.
  • Åtgärder i själva nyckel valvet, inklusive att skapa, ta bort, ställa in åtkomst principer för nyckel valv och uppdatera Key Vault-attribut som taggar.Operations on the key vault itself, including creation, deletion, setting key vault access policies, and updating key vault attributes such as tags.
  • Åtgärder för nycklar och hemligheter i nyckel valvet, inklusive:Operations on keys and secrets in the key vault, including:
    • Skapa, ändra eller ta bort nycklar eller hemligheter.Creating, modifying, or deleting these keys or secrets.
    • Signering, verifiering, kryptering, dekryptering, wrapping och unwrap-nycklar, Hämta hemligheter och Visa nycklar och hemligheter (och deras versioner).Signing, verifying, encrypting, decrypting, wrapping and unwrapping keys, getting secrets, and listing keys and secrets (and their versions).
  • Oautentiserade förfrågningar som resulterar i ett 401-svar.Unauthenticated requests that result in a 401 response. Exempel är begär Anden som inte har en Bearer-token, som har fel format eller som har upphört att gälla eller som har en ogiltig token.Examples are requests that don't have a bearer token, that are malformed or expired, or that have an invalid token.
  • Event Grid meddelande händelser för snart utgångs datum, upphör ande och åtkomst principen för valv har ändrats (ny versions händelse loggas inte).Event Grid notification events for near expiry, expired and vault access policy changed (new version event is not logged). Händelser loggas oavsett om det finns en händelse prenumeration som skapats i Key Vault.Events are logged regardless if there is event subscription created on key vault. Mer information finns i Event Grid händelse schema för Key VaultFor more information see, Event Grid event schema for Key Vault

FörutsättningarPrerequisites

För att kunna slutföra den här självstudiekursen behöver du följande:To complete this tutorial, you must have the following:

  • Ett befintligt nyckelvalv som du har använt.An existing key vault that you have been using.
  • Azure Cloud Shell -bash-miljöAzure Cloud Shell - Bash environment
  • Tillräckligt med utrymme i Azure för Key Vault-loggarna.Sufficient storage on Azure for your Key Vault logs.

De här guide kommandona är formaterade för Cloud Shell med bash som en miljö.This guide commands are formatted for Cloud Shell with Bash as an environment.

Ansluta till din Key Vault-prenumerationConnect to your Key Vault subscription

Det första steget när du ställer in nyckel loggningen är att ansluta till prenumerationen som innehåller ditt nyckel valv.The first step in setting up key logging is connecting to subscription containing your key vault. Detta är särskilt viktigt om du har flera prenumerationer som är kopplade till ditt konto.This is especially important if you have multiple subscriptions associated with your account.

Med Azure CLI kan du Visa alla dina prenumerationer med kommandot AZ Account List och sedan ansluta till en med AZ-konto uppsättning:With the Azure CLI, you can view all your subscriptions using the az account list command, and then connect to one using az account set:

az account list

az account set --subscription "<subscriptionID>"

Med Azure PowerShell kan du först lista dina prenumerationer med hjälp av cmdleten Get-AzSubscription och sedan ansluta till en med cmdleten set-AzContext :With Azure PowerShell, you can first list your subscriptions using the Get-AzSubscription cmdlet, and then connect to one using the Set-AzContext cmdlet:

Get-AzSubscription

Set-AzContext -SubscriptionId "<subscriptionID>"

Skapa ett lagrings konto för dina loggarCreate a storage account for your logs

Även om du kan använda ett befintligt lagrings konto för loggarna skapar vi ett nytt lagrings konto som är dedikerat för Key Vault loggar.Although you can use an existing storage account for your logs, we'll create a new storage account dedicated to Key Vault logs.

För ytterligare enkel hantering kommer vi också att använda samma resurs grupp som den som innehåller nyckel valvet.For additional ease of management, we'll also use the same resource group as the one that contains the key vault. I snabb starten av Azure CLI och Azure PowerShell snabbstarten heter den här resurs gruppen myResourceGroup och platsen är öster.In the Azure CLI quickstart and Azure PowerShell quickstart, this resource group is named myResourceGroup, and the location is eastus. Ersätt värdena med dina egna, efter vad som är tillämpligt.Replace these values with your own, as applicable.

Vi kommer också att behöva ange ett lagrings konto namn.We will also need to provide a storage account name. Lagrings konto namn måste vara unika, vara mellan 3 och 24 tecken långt och får endast innehålla siffror och gemener.Storage account names must be unique, between 3 and 24 characters in length, and use numbers and lower-case letters only. Slutligen kommer vi att skapa ett lagrings konto för SKU: n "Standard_LRS".Lastly, we will be creating a storage account of the "Standard_LRS" SKU.

Med Azure CLI använder du kommandot AZ Storage Account Create .With the Azure CLI, use the az storage account create command.

az storage account create --name "<your-unique-storage-account-name>" -g "myResourceGroup" --sku "Standard_LRS"

Med Azure PowerShell använder du cmdleten New-AzStorageAccount .With Azure PowerShell, use the New-AzStorageAccount cmdlet. Du måste ange den plats som motsvarar resurs gruppen.You will need to provide the location that corresponds to the resource group.

 New-AzStorageAccount -ResourceGroupName myResourceGroup -Name "<your-unique-storage-account-name>" -Type "Standard_LRS" -Location "eastus"

I båda fallen noterar du "ID" för lagrings kontot.In either case, note the "id" of the storage account. Azure CLI-åtgärden returnerar "ID" i utdata.The Azure CLI operation returns the "id" in the output. Om du vill hämta "ID" med Azure PowerShell använder du Get-AzStorageAccount och tilldelade utdata till en variabel $sa.To obtain the "id" with Azure PowerShell, use Get-AzStorageAccount and assigned the output to a the variable $sa. Du kan sedan se lagrings kontot med $sa. ID. ($Sa. Context "-egenskapen kommer också att användas, längre fram i den här artikeln.)You can then see the storage account with $sa.id. (The "$sa.Context" property will also be used, later in this article.)

$sa = Get-AzStorageAccount -Name "<your-unique-storage-account-name>" -ResourceGroup "myResourceGroup"
$sa.id

"ID" för lagrings kontot kommer att ha formatet "/Subscriptions//resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/".The "id" of the storage account will be in the format "/subscriptions//resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/".

Anteckning

Om du väljer att använda ett befintligt lagrings konto måste det använda samma prenumeration som nyckel valvet, och det måste använda Azure Resource Manager distributions modell i stället för den klassiska distributions modellen.If you decide to use an existing storage account, it must use the same subscription as your key vault, and it must use the Azure Resource Manager deployment model, rather than the classic deployment model.

Hämta ditt Key Vault-resurs-IDObtain your key vault Resource ID

I snabb starten för CLI och PowerShellskapade du en nyckel med ett unikt namn.In the CLI quickstart and PowerShell quickstart, you created a key with a unique name. Använd det namnet igen i stegen nedan.Use that name again in the steps below. Om du inte kommer ihåg namnet på ditt nyckel valv kan du använda kommandot Azure CLI AZ Key Vault List eller cmdleten Azure PowerShell Get-AzKeyVault för att lista dem.If you cannot remember the name of your key vault, you can use the Azure CLI az keyvault list command or the Azure PowerShell Get-AzKeyVault cmdlet to list them.

Använd namnet på ditt nyckel valv för att hitta dess resurs-ID.Use the name of your key vault to find its Resource ID. Med Azure CLI använder du kommandot AZ Command Vault show .With Azure CLI, use the az keyvault show command.

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

Med Azure PowerShell använder du cmdleten Get-AzKeyVault .With Azure PowerShell, use the Get-AzKeyVault cmdlet.

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

Resurs-ID för nyckel valvet kommer att vara i formatet "/Subscriptions//resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/".The Resource ID for your key vault will be on the format "/subscriptions//resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/". Lägg märke till nästa steg.Note it for the next step.

Aktivera loggningEnable Logging

Du kan aktivera loggning för Key Vault med hjälp av Azure CLI, Azure PowerShell eller Azure Portal.You can enable logging for Key Vault using the Azure CLI, Azure PowerShell, or the Azure portal.

Azure CLIAzure CLI

Använd Azure CLI -AZ övervaka diagnostiskt-Settings Create tillsammans med lagrings konto-ID: t och Key Vault-resurs-ID: t.Use the Azure CLI az monitor diagnostic-settings create command together with the storage account ID and the key vault Resource ID.

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}]'

Du kan också ange en bevarande princip för loggarna så att äldre loggar tas bort automatiskt efter en viss tid.Optionally, you can set a retention policy for your logs, so that older logs are automatically deleted after a specified amount of time. Du kan till exempel ange en bevarande princip som automatiskt tar bort loggar som är äldre än 90 dagar.For example, you could set a retention policy that automatically deletes logs older than 90 days.

Med Azure CLI använder du kommandot AZ Monitor Diagnostic-Settings Update .With the Azure CLI, use the az monitor diagnostic-settings update command.

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

Komma åt loggarnaAccess your logs

Key Vault loggar lagras i behållaren "Insights-logs-auditevent" i det lagrings konto som du har angett.Key Vault logs are stored in the "insights-logs-auditevent" container in the storage account that you provided. Om du vill visa loggarna måste du ladda ned blobbar.To view the logs, you have to download blobs.

Först visar lista alla blobar i behållaren.First, list all the blobs in the container. Med Azure CLI använder du kommandot AZ Storage BLOB List .With the Azure CLI, use the az storage blob list command.

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

Med Azure PowerShell använder du listan Get-AzStorageBlob alla blobar i den här behållaren, ange:With Azure PowerShell, use the Get-AzStorageBlob list all the blobs in this container, enter:

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

Som du ser från utdata från ett Azure CLI-kommando eller en Azure PowerShell-cmdlet, är namnet på blobarna i formatet resourceId=<ARM resource ID>/y=<year>/m=<month>/d=<day of month>/h=<hour>/m=<minute>/filename.json .As you will see from the output of either the Azure CLI command or the Azure PowerShell cmdlet, the name of the blobs are in the format resourceId=<ARM resource ID>/y=<year>/m=<month>/d=<day of month>/h=<hour>/m=<minute>/filename.json. Datum- och tidsvärdena använder UTC.The date and time values use UTC.

Eftersom du kan använda samma lagrings konto för att samla in loggar för flera resurser, är det fullständiga resurs-ID: t i BLOB-namnet användbart för att få åtkomst till eller hämta bara de blobbar som du behöver.Because you can use the same storage account to collect logs for multiple resources, the full resource ID in the blob name is useful to access or download just the blobs that you need. Men innan vi gör det ska vi titta på hur du hämtar alla blobbar.But before we do that, we'll first cover how to download all the blobs.

Med Azure CLI använder du kommandot AZ Storage BLOB Download , skickar det till namnet på Blobbarna och sökvägen till filen där du vill spara resultatet.With the Azure CLI, use the az storage blob download command, pass it the names of the blobs, and the path to the file where you wish to save the results.

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

Med Azure PowerShell använder du AzStorageBlobs-cmdleten gt- för att hämta en lista över blobarna. därefter når du cmdleten Get-AzStorageBlobContent för att hämta loggarna till den valda sökvägen.With Azure PowerShell, use the Gt-AzStorageBlobs cmdlet to get a list of the blobs, then pipe that to the Get-AzStorageBlobContent cmdlet to download the logs to your chosen path.

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

När du kör den här andra cmdleten i PowerShell / skapar avgränsaren i BLOB-namnen en fullständig mappstruktur under målmappen.When you run this second cmdlet in PowerShell, the / delimiter in the blob names creates a full folder structure under the destination folder. Du använder den här strukturen för att ladda ned och lagra Blobbarna som filer.You'll use this structure to download and store the blobs as files.

Om du vill ladda ned blobbarna selektivt använder du jokertecken.To selectively download blobs, use wildcards. Exempel:For example:

  • Om du har flera nyckelvalv och bara vill hämta loggar för ett av dem, mer specifikt nyckelvalvet CONTOSOKEYVAULT3:If you have multiple key vaults and want to download logs for just one key vault, named CONTOSOKEYVAULT3:

    Get-AzStorageBlob -Container "insights-logs-auditevent" -Context $sa.Context -Blob '*/VAULTS/CONTOSOKEYVAULT3
    
  • Om du har flera resursgrupper och bara vill hämta loggar för en av dem använder du -Blob '*/RESOURCEGROUPS/<resource group name>/*':If you have multiple resource groups and want to download logs for just one resource group, use -Blob '*/RESOURCEGROUPS/<resource group name>/*':

    Get-AzStorageBlob -Container "insights-logs-auditevent" -Context $sa.Context -Blob '*/RESOURCEGROUPS/CONTOSORESOURCEGROUP3/*'
    
  • Om du vill hämta alla loggar i januari 2019 använder du -Blob '*/year=2019/m=01/*' :If you want to download all the logs for the month of January 2019, use -Blob '*/year=2019/m=01/*':

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

Nu är det dags att börja titta på vad som finns i loggarna.You're now ready to start looking at what's in the logs. Men innan vi går vidare till så bör du känna till två kommandon:But before we move on to that, you should know two more commands:

Mer information om hur du läser loggarna finns i Key Vault Logging: tolka dina Key Vaults loggarFor details on how to read the logs, see Key Vault logging: Interpret your Key Vault logs

Använda Azure Monitor-loggarUse Azure Monitor logs

Du kan använda Key Vault-lösningen i Azure Monitor loggar för att granska Key Vault AuditEvent loggar.You can use the Key Vault solution in Azure Monitor logs to review Key Vault AuditEvent logs. I Azure Monitor loggar använder du logg frågor för att analysera data och få den information du behöver.In Azure Monitor logs, you use log queries to analyze data and get the information you need.

Mer information, inklusive hur du konfigurerar detta finns i Azure Key Vault i Azure Monitor.For more information, including how to set this up, see Azure Key Vault in Azure Monitor.

Nästa stegNext steps