Supervision d’Azure Key Vault

Lorsque vous avez des applications critiques et des processus métier basés sur des ressources Azure, vous voulez superviser ces ressources pour connaître leur disponibilité, leurs performances et leur fonctionnement. Par Azure Key Vault, il est important de surveiller votre service au fur et à mesure que vous commencez à mettre à l’échelle, car le nombre de demandes envoyées à votre coffre de clés augmentera. Cela risque d'augmenter la latence de vos requêtes et, dans les cas les plus extrêmes, de les limiter, ce qui aura un impact sur les performances de votre service.

Cet article décrit les données de surveillance générées par Key Vault. Key Vault utilise Azure Monitor. Si vous n’êtes pas familiarisé avec les fonctionnalités d’Azure Monitor communes à tous les services Azure qui l’utilisent, consultez Supervision de ressources Azure avec Azure Monitor.

Page de présentation de la supervision dans Portail Azure

La page de présentation du Portail Azure comprend les mesures suivantes dans l'onglet « Surveillance » pour chaque coffre de clés :

  • Nombre total de requêtes
  • Latence moyenne
  • Taux de réussite

Vous pouvez sélectionner « mesures supplémentaires » (ou l’onglet « métriques » dans le volet gauche, sous « analyse ») pour afficher ces mesures également :

  • Latence globale de l'API de service
  • Disponibilité globale du coffre
  • Saturation globale du coffre
  • Correspondances totales de l'API de service
  • Résultats totaux de l'API de service

Insights Key Vault

Dans Azure, certains services disposent d’un tableau de bord de surveillance prédéfini spécial dans le portail Azure qui constitue un point de départ pour la surveillance de votre service. Ces tableaux de bord spéciaux sont appelés « insights ».

Key Vault Insights permet une supervision complète de vos coffres de clés en fournissant une vue unifiée des informations relatives aux requêtes, au niveau de performance, aux échecs et à la latence de Key Vault. Pour plus d’informations, consultez Superviser votre service de coffre de clés avec Key Vault Insights.

Données de surveillance

Key Vault collecte les mêmes types de données d’analyse que d’autres ressources Azure, lesquelles sont décrites dans Analyse des données de ressources Azure.

Consultez Analyse des références des données Key Vault pour obtenir des informations détaillées sur les mesures et les mesures de journaux créées par Key Vault.

Collecte et routage

Les métriques de plateforme et le journal d’activité sont collectés et stockés automatiquement, mais ils peuvent être acheminés vers d’autres emplacements à l’aide d’un paramètre de diagnostic.

Les journaux de ressources ne sont pas collectés ni stockés tant que vous n’avez pas créé un paramètre de diagnostic et que vous ne les acheminez pas vers un ou plusieurs emplacements.

Pour plus d’informations sur la création d’un paramètre de diagnostic à l’aide du portail Azure, de l’interface CLI ou de PowerShell, consultez Créer un paramètre de diagnostic pour collecter des journaux et métriques de plateforme dans Azure. Lorsque vous créez un paramètre de diagnostic, vous spécifiez les catégories de journaux à collecter. Les catégories pour Key Vault sont répertoriées dans la Référence des données d’analyse Key Vault.

Pour créer un paramètre de diagnostic pour votre coffre de clés, consultez Activer la journalisation des Key Vault. Les métriques et les journaux que vous pouvez collecter sont décrits dans les sections suivantes.

Analyse des métriques

Vous pouvez analyser les mesures pour Key Vault avec les mesures d’autres services Azure à l’aide de l’explorateur des mesures en ouvrant Mesures dans le menu Azure Monitor. Consultez Analyser les métriques avec l’Explorateur de métriques Azure Monitor pour plus d’informations sur l’utilisation de cet outil.

Pour obtenir la liste des métriques de plateforme collectées pour Key Vault, consultez Surveillance des métriques de référence des données Key Vault.

Analyse des journaux d’activité

Les données des journaux Azure Monitor sont stockées dans des tables, chacune ayant son propre ensemble de propriétés uniques.

Tous les journaux de ressources dans Azure Monitor ont les mêmes champs suivis de champs spécifiques au service. Le schéma commun est décrit dans Schéma des journaux des ressources Azure Monitor.

Le journal d’activité est un type de journal de plateforme dans Azure qui fournit des insights de tous les événements de niveau abonnement. Vous pouvez l’afficher indépendamment ou le router vers Azure Monitor Logs, où vous pouvez effectuer des requêtes bien plus complexes à l’aide de Log Analytics.

Pour obtenir la liste des journaux de ressources collectés pour Key Vault, consultez Surveillance des métriques de référence des données Key Vault.

Pour obtenir la liste des tables utilisées par les Journaux de surveillance Azure Monitor et interrogeables par Log Analytics, consultez Informations de référence sur les données de surveillance de Key Vault

Exemples de requêtes Kusto

Important

Quand vous sélectionnez Journaux dans le menu Key Vault, Log Analytics est ouvert avec l’étendue de requête définie sur le coffre de clés actuel. Cela signifie que les requêtes de journal n’incluront que les données de cette ressource. Si vous voulez exécuter une requête qui inclut des données provenant d’autres coffres de clé ou d’autres services Azure, sélectionnez Journaux dans le menu Azure Monitor. Pour plus d’informations, consultez Étendue de requête de journal et intervalle de temps dans la fonctionnalité Log Analytics d’Azure Monitor.

