Vous pouvez créer des droits d'accès pour accorder une élévation temporaire des droits à un ensemble spécifique de comptes principaux. Lorsque vous créez des droits d'accès, tenez compte des points suivants :
Vous pouvez créer des droits d'accès au niveau de l'organisation, du dossier ou du projet. Les rôles accordés par un droit d'accès à chaque niveau suivent la Cloud de Confiance by S3NS hiérarchie des ressources. Par exemple, les rôles accordés par un droit d'accès au niveau de l'organisation sont hérités au niveau des dossiers et des projets.
Si le niveau Premium ou Enterprise de Security Command Center est activé au niveau de l'organisation, vous pouvez exiger plusieurs niveaux d'approbation par droit d'accès, ce qui permet d'avoir jusqu'à deux niveaux d'approbation séquentiels pour chaque droit d'accès. Vous pouvez exiger jusqu'à cinq approbations par niveau.
Une fois le nombre requis d'approbations de premier niveau reçu, des notifications par e-mail sont envoyées aux approbateurs de deuxième niveau. Une fois le nombre requis d'approbations de deuxième niveau reçu, l'accès passe à l'état
active
. Si un approbateur refuse l'accès, la demande passe à l'étatdenied
et n'est pas envoyée à d'autres approbateurs.Cette fonctionnalité est disponible en version preview.
Si les comptes de service sont autorisés à approuver les attributions pour cette ressource, vous pouvez ajouter des comptes de service et des identités de pool de charges de travail en tant qu'approbateurs. Pour savoir comment activer ce paramètre, consultez Configurer les paramètres de Privileged Access Manager.
Cette fonctionnalité est disponible en version preview.
Si vous ajoutez un groupe en tant que demandeur à un droit d'accès, tous les comptes individuels de ce groupe peuvent demander une autorisation pour ce droit d'accès. Toutefois, seul le compte individuel qui demande l'accès peut bénéficier de privilèges élevés.
Si vous ajoutez un groupe en tant qu'approbateur à un droit d'accès, tous les comptes individuels de ce groupe peuvent approuver ou refuser une demande d'accès.
Les rôles de base (administrateur, rédacteur et lecteur) sont acceptés, mais pas les anciens rôles de base (propriétaire, éditeur et lecteur).
N'incluez pas les rôles d'agent de service dans les droits d'accès.
Certains rôles d'agents de service contiennent des autorisations très puissantes, qui peuvent être modifiées sans préavis. Choisissez plutôt un autre rôle prédéfini ou créez un rôle personnalisé avec les autorisations dont vous avez besoin.
Avant de commencer
Pour obtenir les autorisations nécessaires pour créer des droits d'accès, demandez à votre administrateur de vous accorder les rôles IAM suivants sur l'organisation, le dossier ou le projet pour lesquels vous souhaitez créer des droits d'accès :
-
Créez des droits d'accès pour une organisation :
-
Administrateur Privileged Access Manager (
roles/privilegedaccessmanager.admin
) -
Administrateur de sécurité (
roles/iam.securityAdmin
)
-
Administrateur Privileged Access Manager (
-
Créer pour un dossier :
-
Administrateur Privileged Access Manager (
roles/privilegedaccessmanager.admin
) -
Administrateur IAM de dossiers (
roles/resourcemanager.folderAdmin
)
-
Administrateur Privileged Access Manager (
-
Créez des droits d'accès pour un projet :
-
Administrateur Privileged Access Manager (
roles/privilegedaccessmanager.admin
) -
Administrateur de projet IAM (
roles/resourcemanager.projectIamAdmin
)
-
Administrateur Privileged Access Manager (
-
Pour afficher les journaux d'audit :
Lecteur de journaux (
roles/logs.viewer
)
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ces rôles prédéfinis contiennent les autorisations requises pour créer des droits d'accès. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour créer des droits d'accès :
-
Pour créer des droits d'accès et des octrois d'autorisations pour une organisation :
-
resourcemanager.organizations.get
-
resourcemanager.organizations.setIamPolicy
-
privilegedaccessmanager.entitlements.create
-
-
Pour créer des droits d'accès et des octrois d'autorisations pour un dossier :
-
resourcemanager.folders.get
-
resourcemanager.folders.setIamPolicy
-
privilegedaccessmanager.entitlements.create
-
-
Pour créer des droits d'accès et des octrois d'autorisations pour un projet :
-
resourcemanager.projects.get
-
resourcemanager.projects.setIamPolicy
-
privilegedaccessmanager.entitlements.create
-
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Créer des droits d'accès
Console
Accédez à la page Privileged Access Manager.
Sélectionnez l'organisation, le dossier ou le projet auxquels vous souhaitez appliquer le droit d'accès.
Cliquez sur l'onglet Droits d'accès.
Cliquez sur Créer.
Dans la section Détails des droits d'accès, saisissez les informations suivantes :
Nom d'un droit d'accès. Un nom de droit d'accès peut comporter entre 4 et 63 caractères. Il doit commencer par une lettre minuscule et ne peut contenir que des lettres minuscules, des chiffres et des traits d'union.
Jusqu'à 30 rôles peuvent être attribués à l'organisation, au dossier ou au projet.
Vous pouvez également ajouter des conditions IAM à ces rôles de la même manière que vous ajoutez des conditions aux liaisons de rôle de stratégie d'autorisation. Toutefois, dans les droits d'accès Privileged Access Manager, l'utilisation de conditions qui vérifient les tags d'une ressource est en version Preview.
Durée maximale d'une autorisation. La durée maximale que vous pouvez définir pour un droit d'accès est de sept jours.
Cliquez sur Suivant.
Dans la section Ajouter des demandeurs, saisissez jusqu'à 20 comptes principaux de demandeur valides pour le droit d'accès.
Tous les types de comptes principaux sont acceptés, à l'exception de
allUsers
etallAuthenticatedUsers
. Vous pouvez ajouter plus de 20 identités en les ajoutant à un groupe et en listant le groupe dans le droit d'accès.Indiquez si les comptes principaux doivent fournir une justification pour la demande d'autorisation.
Saisissez les adresses e-mail supplémentaires des utilisateurs à prévenir lorsqu'un droit d'accès peut être demandé.
Les identités Google associées au droit d'accès, comme les approbateurs et les demandeurs, sont automatiquement notifiées. Toutefois, si vous souhaitez notifier d'autres personnes, vous pouvez ajouter leur adresse e-mail. Cela est particulièrement utile si vous utilisez des identités de personnel au lieu de comptes Google.
Cliquez sur Suivant.
Dans la section Ajouter des approbateurs, effectuez l'une des opérations suivantes :
Pour autoriser l'attribution de rôles sans approbation, sélectionnez Activer l'accès sans approbations.
Pour rendre les approbations obligatoires :
- Facultatif : Pour demander aux approbateurs de fournir une justification lorsqu'ils approuvent des demandes, sélectionnez Justification exigée de la part des approbateurs.
Saisissez les informations de l'approbateur de premier niveau :
Liste des approbateurs pour le droit d'accès
Vous pouvez ajouter l'un des types de comptes principaux suivants en tant qu'approbateurs :
Comptes Google
Groupes Google
Domaines Google Workspace
Identifiants de pool d'employés
Identifiants de pool de charges de travail
Comptes de service
Les comptes de service et les identifiants de pool de charges de travail ne sont disponibles que si les comptes de service sont autorisés à approuver les autorisations pour cette ressource. Pour en savoir plus, consultez Configurer les paramètres du gestionnaire d'accès privilégié.
Nombre d'approbations requis
Si vous avez ajouté un groupe en tant qu'approbateur, assurez-vous que le nombre d'approbations requises est inférieur ou égal au nombre de principaux du groupe. Sinon, les droits d'accès resteront bloqués indéfiniment à l'état
approval awaited
.Adresses e-mail des approbateurs pour les notifications
Facultatif : Ajoutez les informations sur l'approbateur de deuxième niveau :
Liste des approbateurs pour le droit d'accès
Vous pouvez ajouter l'un des types de comptes principaux suivants en tant qu'approbateurs :
Comptes Google
Groupes Google
Domaines Google Workspace
Identifiants de pool d'employés
Identifiants de pool de charges de travail
Comptes de service
Les comptes de service et les identifiants de pool de charges de travail ne sont disponibles que si les comptes de service sont autorisés à approuver les autorisations pour cette ressource. Pour en savoir plus, consultez Configurer les paramètres du gestionnaire d'accès privilégié.
Nombre d'approbations requis
Si vous avez ajouté un groupe en tant qu'approbateur, assurez-vous que le nombre d'approbations requises est inférieur ou égal au nombre de principaux du groupe. Sinon, les droits d'accès resteront bloqués indéfiniment à l'état
approval awaited
.Adresses e-mail des approbateurs pour les notifications
Vous pouvez ajouter jusqu'à 20 comptes principaux (identités ou groupes) approbateurs par approbation. Si vous souhaitez ajouter plus de 20 approbateurs, vous pouvez les ajouter à un groupe et lister le groupe comme approbateur pour le droit d'accès.
Cliquez sur Suivant.
Cliquez sur Créer un droit d'accès.
La propagation des droits d'accès nouvellement créés peut prendre quelques minutes avant qu'ils ne soient prêts à l'emploi.
gcloud
La commande
gcloud alpha pam entitlements create
crée un droit d'accès au niveau de l'organisation, du dossier ou du projet.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
ENTITLEMENT_ID
: ID du droit d'accès à créer. Un ID doit comporter entre 4 et 63 caractères et utiliser les caractères suivants :[a-z0-9-]
. Le premier caractère doit être une lettreRESOURCE_TYPE
: facultatif. Type de ressource auquel appartient le droit d'accès. Utilisez la valeurorganization
,folder
ouproject
.RESOURCE_ID
: utilisé avecRESOURCE_TYPE
. ID de l'organisation, du dossier ou du projet Cloud de Confiance 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
.RESOURCE_MANAGER_RESOURCE_TYPE
:Organization
,Folder
ouProject
, selon le champ d'application.ROLE
: rôles à attribuer lorsqu'un droit d'accès est accordé.MAXIMUM_GRANT_DURATION
: durée maximale pour laquelle une autorisation peut être demandée, en secondes. La plage acceptée est comprise entre 30 minutes (1 800) et 168 heures (604 800).-
REQUESTING_MEMBER
: comptes principaux pouvant demander l'octroi du droit d'accès. Tous les types de principaux sont acceptés, à l'exception deallUsers
etallAuthenticatedUsers
. -
APPROVING_MEMBER
: comptes principaux pouvant approuver la demande de droit d'accès. Les types de principaux valides sont les suivants :- Utilisateur
- Groupe
- Domaine
- Identifiants de pool d'employés
- Identifiants de pool de charges de travail
Cette option n'est disponible que si les comptes de service sont autorisés à approuver les demandes d'accès pour cette ressource. Pour en savoir plus, consultez Configurer les paramètres du gestionnaire d'accès privilégié.
- Comptes de service
Cette option n'est disponible que si les comptes de service sont autorisés à approuver les demandes d'accès pour cette ressource. Pour en savoir plus, consultez Configurer les paramètres du gestionnaire d'accès privilégié.
APPROVALS_NEEDED
: nombre d'approbateurs requis pour approuver la demande d'accès.Si vous avez ajouté un groupe en tant qu'approbateur, assurez-vous que le nombre d'approbations requises est inférieur ou égal au nombre de principaux du groupe. Sinon, les subventions resteront bloquées indéfiniment à l'état
approval awaited
.APPROVER_EMAIL_ADDRESSES
: facultatif. Adresses e-mail supplémentaires à notifier lorsqu'une autorisation d'accès a été demandée. Les identités Google associées aux approbateurs d'attribution sont automatiquement notifiées. Toutefois, vous pouvez choisir d'envoyer des notifications à un autre ensemble d'adresses e-mail, en particulier si vous utilisez la fédération d'identité de personnel.ADMIN_EMAIL_ADDRESS
: facultatif. Adresses e-mail supplémentaires à notifier lorsqu'un demandeur obtient l'accès. Les identités Google associées aux approbateurs d'attribution sont automatiquement notifiées. Toutefois, vous pouvez choisir d'envoyer des notifications à un autre ensemble d'adresses e-mail, en particulier si vous utilisez la fédération d'identité de personnel.REQUESTER_EMAIL_ADDRESS
: facultatif. Adresses e-mail supplémentaires à notifier lorsque ce droit d'accès peut être demandé. Les identités Google associées aux demandeurs d'attribution sont automatiquement notifiées. Toutefois, vous pouvez choisir d'envoyer des notifications à un autre ensemble d'adresses e-mail, en particulier si vous utilisez la fédération d'identité de personnel.CONDITION_EXPRESSION
: facultatif. L'expression de condition qui spécifie quand le compte principal peut utiliser les autorisations du rôle. Cette condition ne s'applique que lorsque l'autorisation est active.
Enregistrez le code suivant dans un fichier nommé entitlement.yaml
:
privilegedAccess: gcpIamAccess: resourceType: cloudresourcemanager.googleapis.com/RESOURCE_MANAGER_RESOURCE_TYPE resource: //cloudresourcemanager.googleapis.com/RESOURCE_ID roleBindings: - role: ROLE_1 conditionExpression: CONDITION_EXPRESSION_1 - role: ROLE_2 conditionExpression: CONDITION_EXPRESSION_2 maxRequestDuration: MAXIMUM_GRANT_DURATION eligibleUsers: - principals: - REQUESTING_MEMBER_1 - REQUESTING_MEMBER_2 approvalWorkflow: manualApprovals: requireApproverJustification: true steps: - approvalsNeeded: APPROVALS_NEEDED_1 approverEmailRecipients: - APPROVER_EMAIL_ADDRESSES_1 - APPROVER_EMAIL_ADDRESSES_2 approvers: - principals: - APPROVING_MEMBER_1 - APPROVING_MEMBER_2 - approvalsNeeded: APPROVALS_NEEDED_2 approverEmailRecipients: - APPROVER_EMAIL_ADDRESSES_3 - APPROVER_EMAIL_ADDRESSES_4 approvers: - principals: - APPROVING_MEMBER_3 - APPROVING_MEMBER_4 requesterJustificationConfig: unstructured: {} additionalNotificationTargets: adminEmailRecipients: - ADMIN_EMAIL_ADDRESS_1 - ADMIN_EMAIL_ADDRESS_2 requesterEmailRecipients: - REQUESTER_EMAIL_ADDRESS_1 - REQUESTER_EMAIL_ADDRESS_2
Exécutez la commande suivante :
Linux, macOS ou Cloud Shell
gcloud alpha pam entitlements create \ ENTITLEMENT_ID \ --entitlement-file=entitlement.yaml \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud alpha pam entitlements create ` ENTITLEMENT_ID ` --entitlement-file=entitlement.yaml ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud alpha pam entitlements create ^ ENTITLEMENT_ID ^ --entitlement-file=entitlement.yaml ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
Vous devriez obtenir un résultat semblable à celui-ci :
Create request issued for: [ENTITLEMENT_ID] Waiting for operation [projects/PROJECT_ID/locations/global/operations/OPERATION_ID] to complete...done. Created entitlement [ENTITLEMENT_ID]. additionalNotificationTargets: {} approvalWorkflow: manualApprovals: requireApproverJustification: true steps: - id: step-1 approvalsNeeded: 3 approvers: - principals: - user:alex@example.com - group:dev-team@example.com - id: step-2 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/RESOURCE_TYPE/RESOURCE_ID resourceType: cloudresourcemanager.googleapis.com/Project roleBindings: - role: roles/storage.admin id: hwarq_1 conditionExpression: "request.time.getHours() >= 8" requesterJustificationConfig: unstructured: {} state: AVAILABLE
REST
La méthode createEntitlement
de l'API Privileged Access Manager crée un droit d'accès au niveau de l'organisation, du dossier ou du projet.
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
.ENTITLEMENT_ID
: ID du droit d'accès à créer. Un ID doit comporter entre 4 et 63 caractères et utiliser les caractères suivants :[a-z0-9-]
. Le premier caractère doit être une lettreRESOURCE_MANAGER_RESOURCE_TYPE
:Organization
,Folder
ouProject
, selon le champ d'application.ROLE
: rôles à attribuer lorsqu'un droit d'accès est accordé.MAXIMUM_GRANT_DURATION
: durée maximale pour laquelle une autorisation peut être demandée, en secondes. La plage acceptée est comprise entre 30 minutes (1 800) et 168 heures (604 800).-
REQUESTING_MEMBER
: comptes principaux pouvant demander l'octroi du droit d'accès. Tous les types de principaux sont acceptés, à l'exception deallUsers
etallAuthenticatedUsers
. -
APPROVING_MEMBER
: comptes principaux pouvant approuver la demande de droit d'accès. Les types de principaux valides sont les suivants :- Utilisateur
- Groupe
- Domaine
- Identifiants de pool d'employés
- Identifiants de pool de charges de travail
Cette option n'est disponible que si les comptes de service sont autorisés à approuver les demandes d'accès pour cette ressource. Pour en savoir plus, consultez Configurer les paramètres du gestionnaire d'accès privilégié.
- Comptes de service
Cette option n'est disponible que si les comptes de service sont autorisés à approuver les demandes d'accès pour cette ressource. Pour en savoir plus, consultez Configurer les paramètres du gestionnaire d'accès privilégié.
APPROVALS_NEEDED
: nombre d'approbateurs requis pour approuver la demande d'accès.Si vous avez ajouté un groupe en tant qu'approbateur, assurez-vous que le nombre d'approbations requises est inférieur ou égal au nombre de principaux du groupe. Sinon, les subventions resteront bloquées indéfiniment à l'état
approval awaited
.APPROVER_EMAIL_ADDRESSES
: facultatif. Adresses e-mail supplémentaires à notifier lorsqu'une autorisation d'accès a été demandée. Les identités Google associées aux approbateurs d'attribution sont automatiquement notifiées. Toutefois, vous pouvez choisir d'envoyer des notifications à un autre ensemble d'adresses e-mail, en particulier si vous utilisez la fédération d'identité de personnel.ADMIN_EMAIL_ADDRESS
: facultatif. Adresses e-mail supplémentaires à notifier lorsqu'un demandeur obtient l'accès. Les identités Google associées aux approbateurs d'attribution sont automatiquement notifiées. Toutefois, vous pouvez choisir d'envoyer des notifications à un autre ensemble d'adresses e-mail, en particulier si vous utilisez la fédération d'identité de personnel.REQUESTER_EMAIL_ADDRESS
: facultatif. Adresses e-mail supplémentaires à notifier lorsque ce droit d'accès peut être demandé. Les identités Google associées aux demandeurs d'attribution sont automatiquement notifiées. Toutefois, vous pouvez choisir d'envoyer des notifications à un autre ensemble d'adresses e-mail, en particulier si vous utilisez la fédération d'identité de personnel.CONDITION_EXPRESSION
: facultatif. L'expression de condition qui spécifie quand le compte principal peut utiliser les autorisations du rôle. Cette condition ne s'applique que lorsque l'autorisation est active.
Méthode HTTP et URL :
POST https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements?entitlementId=ENTITLEMENT_ID
Corps JSON de la requête :
{ "privilegedAccess": { "gcpIamAccess": { "resourceType": "cloudresourcemanager.googleapis.com/RESOURCE_MANAGER_RESOURCE_TYPE", "resource": "//cloudresourcemanager.googleapis.com/SCOPE", "roleBindings": [ { "role": "ROLE_1", "conditionExpression": "CONDITION_EXPRESSION_1", }, { "role": "ROLE_2", "conditionExpression": "CONDITION_EXPRESSION_2", }, ] } }, "maxRequestDuration": "MAXIMUM_GRANT_DURATION", "eligibleUsers": [ { "principals": [ "REQUESTING_MEMBER_1", "REQUESTING_MEMBER_2", ... ] } ], "approvalWorkflow": { "manualApprovals": { "requireApproverJustification": true, "steps": [ { "approvers": [ { "principals": [ "APPROVING_MEMBER_1", "APPROVING_MEMBER_2", ] } ], "approvalsNeeded": APPROVALS_NEEDED_1, "approverEmailRecipients": [ "APPROVER_EMAIL_ADDRESSES_1", "APPROVER_EMAIL_ADDRESSES_2", ] }, { "approvers": [ { "principals": [ "APPROVING_MEMBER_3", "APPROVING_MEMBER_4", ] } ], "approvalsNeeded": APPROVALS_NEEDED_2, "approverEmailRecipients": [ "APPROVER_EMAIL_ADDRESSES_3", "APPROVER_EMAIL_ADDRESSES_4", ] } ] } }, "requesterJustificationConfig": { "unstructured": { } }, "additionalNotificationTargets": { "adminEmailRecipients": [ "ADMIN_EMAIL_ADDRESS_1", "ADMIN_EMAIL_ADDRESS_2", ], "requesterEmailRecipients": [ "REQUESTER_EMAIL_ADDRESS_1", "REQUESTER_EMAIL_ADDRESS_2", ] } }
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_ID/locations/global/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.privilegedaccessmanager.v1beta.OperationMetadata", "createTime": "2024-03-05T03:35:14.596739353Z", "target": "projects/PROJECT_ID/locations/global/entitlements/ENTITLEMENT_ID", "verb": "create", "requestedCancellation": false, "apiVersion": "v1beta" }, "done": false }
Pour vérifier la progression d'une opération de création, 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
Terraform
Vous pouvez utiliser Terraform pour créer des droits d'accès. Pour en savoir plus, consultez google_privileged_access_manager_entitlement dans la documentation Terraform. La propagation des droits d'accès nouvellement créés peut prendre quelques minutes avant qu'ils ne soient prêts à l'emploi.
Config Connector
Vous pouvez utiliser Kubernetes Config Connector pour créer des droits d'accès. Pour en savoir plus, consultez PrivilegedAccessManagerEntitlement dans la documentation Config Connector. La propagation des droits d'accès nouvellement créés peut prendre quelques minutes avant qu'ils ne soient prêts à l'emploi.
Étapes suivantes
- Afficher, modifier et supprimer des droits d'accès
- Configurer les paramètres de Privileged Access Manager
- Auditer les événements de droits d'accès