Révoquer des autorisations dans Privileged Access Manager

Une fois qu'un principal a demandé une autorisation pour un droit d'accès et que celle-ci est active, les principaux disposant de l'autorisation privilegedaccessmanager.grants.revoke peuvent la révoquer. Les droits d'accès qui ne sont pas actifs ne peuvent pas être révoqués.

Avant de commencer

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

Révoquer des droits d'accès à l'aide de la console Google Cloud

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

  1. Accédez à la page Privileged Access Manager.

    Accéder à Privileged Access Manager

  2. Sélectionnez l'organisation, le dossier ou le projet dans lequel vous souhaitez révoquer les droits d'accès.

  3. Cliquez sur l'onglet Autorisations, puis sur l'onglet Autorisations pour tous les utilisateurs. Il contient toutes les subventions pour tous les demandeurs, les états des subventions et les détails des 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 attributions actives effectuées pour un droit d'accès, procédez comme suit :

  1. Accédez à la page Privileged Access Manager.

    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 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 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'attribution que vous souhaitez révoquer. Vous pouvez récupérer l'ID en affichant les attributions.
  • 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 appartient le droit d'accès. 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 numériques, tels que 123456789012.

Exécutez la commande suivante :

Linux, macOS ou Cloud Shell

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

Windows (PowerShell)

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

Windows (cmd.exe)

gcloud 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 un accès actif.

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'attribution que vous souhaitez révoquer. Vous pouvez récupérer l'ID en affichant les attributions.
  • REVOKE_REASON : raison pour laquelle l'attribution a été révoquée.

Méthode HTTP et URL :

POST https://privilegedaccessmanager.googleapis.com/v1/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.v1.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": "v1"
  },
  "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/v1/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/v1/SCOPE/locations/global/operations