Examiner l'historique des stratégies d'autorisation IAM

Cette page explique comment consulter l'historique des modifications apportées à vos stratégies d'autorisation IAM.

Vous pouvez examiner les modifications apportées aux stratégies d'autorisation de vos ressources en recherchant dans vos journaux d'audit les entrées contenant la méthode SetIamPolicy.

Vous pouvez également examiner les modifications apportées aux stratégies d'autorisation avec inventaire des éléments cloud.

Afficher les modifications des règles d'autorisation avec SetIamPolicy

Pour afficher les modifications apportées aux stratégies d'autorisation, consultez vos journaux d'audit pour les entrées contenant la méthode SetIamPolicy. Vous pouvez consulter vos journaux d'audit à l'aide de la consoleGoogle Cloud ou de gcloud CLI.

Console

  1. Dans la console Google Cloud , accédez à la page Explorateur de journaux.

    Accéder à l'explorateur de journaux

  2. Dans l'éditeur de requête, saisissez l'une des requêtes suivantes. Ces requêtes recherchent dans vos journaux d'audit les entrées qui contiennent SetIamPolicy dans le champ methodName de protoPayload :

    • Pour obtenir les journaux de toutes les modifications apportées à la stratégie d'autorisation d'une ressource, utilisez la requête suivante :

      logName="RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity"
      protoPayload.methodName:SetIamPolicy
      
    • Pour obtenir les journaux des modifications apportées aux stratégies d'autorisation impliquant un utilisateur ou un compte de service spécifique, utilisez la requête suivante :

      logName="RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity"
      protoPayload.methodName:SetIamPolicy
      protoPayload.serviceData.policyDelta.bindingDeltas.member:"EMAIL_ADDRESS"
      

      Remplacez les éléments suivants :

      • RESOURCE_TYPE : type de ressource pour lequel vous souhaitez répertorier les journaux d'audit. Les valeurs valides sont projects, folders ou organizations.
      • RESOURCE_ID : ID de votre projet Google Cloud , dossier ou organisation. Les ID de projets sont alphanumériques, par exemple my-project. Les ID de dossier et d'organisation sont numériques, tels que 123456789012.
      • EMAIL_ADDRESS : adresse e-mail de l'utilisateur ou du compte de service, par exemple example-service-account@example-project.iam.gserviceaccount.com.
  3. Pour exécuter la requête, cliquez sur Exécuter la requête.

  4. Utilisez le sélecteur Période pour spécifier la période appropriée pour la requête. Vous pouvez également ajouter une expression de code temporel directement à l'éditeur de requête. Pour en savoir plus, consultez Afficher les journaux par plage de dates.

gcloud

La commande gcloud logging read permet de lire les entrées de journal.

Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

  • RESOURCE_TYPE : type de ressource pour lequel vous souhaitez répertorier les journaux d'audit. Utilisez la valeur projects, folders ou organizations.
  • RESOURCE_ID : ID de votre projet Google Cloud, de votre organisation ou de votre dossier. Les ID de projet sont des chaînes alphanumériques, telles que my-project. Les ID de dossier et d'organisation sont numériques, tels que 123456789012.
  • TIME_PERIOD : période pour laquelle vous souhaitez répertorier les journaux d'audit. Les entrées renvoyées ne sont pas antérieures à cette valeur. Si elle n'est pas spécifiée, la valeur par défaut est 1d. Pour en savoir plus sur les formats de date et d'heure, consultez la section gcloud topic datetimes.
  • RESOURCE_TYPE_SINGULAR : type de ressource pour lequel vous souhaitez répertorier les journaux d'audit. Utilisez la valeur project, folder ou organization.

Exécutez la commande suivante :

Linux, macOS ou Cloud Shell

gcloud logging read \
    'logName:RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity
    AND protoPayload.methodName=SetIamPolicy' \
    --freshness=TIME_PERIOD \
    --RESOURCE_TYPE_SINGULAR=RESOURCE_ID

Windows (PowerShell)

