Révoquer des autorisations dans Privileged Access Manager

Une fois qu'un utilisateur principal a demandé une autorisation pour un droit d'accès et que cette autorisation est active, les utilisateurs principaux disposant des autorisations appropriées peuvent la révoquer. Les attributions dont l'état n'est pas "actif" ne peuvent pas être révoquées.

Avant de commencer

Assurez-vous d'avoir activé Privileged Access Manager et configuré les autorisations associées.

Révoquer des autorisations à l'aide de la console Google Cloud

Pour révoquer une autorisation spécifique accordée pour un droit d'accès, procédez comme suit :

  1. Accédez à la page Gestionnaire d'accès privilégié.

    Accéder à Privileged Access Manager

  2. Sélectionnez l'organisation, le dossier ou le projet dans lequel vous souhaitez révoquer les autorisations.

  3. Cliquez sur l'onglet Attributions, puis sur Attributions pour tous les utilisateurs. Il contient toutes les autorisations accordées à tous les demandeurs, les états des autorisations et les informations sur les droits d'accès associés.

  4. Dans le tableau, cliquez sur Autres options sur la même ligne que l'autorisation que vous souhaitez révoquer.

  5. Pour révoquer une autorisation active, cliquez sur Révoquer l'autorisation.

Pour révoquer toutes les autorisations actives accordées pour un droit d'accès, procédez comme suit :

  1. Accédez à la page Gestionnaire d'accès privilégié.

    Accéder à Privileged Access Manager

  2. Cliquez sur l'onglet Droits d'accès, puis sur l'onglet Droits d'accès pour tous les utilisateurs. Vous y trouverez les droits d'accès disponibles, les rôles qu'ils accordent, ainsi que les demandeurs et les approbateurs valides.

  3. Dans le tableau, cliquez sur Autres options sur la même ligne que le droit d'accès pour lequel vous souhaitez révoquer les autorisations.

  4. Cliquez sur Révoquer toutes les autorisations.

Révoquer des autorisations de manière programmatique

gcloud

La commande gcloud beta pam grants revoke révoque une autorisation active.

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

  • GRANT_ID : ID de l'autorisation que vous souhaitez révoquer. Vous pouvez récupérer l'ID en consultant les autorisations.
  • ENTITLEMENT_ID : ID du droit d'accès auquel l'attribution appartient.
  • REVOKE_REASON : raison pour laquelle l'attribution a été révoquée.
  • RESOURCE_TYPE : facultatif. Type de ressource auquel le droit d'accès appartient. Utilisez la valeur organization, folder ou project.
  • RESOURCE_ID : utilisé avec RESOURCE_TYPE. ID du projet, du dossier ou de l'organisation Google Cloud pour lequel/laquelle vous souhaitez gérer les droits d'accès. Les ID de projet sont des chaînes alphanumériques, telles que my-project. Les ID de dossier et d'organisation sont des valeurs numériques, telles que 123456789012.

Exécutez la commande suivante :

Linux, macOS ou Cloud Shell

gcloud beta pam grants revoke \
     GRANT_ID \
    --entitlement=ENTITLEMENT_ID \
    --reason="REVOKE_REASON" \
    --location=global \
    --RESOURCE_TYPE=RESOURCE_ID

Windows (PowerShell)

gcloud beta pam grants revoke `
     GRANT_ID `
    --entitlement=ENTITLEMENT_ID `
    --reason="REVOKE_REASON" `
    --location=global `
    --RESOURCE_TYPE=RESOURCE_ID

Windows (cmd.exe)

gcloud beta pam grants revoke ^
     GRANT_ID ^
    --entitlement=ENTITLEMENT_ID ^
    --reason="REVOKE_REASON" ^
    --location=global ^
    --RESOURCE_TYPE=RESOURCE_ID

Vous devriez obtenir un résultat semblable à celui-ci :

auditTrail:
  accessGrantTime: '2024-04-05T00:29:16.703069535Z'
  accessRemoveTime: '2024-04-05T00:29:55.815041079Z'
createTime: '2024-04-05T00:27:43.822053968Z'
justification:
  unstructuredJustification: Renaming a file to mitigate issue #312
name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID
privilegedAccess:
  gcpIamAccess:
    resource: //cloudresourcemanager.googleapis.com/projects/my-project
    resourceType: cloudresourcemanager.googleapis.com/Project
    roleBindings:
    - role: roles/storage.admin
requestedDuration: 2700s
requester: cruz@example.com
state: REVOKED
timeline:
  events:
  - eventTime: '2024-04-05T00:27:44.014277946Z'
    requested:
      expireTime: '2024-04-06T00:27:44.014277946Z'
  - approved:
      actor: alex@example.com
      reason: Access allowed under existing policy
    eventTime: '2024-04-05T00:29:14.921828714Z'
  - eventTime: '2024-04-05T00:29:14.921763008Z'
    scheduled:
      scheduledActivationTime: '2024-04-05T00:29:14.921763008Z'
  - activated: {}
    eventTime: '2024-04-05T00:29:16.703069535Z'
  - eventTime: '2024-04-05T00:29:55.815041079Z'
    revoked:
      actor: alex@example.com
      reason: Revoking due to new access policy

REST

La méthode revokeGrant de l'API Privileged Access Manager révoque une autorisation active.

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • SCOPE : organisation, dossier ou projet dans lequel/laquelle le droit d'accès est attribué, au format organizations/ORGANIZATION_ID, folders/FOLDER_ID ou projects/PROJECT_ID. Les ID de projet sont des chaînes alphanumériques, telles que my-project. Les ID de dossier et d'organisation sont des valeurs numériques, telles que 123456789012.
  • ENTITLEMENT_ID : ID du droit d'accès auquel l'attribution appartient.
  • GRANT_ID : ID de l'autorisation que vous souhaitez révoquer. Vous pouvez récupérer l'ID en consultant les autorisations.
  • REVOKE_REASON : motif de la révocation de l'attribution.

Méthode HTTP et URL :

POST https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID:revoke

Corps JSON de la requête :

{
  "reason": "REVOKE_REASON"
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "name": "projects/my-project/locations/global/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.privilegedaccessmanager.v1beta.OperationMetadata",
    "createTime": "2024-03-06T23:07:48.716396505Z",
    "target": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID",
    "verb": "update",
    "requestedCancellation": false,
    "apiVersion": "v1beta"
  },
  "done": false
}

Pour vérifier la progression d'une opération de révocation, vous pouvez envoyer une requête GET au point de terminaison suivant :

https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations/OPERATION_ID

Envoyez une requête GET au point de terminaison suivant pour lister toutes les opérations :

https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations