Partager via


Activer la journalisation de Key Vault

Après avoir créé un ou plusieurs coffres de clés, vous souhaiterez probablement surveiller comment et quand vos coffres de clés sont accessibles et par qui. Pour plus d’informations sur la fonctionnalité, consultez la journalisation d’Azure Key Vault.

Qu’est-ce qui est enregistré :

  • Toutes les demandes d’API REST authentifiées, y compris les demandes ayant échoué en raison des autorisations d’accès, des erreurs système ou des requêtes incorrectes.
  • Opérations sur le coffre de clés lui-même, notamment la création, la suppression, la définition des stratégies d’accès au coffre de clés et la mise à jour des attributs de coffre de clés tels que des balises.
  • Opérations sur les clés et secrets dans le coffre de clés,y compris :
    • Création, modification ou suppression de ces clés ou secrets.
    • Signature, vérification, chiffrement, déchiffrement, encapsulation et décapsulation des clés, obtention des secrets, et répertoriage des clés et secrets (et leurs versions).
  • Demandes non authentifiées qui entraînent une réponse 401. Il s’agit notamment des demandes sans jeton du porteur, mal formées ou arrivées à expiration, ou qui ont un jeton non valide.
  • Événements de notification Azure Event Grid pour les conditions suivantes : arrivé à expiration, proche de l’expiration et stratégie d’accès du coffre modifié (l’événement de nouvelle version n’est pas enregistré). Les événements sont journalisés même si un abonnement aux événements est créé sur le coffre de clés. Pour plus d’informations, consultez Azure Key Vault comme source Event Grid.

Conditions préalables

Pour suivre ce tutoriel, vous aurez besoin d’un coffre de clés Azure. Vous pouvez créer un coffre de clés à l’aide de l’une des méthodes suivantes :

Vous avez également besoin d’une destination pour vos journaux. La destination peut être un compte de stockage Azure existant ou nouveau et/ou un espace de travail Log Analytics.

Vous pouvez créer un compte de stockage Azure à l’aide de l’une des méthodes suivantes :

Vous pouvez créer un espace de travail Log Analytics à l’aide de l’une des méthodes suivantes :

Se connecter à votre abonnement Key Vault

La première étape de la configuration de la journalisation des clés consiste à se connecter à l’abonnement contenant votre coffre de clés, si vous avez plusieurs abonnements associés à votre compte.

Avec Azure CLI, vous pouvez afficher tous vos abonnements à l’aide de la commande az account list . Ensuite, vous vous connectez à un à l’aide de la commande az account set :

az account list

az account set --subscription "<subscriptionID>"

Avec Azure PowerShell, vous pouvez d’abord répertorier vos abonnements à l’aide de l’applet de commande Get-AzSubscription . Vous vous connectez ensuite à un à l’aide de l’applet de commande Set-AzContext :

Get-AzSubscription

Set-AzContext -SubscriptionId "<subscriptionID>"

Obtenir des ID de ressource

Pour activer la journalisation sur un coffre de clés, vous avez besoin de l’ID de ressource du coffre de clés et de la destination (compte Stockage Azure ou Log Analytics).

Si vous ne vous souvenez pas du nom de votre coffre de clés, vous pouvez utiliser la commande azure CLI az keyvault list ou l’applet de commande Azure PowerShell Get-AzKeyVault pour la trouver.

Utilisez le nom de votre coffre de clés pour trouver son ID de ressource. Avec Azure CLI, utilisez la commande az keyvault show .

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

Avec Azure PowerShell, utilisez l’applet de commande Get-AzKeyVault .

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

L’ID de ressource de votre coffre de clés est au format suivant : « /subscriptions/your-subscription-ID/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/your-unique-keyvault-name. Notez-le pour l’étape suivante.

Activation de la journalisation

Vous pouvez activer la journalisation pour Key Vault à l’aide d’Azure CLI, d’Azure PowerShell ou du portail Azure.

Azure CLI (Interface de ligne de commande Azure)