gcloud logging read `
    'logName:RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity
    AND protoPayload.methodName=SetIamPolicy' `
    --freshness=TIME_PERIOD `
    --RESOURCE_TYPE_SINGULAR=RESOURCE_ID

Windows (cmd.exe)

gcloud logging read ^
    'logName:RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity
    AND protoPayload.methodName=SetIamPolicy' ^
    --freshness=TIME_PERIOD ^
    --RESOURCE_TYPE_SINGULAR=RESOURCE_ID

Afficher les modifications des stratégies d'autorisation avec Cloud Asset Inventory

Vous pouvez également afficher les modifications des stratégies d'autorisation à l'aide de Cloud Asset Inventory dans la console Google Cloud ou la gcloud CLI.

Console

  1. Dans la console Google Cloud , accédez à la page Inventaire des éléments.

    Accéder à l'inventaire des éléments

  2. Cliquez sur l'onglet Stratégie IAM.

  3. Exécutez la requête suivante dans le champ Filtre :

    Resource : RESOURCE_ID

    Remplacez RESOURCE_ID par l'ID de votre projet, dossier ou organisation. Google CloudLes ID de projets sont alphanumériques, par exemple my-project. Les ID de dossier et d'organisation sont numériques, tels que 123456789012.

  4. Pour afficher l'historique des modifications de la règle d'autorisation de la ressource, cliquez sur le nom de la ressource, puis sélectionnez l'onglet Historique des modifications.

  5. Pour comparer les modifications apportées à la règle d'autorisation de la ressource, sélectionnez deux enregistrements différents avec un code temporel dans le menu Sélectionnez un enregistrement à comparer.

gcloud

La commande gcloud asset get-history permet d'obtenir l'historique mis à jour des stratégies d'autorisation sur un élément qui chevauche une période.

Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

  • RESOURCE_TYPE : type de ressource pour lequel vous souhaitez répertorier les journaux d'audit. Utilisez la valeur project, folder ou organization.
  • RESOURCE_ID : ID de votre projet Google Cloud, de votre organisation ou de votre dossier. Les ID de projet sont des chaînes alphanumériques, telles que my-project. Les ID de dossier et d'organisation sont numériques, tels que 123456789012.
  • ASSET_NAME : liste de noms de ressources mis en forme, séparés par une virgule, pour les ressources dont vous souhaitez afficher l'historique des stratégies d'autorisation. Exemple : //cloudresourcemanager.googleapis.com/projects/my-project Ces ressources peuvent être n'importe quel type de ressource acceptant les stratégies d'autorisation.
  • START_TIME : début de la période. 7 jours au maximum. La valeur doit être l'heure actuelle ou une heure passée (35 jours maximum). Pour en savoir plus sur les formats de date et d'heure, consultez la section gcloud topic datetimes.
  • END_TIME : facultatif. Point de fin de la période. 7 jours au maximum. La valeur doit être l'heure actuelle ou une heure passée (35 jours maximum). Si aucune heure de fin n'est spécifiée, l'heure actuelle est utilisée. Pour en savoir plus sur les formats de date et d'heure, consultez la section gcloud topic datetimes.

Exécutez la commande suivante :

Linux, macOS ou Cloud Shell

gcloud asset get-history \
    --RESOURCE_TYPE=RESOURCE_ID \
    --asset-names=ASSET_NAME_1,ASSET_NAME_2,... \
    --content-type=iam-policy \
    --start-time=START_TIME \
    --end-time=END_TIME

Windows (PowerShell)

gcloud asset get-history `
    --RESOURCE_TYPE=RESOURCE_ID `
    --asset-names=ASSET_NAME_1,ASSET_NAME_2,... `
    --content-type=iam-policy `
    --start-time=START_TIME `
    --end-time=END_TIME

Windows (cmd.exe)

gcloud asset get-history ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --asset-names=ASSET_NAME_1,ASSET_NAME_2,... ^
    --content-type=iam-policy ^
    --start-time=START_TIME ^
    --end-time=END_TIME

La réponse contient l'historique mis à jour des stratégies d'autorisation.