Une fois que vous avez créé un droit d'accès, vous pouvez l'afficher, le modifier ou le supprimer.
Avant de commencer
Assurez-vous d'avoir activé Privileged Access Manager et configuré les autorisations correspondantes.
Afficher, modifier et supprimer des droits d'accès à l'aide de la console Google Cloud
Accédez à la page Privileged Access Manager.
Sélectionnez l'organisation, le dossier ou le projet dans lequel vous souhaitez gérer les droits d'accès.
Dans l'onglet Droits d'accès, cliquez 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.
Dans le tableau, cliquez sur
Autres options sur la ligne du droit d'accès que vous souhaitez examiner.Pour afficher les détails du droit d'accès, cliquez sur Afficher les détails du droit d'accès.
Pour afficher les autorisations associées au droit d'accès, cliquez sur Afficher les autorisations associées.
Pour révoquer toutes les autorisations actives pour le droit d'accès, cliquez sur Révoquer toutes les autorisations.
Pour supprimer le droit d'accès, cliquez sur Supprimer le droit d'accès. Vous ne pouvez pas supprimer un droit d'accès avec des autorisations actives. Vous devez d'abord révoquer les autorisations.
Pour modifier un droit d'accès, cliquez sur
Modifier le droit d'accès sur la même ligne que le droit d'accès que vous souhaitez modifier.Gardez les points suivants à l'esprit lorsque vous mettez à jour un droit d'accès :
La configuration des droits d'accès mise à jour ne s'applique qu'aux autorisations demandées après la mise à jour. Toutefois, les modifications apportées aux approbateurs s'appliquent également aux demandes d'accès existantes qui n'ont pas encore été approuvées ni refusées.
Lorsque vous mettez à jour un droit d'accès, vous ne pouvez pas modifier la nécessité d'une approbation. Si vous devez modifier l'état d'approbation, créez plutôt un nouvel accès.
L'application des modifications apportées aux demandeurs et aux approbateurs d'un droit d'accès peut prendre quelques minutes.
Afficher les droits d'accès de manière programmatique
Pour afficher les droits d'accès de manière programmatique, vous pouvez les rechercher, les lister, les obtenir et les exporter.
Lister les droits d'accès
gcloud
La commande gcloud pam entitlements list
liste les droits d'accès qui appartiennent à un champ d'application spécifique.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
RESOURCE_TYPE
: facultatif. Type de ressource auquel appartient le droit d'accès. Utilisez la valeurorganization
,folder
ouproject
.RESOURCE_ID
: utilisé avecRESOURCE_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 quemy-project
. Les ID de dossier et d'organisation sont numériques, tels que123456789012
.
Exécutez la commande suivante :
Linux, macOS ou Cloud Shell
gcloud pam entitlements list \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud pam entitlements list ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud pam entitlements list ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
Vous devriez obtenir un résultat semblable à celui-ci :
additionalNotificationTargets: adminEmailRecipients: - alex@example.com createTime: '2024-03-26T11:07:37.009498890Z' eligibleUsers: - principals: - user:bola@example.com etag: 00000000000000000000000000000000000000000000000000000000000= maxRequestDuration: 3600s name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID privilegedAccess: gcpIamAccess: resource: //cloudresourcemanager.googleapis.com/projects/my-project resourceType: cloudresourcemanager.googleapis.com/Project roleBindings: - role: roles/storage.admin requesterJustificationConfig: unstructured: {} state: AVAILABLE updateTime: '2024-03-26T11:07:40.056780645Z'
REST
La méthode listEntitlements
de l'API Privileged Access Manager liste les droits d'accès appartenant à un champ d'application spécifique.
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 formatorganizations/ORGANIZATION_ID
,folders/FOLDER_ID
ouprojects/PROJECT_ID
. Les ID de projet sont des chaînes alphanumériques, telles quemy-project
. Les ID de dossier et d'organisation sont des valeurs numériques, telles que123456789012
.FILTER
: facultatif. Renvoie les droits d'accès dont les valeurs de champ correspondent à une expression AIP-160.PAGE_SIZE
: facultatif. Nombre d'éléments à renvoyer dans une réponse.PAGE_TOKEN
: facultatif. Page à partir de laquelle commencer la réponse, à l'aide d'un jeton de page renvoyé dans une réponse précédente.
Méthode HTTP et URL :
GET https://privilegedaccessmanager.googleapis.com/v1/SCOPE/locations/global/entitlements?filter=FILTER&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN
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/entitlements/ENTITLEMENT_ID", "createTime": "2023-11-21T17:28:39.962144708Z", "updateTime": "2023-11-21T17:28:43.160309410Z", "eligibleUsers": [ { "principals": [ "user:alex@example.com" ] } ], "approvalWorkflow": { "manualApprovals": { "steps": [ { "approvers": [ { "principals": [ "user:bola@example.com" ] } ], "approvalsNeeded": 1 } ] } }, "privilegedAccess": { "gcpIamAccess": { "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/my-project", "roleBindings": [ { "role": "roles/storage.admin" } ] } }, "maxRequestDuration": "14400s", "state": "AVAILABLE", "requesterJustificationConfig": { "unstructured": {} }, "additionalNotificationTargets": { "adminEmailRecipients": [ "alex@example.com" ] }, "etag": "00000000000000000000000000000000000000000000000000000000000=" } ]
Obtenir des droits d'accès
gcloud
La commande gcloud pam entitlements describe
récupère un droit d'accès spécifique.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
ENTITLEMENT_ID
: ID du droit d'accès pour lequel vous souhaitez obtenir des informations.RESOURCE_TYPE
: facultatif. Type de ressource auquel appartient le droit d'accès. Utilisez la valeurorganization
,folder
ouproject
.RESOURCE_ID
: utilisé avecRESOURCE_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 quemy-project
. Les ID de dossier et d'organisation sont numériques, tels que123456789012
.
Exécutez la commande suivante :
Linux, macOS ou Cloud Shell
gcloud pam entitlements describe \ ENTITLEMENT_ID \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud pam entitlements describe ` ENTITLEMENT_ID ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud pam entitlements describe ^ ENTITLEMENT_ID ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
Vous devriez obtenir un résultat semblable à celui-ci :
additionalNotificationTargets: adminEmailRecipients: - alex@example.com createTime: '2024-03-26T11:07:37.009498890Z' eligibleUsers: - principals: - user:bola@example.com etag: 00000000000000000000000000000000000000000000000000000000000= maxRequestDuration: 3600s name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID privilegedAccess: gcpIamAccess: resource: //cloudresourcemanager.googleapis.com/projects/my-project resourceType: cloudresourcemanager.googleapis.com/Project roleBindings: - role: roles/storage.admin requesterJustificationConfig: unstructured: {} state: AVAILABLE updateTime: '2024-03-26T11:07:40.056780645Z'
REST
La méthode getEntitlement
de l'API Privileged Access Manager récupère un droit d'accès spécifique.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
SCOPE
: organisation, dossier ou projet à partir duquel obtenir le droit d'accès, au formatorganizations/ORGANIZATION_ID
,folders/FOLDER_ID
ouprojects/PROJECT_ID
. Les ID de projet sont des chaînes alphanumériques, telles quemy-project
. Les ID de dossier et d'organisation sont numériques, tels que123456789012
.ENTITLEMENT_ID
: ID du droit d'accès pour lequel vous souhaitez obtenir des informations.
Méthode HTTP et URL :
GET https://privilegedaccessmanager.googleapis.com/v1/SCOPE/locations/global/entitlements/ENTITLEMENT_ID
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/entitlements/ENTITLEMENT_ID", "createTime": "2023-11-21T17:28:39.962144708Z", "updateTime": "2023-11-21T17:28:43.160309410Z", "eligibleUsers": [ { "principals": [ "user:alex@example.com" ] } ], "approvalWorkflow": { "manualApprovals": { "steps": [ { "approvers": [ { "principals": [ "user:bola@example.com" ] } ], "approvalsNeeded": 1 } ] } }, "privilegedAccess": { "gcpIamAccess": { "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/my-project", "roleBindings": [ { "role": "roles/storage.admin" } ] } }, "maxRequestDuration": "14400s", "state": "AVAILABLE", "requesterJustificationConfig": { "unstructured": {} }, "additionalNotificationTargets": { "adminEmailRecipients": [ "alex@example.com" ] }, "etag": "00000000000000000000000000000000000000000000000000000000000=" }
Exporter des droits d'accès à l'aide de la gcloud CLI
La commande gcloud pam entitlements export
exporte un droit d'accès spécifique vers un fichier YAML.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
ENTITLEMENT_ID
: ID du droit d'accès à exporter.FILENAME
: nom du fichier dans lequel exporter le contenu des droits d'accès.RESOURCE_TYPE
: facultatif. Type de ressource auquel appartient le droit d'accès. Utilisez la valeurorganization
,folder
ouproject
.RESOURCE_ID
: utilisé avecRESOURCE_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 quemy-project
. Les ID de dossier et d'organisation sont numériques, tels que123456789012
.
Exécutez la commande suivante :
Linux, macOS ou Cloud Shell
gcloud pam entitlements export \ ENTITLEMENT_ID \ --destination=FILENAME.yaml \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud pam entitlements export ` ENTITLEMENT_ID ` --destination=FILENAME.yaml ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud pam entitlements export ^ ENTITLEMENT_ID ^ --destination=FILENAME.yaml ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
Vous devriez obtenir un résultat semblable à celui-ci :
Exported [projects/my-project/locations/global/entitlements/ENTITLEMENT_ID] to 'FILENAME.yaml'.
Mettre à jour les droits d'accès de manière programmatique
Gardez les points suivants à l'esprit lorsque vous mettez à jour un droit d'accès :
La configuration des droits d'accès mise à jour ne s'applique qu'aux autorisations demandées après la mise à jour. Toutefois, les modifications apportées aux approbateurs s'appliquent également aux demandes d'accès existantes qui n'ont pas encore été approuvées ni refusées.
Lorsque vous mettez à jour un droit d'accès, vous ne pouvez pas modifier la nécessité d'une approbation. Si vous devez modifier l'état d'approbation, créez plutôt un nouvel accès.
L'application des modifications apportées aux demandeurs et aux approbateurs d'un droit d'accès peut prendre quelques minutes.
gcloud
La commande gcloud pam entitlements update
met à jour un droit d'accès spécifique.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
ENTITLEMENT_ID
: ID du droit d'accès à mettre à jour.RESOURCE_TYPE
: facultatif. Type de ressource auquel appartient le droit d'accès. Utilisez la valeurorganization
,folder
ouproject
.RESOURCE_ID
: utilisé avecRESOURCE_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 quemy-project
. Les ID de dossier et d'organisation sont numériques, tels que123456789012
.FILENAME
: fichier contenant la configuration modifiée du droit d'accès. Pour créer ce fichier, obtenez ou exportez l'habilitation existante, enregistrez la réponse dans un fichier YAML, puis modifiez-la pour l'utiliser comme corps de votre demande de mise à jour. Vous devez inclure l'ETAG dans le corps pour mettre à jour la dernière version du droit d'accès. Pour connaître les champs disponibles que vous pouvez modifier ou ajouter, consultez Créer des droits d'accès de manière programmatique.
Exécutez la commande suivante :
Linux, macOS ou Cloud Shell
gcloud pam entitlements update \ ENTITLEMENT_ID \ --entitlement-file=FILENAME.yaml \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud pam entitlements update ` ENTITLEMENT_ID ` --entitlement-file=FILENAME.yaml ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud pam entitlements update ^ ENTITLEMENT_ID ^ --entitlement-file=FILENAME.yaml ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
Vous devriez obtenir un résultat semblable à celui-ci :
Request issued for: [ENTITLEMENT_ID] Waiting for operation [projects/my-project/locations/global/operations/OPERATION_ID] to complete...done. Updated entitlement [ENTITLEMENT_ID]. approvalWorkflow: manualApprovals: requireApproverJustification: true steps: - approvalsNeeded: 1 approvers: - principals: - user:alex@example.com createTime: '2024-04-09T02:39:37.011866832Z' eligibleUsers: - principals: - user:bola@example.com etag: 00000000000000000000000000000000000000000000000000000000000= maxRequestDuration: 7200s name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID privilegedAccess: gcpIamAccess: resource: //cloudresourcemanager.googleapis.com/projects/my-project resourceType: cloudresourcemanager.googleapis.com/Project roleBindings: - role: roles/storage.admin requesterJustificationConfig: unstructured: {} state: AVAILABLE updateTime: '2024-04-09T02:39:40.066770306Z'
REST
La méthode updateEntitlement
de l'API Privileged Access Manager met à jour un droit d'accès spécifique.
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 formatorganizations/ORGANIZATION_ID
,folders/FOLDER_ID
ouprojects/PROJECT_ID
. Les ID de projet sont des chaînes alphanumériques, telles quemy-project
. Les ID de dossier et d'organisation sont numériques, tels que123456789012
.ENTITLEMENT_ID
: ID du droit d'accès à mettre à jour.-
UPDATED_FIELDS
: liste des champs mis à jour dans le droit d'accès, séparés par une virgule. Exemple :?updateMask=privilegedAccess,maxRequestDuration
Pour tous les champs modifiables, définissez le masque de mise à jour sur
*
. REQUEST_ID
: facultatif. Doit être un UUID différent de zéro. Si le serveur reçoit une requête avec un ID de requête, il vérifie si une autre requête avec cet ID a déjà été traitée au cours des 60 dernières minutes. Si c'est le cas, la nouvelle demande est ignorée.request.json
: fichier contenant la configuration modifiée du droit d'accès. Pour créer ce fichier, obtenez ou exportez l'habilitation existante, enregistrez la réponse dans un fichier nommérequest.json
, puis modifiez-la pour l'utiliser comme corps de votre demande de mise à jour. Vous devez inclure l'ETAG dans le corps pour mettre à jour la dernière version du droit d'accès. Pour connaître les champs que vous pouvez modifier ou ajouter, consultez Créer des droits d'accès de manière programmatique.
Méthode HTTP et URL :
PATCH https://privilegedaccessmanager.googleapis.com/v1/SCOPE/locations/global/entitlements/ENTITLEMENT_ID?updateMask=UPDATED_FIELDS&requestId=REQUEST_ID
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-25T01:55:02.544562950Z", "target": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID", "verb": "update", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Pour vérifier la progression d'une opération de mise à jour, 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
Supprimer des droits d'accès de manière programmatique
gcloud
La commande gcloud pam entitlements delete
supprime un droit d'accès spécifique.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
ENTITLEMENT_ID
: ID du droit d'accès à supprimer.RESOURCE_TYPE
: facultatif. Type de ressource auquel appartient le droit d'accès. Utilisez la valeurorganization
,folder
ouproject
.RESOURCE_ID
: utilisé avecRESOURCE_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 quemy-project
. Les ID de dossier et d'organisation sont numériques, tels que123456789012
.
Exécutez la commande suivante :
Linux, macOS ou Cloud Shell
gcloud pam entitlements delete \ ENTITLEMENT_ID \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud pam entitlements delete ` ENTITLEMENT_ID ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud pam entitlements delete ^ ENTITLEMENT_ID ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
Vous devriez obtenir un résultat semblable à celui-ci :
Delete request issued for: [ENTITLEMENT_ID] Waiting for operation [projects/my-project/locations/global/operations/OPERATION_ID] to complete...done. Deleted entitlement [ENTITLEMENT_ID].
REST
La méthode deleteEntitlement
de l'API Privileged Access Manager supprime un droit d'accès spécifique.
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 doit être supprimé, au formatorganizations/ORGANIZATION_ID
,folders/FOLDER_ID
ouprojects/PROJECT_ID
. Les ID de projet sont des chaînes alphanumériques, telles quemy-project
. Les ID de dossier et d'organisation sont numériques, tels que123456789012
.ENTITLEMENT_ID
: ID du droit d'accès à supprimer.REQUEST_ID
: facultatif. Doit être un UUID non nul. Si le serveur reçoit une requête avec un ID de requête, il vérifie si une autre requête avec cet ID a déjà été traitée au cours des 60 dernières minutes. Si c'est le cas, la nouvelle demande est ignorée.
Méthode HTTP et URL :
DELETE https://privilegedaccessmanager.googleapis.com/v1/SCOPE/locations/global/entitlements/ENTITLEMENT_ID?requestId=REQUEST_ID
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-06T02:28:28.020293460Z", "target": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Pour vérifier la progression d'une opération de suppression, 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