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

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

VPC Service Controls permet de limiter les risques d'exfiltration de données en isolant les services Google Cloud multilocataires. Pour en savoir plus, consultez la 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 avoir des effets en cascade sur les services. Cela peut rendre le débogage difficile, surtout si vous ne savez pas ce que vous devez rechercher.

La propagation et la prise en compte des modifications du 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 autorisation explicite.

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, il est possible que VPC Service Controls refuse 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 à l'aide de l'ID 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 consulter l'entrée de journal correspondante.

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

Vous pouvez utiliser l'explorateur de journaux pour trouver 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 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 de vous trouver dans le projet qui se trouve 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 Ressource, sélectionnez 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 dans Logging, 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 relatives pour gcloud CLI.

  • Pour récupérer toutes les erreurs liées à VPC Service Controls survenues au cours de la dernière semaine, 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 date et heure mises en forme. Pour en savoir plus sur la mise en forme, consultez les formats de date et heure absolues pour la 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"'
    

Étapes suivantes