Récupérer les erreurs VPC Service Controls à partir des journaux d'audit

Cette page explique comment rechercher des erreurs de VPC Service Controls à l'aide de Cloud Logging.

VPC Service Controls permet de limiter les risques d'exfiltration des données en isolant les services Google Cloud multi-locataires. Pour en savoir plus, consultez la page Présentation de VPC Service Controls.

Déterminer si une erreur est due à VPC Service Controls

VPC Service Controls peut modifier les propriétés de Google Cloud et produire des effets en cascade sur les services. Cela peut rendre le débogage des problèmes difficile, en particulier si vous ne savez pas quoi rechercher.

La propagation et la prise en compte des modifications apportées au périmètre de service peuvent prendre jusqu'à 30 minutes. Une fois les modifications propagées, l'accès aux services restreints dans le périmètre n'est pas autorisé à franchir la limite du périmètre, sauf s'il est explicitement autorisé.

Pour déterminer si une erreur est liée à VPC Service Controls, vérifiez que vous avez activé cette solution et que vous l'avez appliquée aux projets et services que vous tentez d'utiliser. Pour vérifier si les projets et les services sont protégés par VPC Service Controls, consultez la règle VPC Service Controls à ce niveau de la hiérarchie des ressources.

Prenons l'exemple d'un scénario dans lequel vous utilisez indirectement un service désigné comme service restreint par VPC Service Controls dans un projet situé dans un périmètre de service. Dans ce cas, VPC Service Controls peut refuser l'accès.

Habituellement, les services propagent les messages d'erreur à partir de leurs dépendances. Les erreurs suivantes indiquent un problème avec VPC Service Controls :

  • Cloud Storage : 403: Request violates VPC Service Controls.

  • BigQuery : 403: VPC Service Controls: Request is prohibited by organization's policy.

  • Autres services : 403: Request is prohibited by organization's policy.

Utiliser l'identifiant unique de l'erreur

Contrairement à la console Google Cloud, l'outil de ligne de commande gcloud renvoie un ID unique pour les erreurs VPC Service Controls. Pour localiser les entrées de journal portant sur d'autres erreurs, filtrez les journaux à l'aide de métadonnées.

Une erreur générée par VPC Service Controls inclut un identifiant unique permettant d'identifier les journaux d'audit correspondants.

Pour obtenir des informations sur une erreur en utilisant l'identifiant unique, procédez comme suit:

  1. Dans la console Google Cloud, accédez à la page Cloud Logging du projet situé dans le périmètre de service qui a déclenché l'erreur.

    Accéder à Cloud Logging

  2. Dans le champ de filtre de recherche, saisissez l'identifiant unique de l'erreur.

Vous pouvez voir l'entrée de journal correspondante.

Filtrer les journaux à l'aide de métadonnées

Vous pouvez utiliser l'explorateur de journaux pour rechercher les erreurs liées à VPC Service Controls. Vous pouvez utiliser le langage de requête Logging pour récupérer les journaux. Pour en savoir plus sur la création de requêtes, consultez la section Créer des requêtes à l'aide du langage de requête Logging.

Console

Pour obtenir les erreurs liées à VPC Service Controls survenues au cours des dernières 24 heures dans Logging, procédez comme suit:

  1. Dans la console Google Cloud, accédez à la page Cloud Logging.

    Accéder à Cloud Logging

  2. Assurez-vous d'être dans le projet situé dans le périmètre de service.

  3. Dans le champ de filtre de recherche, saisissez les informations suivantes:

    protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"
    
  4. Dans le menu Resource (Ressource), sélectionnez Audited Resource (Ressource auditée).

  5. Dans le menu du sélecteur de période, sélectionnez Dernières 24 heures.

  6. Facultatif: Pour rechercher les erreurs liées à VPC Service Controls survenues au cours d'une période différente, utilisez le menu Sélecteur de période.

gcloud

  • Pour obtenir les erreurs liées à VPC Service Controls survenues au cours des dernières 24 heures, exécutez la commande suivante:

    gcloud logging read 'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"'
    

    Par défaut, la commande read est limitée aux dernières 24 heures. Pour obtenir les journaux VPC Service Controls pour une période différente, exécutez l'une des commandes ci-dessous :

  • Pour récupérer les journaux générés au cours d'une période donnée à partir de la date actuelle, exécutez la commande suivante:

    gcloud logging read \
    'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"' \
      --freshness=DURATION
    

    DURATION est une période de temps mise en forme. Pour en savoir plus sur la mise en forme, consultez les formats de durée et d'heure relatifs pour gcloud CLI.

  • Pour récupérer toutes les erreurs liées à VPC Service Controls survenues au cours de la semaine précédente, exécutez la commande suivante:

    gcloud logging read \
    'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"' \
      --freshness=7d
    
  • Pour récupérer les journaux générés entre des dates spécifiques, exécutez la commande suivante:

    gcloud logging read \
    'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata" AND
    timestamp>="START_DATETIME" AND
    timestamp<="END_DATETIME"'
    

    START_DATETIME et END_DATETIME sont des chaînes de date et d'heure mises en forme. Pour en savoir plus sur la mise en forme, consultez les formats de date et d'heure absolue pour gcloud CLI.

    Par exemple, la commande suivante permet d'obtenir toutes les erreurs liées à VPC Service Controls survenues entre le 22 et le 26 mars 2019 :

    gcloud logging read \
    'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata" AND
      timestamp>="2019-03-22T23:59:59Z" AND
      timestamp<="2019-03-26T00:00:00Z"'
    

Étape suivante