Voici quelques requêtes que vous pouvez entrer dans la barre Recherche dans les journaux pour superviser plus facilement vos ressources Key Vault. Ces requêtes fonctionnent avec le nouveau langage.

  • Des clients utilisent-ils l’ancienne version de TLS (<1.2) ?

    AzureDiagnostics
    | where TimeGenerated > ago(90d) 
    | where ResourceProvider =="MICROSOFT.KEYVAULT" 
    | where isnotempty(tlsVersion_s) and strcmp(tlsVersion_s,"TLS1_2") <0
    | project TimeGenerated,Resource, OperationName, requestUri_s, CallerIPAddress, OperationVersion,clientInfo_s,tlsVersion_s,todouble(tlsVersion_s)
    | sort by TimeGenerated desc
    
  • Des demandes sont-elles lentes ?

    // List of KeyVault requests that took longer than 1sec. 
    // To create an alert for this query, click '+ New alert rule'
    let threshold=1000; // let operator defines a constant that can be further used in the query
    
    AzureDiagnostics
    | where ResourceProvider =="MICROSOFT.KEYVAULT" 
    | where DurationMs > threshold
    | summarize count() by OperationName, _ResourceId
    
  • Y a-t-il des échecs ?

    // Count of failed KeyVault requests by status code. 
    // To create an alert for this query, click '+ New alert rule'
    
    AzureDiagnostics
    | where ResourceProvider =="MICROSOFT.KEYVAULT" 
    | where httpStatusCode_d >= 300 and not(OperationName == "Authentication" and httpStatusCode_d == 401)
    | summarize count() by requestUri_s, ResultSignature, _ResourceId
    // ResultSignature contains HTTP status, e.g. "OK" or "Forbidden"
    // httpStatusCode_d contains HTTP status code returned
    
  • Erreurs de désérialisation d’entrée

    // Shows errors caused due to malformed events that could not be deserialized by the job. 
    // To create an alert for this query, click '+ New alert rule'
    
    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.KEYVAULT" and parse_json(properties_s).DataErrorType in ("InputDeserializerError.InvalidData", "InputDeserializerError.TypeConversionError", "InputDeserializerError.MissingColumns", "InputDeserializerError.InvalidHeader", "InputDeserializerError.InvalidCompressionType")
    | project TimeGenerated, Resource, Region_s, OperationName, properties_s, Level, _ResourceId
    
  • Quelle a été l'activité de ce KeyVault ?

    // Line chart showing trend of KeyVault requests volume, per operation over time. 
    // KeyVault diagnostic currently stores logs in AzureDiagnostics table which stores logs for multiple services. 
    // Filter on ResourceProvider for logs specific to a service.
    
    AzureDiagnostics
    | where ResourceProvider =="MICROSOFT.KEYVAULT" 
    | summarize count() by bin(TimeGenerated, 1h), OperationName // Aggregate by hour
    | render timechart
    
    
  • Qui appelle ce Key Vault ?

    // List of callers identified by their IP address with their request count.  
    // KeyVault diagnostic currently stores logs in AzureDiagnostics table which stores logs for multiple services. 
    // Filter on ResourceProvider for logs specific to a service.
    
    AzureDiagnostics
    | where ResourceProvider =="MICROSOFT.KEYVAULT"
    | summarize count() by CallerIPAddress
    
  • Quel est le rythme auquel ce KeyVault traite les demandes ?

    // Line chart showing trend of request duration over time using different aggregations. 
    
    AzureDiagnostics
    | where ResourceProvider =="MICROSOFT.KEYVAULT" 
    | summarize avg(DurationMs) by requestUri_s, bin(TimeGenerated, 1h) // requestUri_s contains the URI of the request
    | render timechart
    
  • Quelles modifications ont été effectuées le mois dernier ?

    // Lists all update and patch requests from the last 30 days. 
    // KeyVault diagnostic currently stores logs in AzureDiagnostics table which stores logs for multiple services. 
    // Filter on ResourceProvider for logs specific to a service.
    
    AzureDiagnostics
    | where TimeGenerated > ago(30d) // Time range specified in the query. Overrides time picker in portal.
    | where ResourceProvider =="MICROSOFT.KEYVAULT" 
    | where OperationName == "VaultPut" or OperationName == "VaultPatch"
    | sort by TimeGenerated desc
    

Alertes

Azure Monitor vous avertit de façon proactive lorsque des conditions significatives sont détectées dans vos données de surveillance. Elles permettent d’identifier et de résoudre les problèmes affectant votre système de façon préemptive. Vous pouvez définir des alertes sur des métriques, sur des journaux et sur le journal d’activité.

Si vous créez ou exécutez une application qui utilise Azure Key Vault, Azure Monitor Application Insights peut vous proposer des types d’alertes supplémentaires.

Voici quelques règles d’alerte courantes et recommandées pour Azure Key Vault :

  • La disponibilité du coffre de clés est inférieure à 100 % (seuil statique)
  • La latence du coffre de clés est supérieure à 1 000 ms (seuil statique)
  • La saturation globale du coffre est supérieure à 75 % (seuil statique)
  • La saturation globale du coffre est supérieure à la moyenne (seuil dynamique)
  • Le nombre total de codes d'erreur est supérieur à la moyenne (seuil dynamique)

Pour plus d’informations, consultez Alertes pour Azure Key Vault.

Étapes suivantes