Chaque sujet (utilisateur ou groupe) suit un processus en deux étapes pour accéder au serveur d'API global. Accorder à un sujet des autorisations sur le serveur d'API global à l'aide de IAMRoleBinding
pour un IAMRole
prédéfini. Tous les rôles et liaisons de rôle sont globaux.
Les personas (IO, PA, AO) ne sont pas des rôles, mais des ensembles de rôles utilisateur mappés à des autorisations spécifiques et attribués à des utilisateurs individuels.
Configurer les liaisons de rôle
Vous pouvez configurer des liaisons de rôle qui donnent aux membres de l'équipe accès aux ressources au niveau de l'organisation ou du projet.
Pour obtenir les autorisations nécessaires pour configurer les liaisons de rôle, demandez à votre administrateur IAM de l'organisation de vous accorder le rôle d'administrateur IAM de l'organisation.
Pour attribuer un rôle à un membre autorisé, procédez comme suit :
Console
- Connectez-vous à la console GDC.
- Sélectionnez une organisation ou un projet dans le sélecteur de couverture.
- Pour configurer des liaisons de rôle pour une organisation, sélectionnez-la.
- Pour configurer des liaisons de rôle pour un projet, sélectionnez-le.
- Dans le menu de navigation, cliquez sur Identité et accès > Accès.
- Cliquez sur Ajouter un membre.
- Indiquez si vous souhaitez ajouter des utilisateurs individuels ou des groupes.
- Dans la liste Fournisseur d'identité, sélectionnez un fournisseur d'identité.
- Dans le champ Nom d'utilisateur ou alias de groupe, saisissez le nom d'utilisateur, l'adresse e-mail ou l'alias.
- Dans la liste Rôle, sélectionnez le rôle que vous souhaitez attribuer à l'utilisateur ou au groupe, par exemple Lecteur d'organisation au niveau de l'organisation ou Créateur de projet au niveau du projet.
- Cliquez sur Ajouter.
Le membre apparaît dans la liste Membre autorisé.
gdcloud
Assurez-vous d'avoir installé gdcloud CLI.
Connectez-vous à l'aide de la commande
gdcloud auth login
pour vous authentifier auprès de votre fournisseur d'identité. Pour en savoir plus, consultez la section Authentification gdcloud CLI.Configurez les liaisons de rôle.
Configurez des liaisons de rôle pour une organisation :
gdcloud organizations add-iam-policy-binding ORGANIZATION \ --member=USER_ACCOUNT \ --role= ROLE
Remplacez les variables suivantes :
ORGANIZATION
: nom de l'organisation pour laquelle vous configurez l'association de rôle.USER_ACCOUNT
: compte utilisateur auquel vous souhaitez attribuer le rôle. Cet indicateur accepte une adresse e-mail d'utilisateur avec le préfixe du fournisseur d'identité (user:idpprefix-user@example.com
) ou un nom de compte de service avec le projet de compte de service (serviceAccount:projectName:serviceAccountName
).ROLE
: nom du rôle prédéfini ou personnalisé que vous souhaitez attribuer à l'utilisateur.
Configurez des liaisons de rôle pour un projet :
gdcloud projects add-iam-policy-binding PROJECT \ --member=USER_ACCOUNT \ --role= ROLE
Remplacez les variables suivantes :
PROJECT
: nom du projet pour lequel vous configurez l'association de rôle.USER_ACCOUNT
: compte utilisateur auquel vous souhaitez attribuer le rôle. Cet indicateur accepte une adresse e-mail d'utilisateur avec le préfixe du fournisseur d'identité (user:idpprefix-user@example.com
) ou un nom de compte de service avec le projet de compte de service (serviceAccount:projectName:serviceAccountName
).ROLE
: nom du rôle prédéfini ou personnalisé que vous souhaitez attribuer à l'utilisateur.
API
Exportez les identifiants utilisateur que vous utilisez :
export GLOBAL_API_SERVER_KUBECONFIG=GLOBAL_API_SERVER_KUBECONFIG
Exportez le compte utilisateur auquel vous souhaitez attribuer le rôle, y compris le préfixe du fournisseur d'identité (par exemple,
idpprefix-paul@example.com
) :export USERNAME=IDP_PREFIX-USER_EMAIL
Exportez le nom du rôle dont l'utilisateur a besoin, par exemple
project-creator
. Consultez les définitions des rôles pour trouver le rôle correspondant.export ROLE_NAME=ROLE_NAME
Exportez l'espace de noms dans lequel la liaison doit être créée :
export BINDING_NAMESPACE=BINDING_NAMESPACE
Remplacez BINDING_NAMESPACE par
platform
pour les rôles à l'échelle de l'organisation, ou par le nom de l'espace de noms du projet cible pour les rôles à l'échelle du projet.Pour obtenir la liste des rôles et de leur champ d'application, consultez Définitions des rôles.
Créez et appliquez une ressource personnalisée
IAMRoleBinding
:cat <<EOF | kubectl --kubeconfig ${GLOBAL_API_SERVER_KUBECONFIG} apply -f - apiVersion: iam.global.gdc.goog/v1 kind: IAMRoleBinding metadata: name: ${USERNAME}-${ROLE_NAME}-binding namespace: ${BINDING_NAMESPACE} spec: roleRef: apiGroup: iam.global.gdc.goog kind: IAMRole name: ${ROLE_NAME} subjects: - apiGroup: rbac.authorization.k8s.io kind: User name: ${USERNAME} EOF
Supprimer des liaisons de rôle
Lorsque l'accès n'est plus nécessaire, supprimez un membre ainsi que les rôles, autorisations et accès qui lui sont associés.
Pour supprimer des membres, procédez comme suit :
Console
- Connectez-vous à la console GDC.
- Dans le menu de navigation, cliquez sur Identité et accès > Accès.
- Dans la liste Membres autorisés, sélectionnez un membre.
- Cliquez sur Supprimer le membre.
- Lorsque vous y êtes invité, cliquez sur Supprimer le membre pour confirmer.
gdcloud
Assurez-vous d'avoir installé gdcloud CLI.
Connectez-vous à l'aide de la commande
gdcloud auth login
pour vous authentifier auprès de votre fournisseur d'identité. Pour en savoir plus, consultez la section Authentification gdcloud CLI.Supprimez les liaisons de rôle.
Supprimez les liaisons de rôle pour une organisation :
gdcloud organizations remove-iam-policy-binding ORGANIZATION \ --member=USER_ACCOUNT \ --role= ROLE
Remplacez les variables suivantes :
ORGANIZATION
: nom de l'organisation à partir de laquelle vous supprimez l'association de rôle.USER_ACCOUNT
: compte utilisateur dont vous souhaitez supprimer le rôle. Cet indicateur accepte une adresse e-mail d'utilisateur avec le préfixe du fournisseur d'identité (user:idpprefix-user@example.com
) ou un nom de compte de service avec le projet de compte de service (serviceAccount:projectName:serviceAccountName
).ROLE
: nom du rôle prédéfini ou personnalisé que vous souhaitez supprimer du compte utilisateur.
Supprimez les liaisons de rôle pour un projet :
gdcloud projects remove-iam-policy-binding PROJECT \ --member=USER_ACCOUNT \ --role= ROLE
Remplacez les variables suivantes :
PROJECT
: nom du projet à partir duquel vous supprimez l'association de rôle.USER_ACCOUNT
: compte utilisateur dont vous souhaitez supprimer le rôle. Cet indicateur accepte une adresse e-mail d'utilisateur avec le préfixe du fournisseur d'identité (user:idpprefix-user@example.com
) ou un nom de compte de service avec le projet de compte de service (serviceAccount:projectName:serviceAccountName
).ROLE
: nom du rôle prédéfini ou personnalisé que vous souhaitez supprimer du compte utilisateur.
API
Supprimez IAMRoleBinding
pour révoquer l'autorisation accordée au compte PA :
kubectl --kubeconfig GLOBAL_API_SERVER_KUBECONFIG \
delete iamrolebinding USERNAME-ROLE_NAME-binding -n BINDING_NAMESPACE
Remplacez les éléments suivants :
- GLOBAL_API_SERVER_KUBECONFIG : chemin d'accès au fichier kubeconfig pour accéder au serveur d'API mondial.
- USERNAME : compte utilisateur pour lequel vous souhaitez supprimer le rôle, y compris le préfixe du fournisseur d'identité (par exemple,
idpprefix-paul@example.com
). - ROLE_NAME : nom du rôle que vous souhaitez supprimer, par exemple
project-creator
. - BINDING_NAMESPACE : remplacez par
platform
pour les rôles à portée d'organisation ou par le nom de l'espace de noms du projet cible pour les rôles à portée de projet.
Révoquer l'accès d'un utilisateur
Si un membre quitte votre organisation ou votre équipe, vous pouvez révoquer son accès à Google Distributed Cloud (GDC) air-gapped. Si vous révoquez l'accès d'un utilisateur, il est déconnecté de Distributed Cloud et ses rôles et autorisations sont supprimés. Vous pouvez également lister l'activité et les sessions de l'utilisateur en indiquant leur heure de début et de fin.
Pour révoquer l'accès d'un utilisateur à un univers GDC, vous devez révoquer l'accès à chaque zone individuelle séparément. Procédez comme suit pour chaque zone :
Assurez-vous d'être connecté à la zone pour laquelle vous souhaitez révoquer l'accès. Par exemple, définissez la configuration de l'URL zonale pour la CLI gdcloud, puis connectez-vous :
gdcloud config set organization_console_url ZONE_URL gdcloud auth login
Remplacez
ZONE_URL
par l'URL de la console GDC pour la zone pour laquelle vous souhaitez révoquer l'accès utilisateur, qui ressemble àhttps://console.ORG_NAME.ZONE_NAME.ORG_SUFFIX
.Pour en savoir plus sur le changement de contexte zonal, consultez Gérer les ressources dans les zones.
Obtenez les autorisations nécessaires pour révoquer les utilisateurs. Demandez à votre administrateur IAM de l'organisation de vous attribuer le rôle Administrateur de session de l'organisation (
org-session-admin
).Révoquez l'accès de l'utilisateur à la zone :
gdcloud admin auth revoke --accounts USER_EMAIL
Remplacez USER_EMAIL par l'adresse e-mail de l'utilisateur dont vous souhaitez révoquer l'accès.
Une fois la commande exécutée, un résultat semblable à celui-ci s'affiche : Cet exemple révoque l'accès de l'utilisateur
ariel@example.com
:Success: NUMBER of sessions revoked for user ariel@example.com
Dans cet exemple, la variable NUMBER fait référence au nombre de sessions actives de l'utilisateur.
Confirmez que vous avez révoqué l'accès de l'utilisateur en exécutant à nouveau la commande
gdcloud admin auth revoke
. Si l'opération réussit, vous obtenez le résultat suivant :No sessions found for account: ariel@example.com
Répétez les étapes précédentes pour chaque zone de votre univers.