Utilisez la commande az monitor diagnostic-settings create de l’Azure CLI, l’ID du compte de stockage et l’ID de ressource du coffre de clés, comme suit :

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

Si vous le souhaitez, vous pouvez définir une stratégie de rétention pour vos journaux, afin que les journaux plus anciens soient automatiquement supprimés après une durée spécifiée. Par exemple, vous pouvez définir une stratégie de rétention qui supprime automatiquement les journaux antérieurs à 90 jours.

Avec Azure CLI, utilisez la commande az monitor diagnostic-settings update .

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

Accéder à vos journaux d’activité

Vos journaux de Key Vault se trouvent dans le conteneur insights-logs-auditevent dans le compte de stockage que vous avez fourni. Pour visualiser les journaux, vous devez télécharger des objets blob.

Tout d’abord, répertoriez tous les blobs du conteneur. Avec Azure CLI, utilisez la commande az storage blob list .

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

Avec Azure PowerShell, utilisez Get-AzStorageBlob. Pour répertorier tous les blobs présents dans ce conteneur, entrez la commande suivante :

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

À partir de la sortie de la commande Azure CLI ou de l’applet de commande Azure PowerShell, vous pouvez voir que les noms des objets blob sont au format suivant : resourceId=<ARM resource ID>/y=<year>/m=<month>/d=<day of month>/h=<hour>/m=<minute>/filename.json Les valeurs de date et d’heure utilisent l’heure universelle coordonnée.

Étant donné que vous pouvez utiliser le même compte de stockage pour collecter des journaux d’activité pour plusieurs ressources, l’ID de ressource complet dans le nom de l’objet blob est utile pour accéder ou télécharger uniquement les objets blob dont vous avez besoin.

Mais d’abord, téléchargez tous les blobs. Avec Azure CLI, utilisez la commande az storage blob download , transmettez-la les noms des objets blob et le chemin d’accès au fichier dans lequel vous souhaitez enregistrer les résultats.

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

Avec Azure PowerShell, utilisez l’applet de commande Get-AzStorageBlob pour obtenir une liste des objets blob. Ensuite, dirigez cette liste vers la cmdlet Get-AzStorageBlobContent pour télécharger les journaux vers le chemin d’accès choisi.

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

Lorsque vous exécutez cette deuxième applet de commande dans PowerShell, le / délimiteur dans les noms d’objets blob crée une structure de dossiers complète sous le dossier de destination. Vous allez utiliser cette structure pour télécharger et stocker les objets blob en tant que fichiers.

Pour télécharger les blobs de façon sélective, utilisez des caractères génériques. Par exemple:

  • Si vous disposez de plusieurs coffres de clés et souhaitez télécharger les journaux d’activité d’un seul d’entre eux nommé CONTOSOKEYVAULT3 :

    Get-AzStorageBlob -Container "insights-logs-auditevent" -Context $sa.Context -Blob '*/VAULTS/CONTOSOKEYVAULT3
    
  • Si vous disposez de plusieurs groupes de ressources et souhaitez télécharger les journaux d’activité d’un seul d’entre eux, utilisez -Blob '*/RESOURCEGROUPS/<resource group name>/*':

    Get-AzStorageBlob -Container "insights-logs-auditevent" -Context $sa.Context -Blob '*/RESOURCEGROUPS/CONTOSORESOURCEGROUP3/*'
    
  • Si vous souhaitez télécharger tous les fichiers de log pour le mois de janvier 2019, utilisez -Blob '*/year=2019/m=01/*':

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

Utiliser les journaux Azure Monitor

Vous pouvez utiliser la solution Key Vault dans les journaux Azure Monitor pour examiner les journaux AuditEvent de Key Vault. Dans les journaux Azure Monitor, vous utilisez des requêtes de journal pour analyser les données et obtenir les informations dont vous avez besoin. Pour plus d’informations, consultez Surveillance du coffre de clés.

Étapes suivantes