Cette page explique comment contrôler l'accès aux ressources Agent Registry.
Le registre d'agents utilise Identity and Access Management (IAM) pour contrôler l'accès aux ressources. IAM est un outil permettant de gérer les autorisations de manière ultra-précise pour vos ressources Google Cloud . En d'autres termes, IAM vous permet de contrôler qui peut faire quoi sur quelles ressources.
Pour permettre aux utilisateurs d'accéder à une ressource avec IAM, vous leur attribuez des rôles spécifiques. Les rôles IAM accordent aux comptes principaux les autorisations nécessaires pour effectuer des tâches sur vos ressources Agent Registry.
Pour en savoir plus sur IAM et ses fonctionnalités, consultez la documentation IAM.
Gérer l'accès aux ressources Agent Registry
La méthode la plus courante pour gérer les accès avec IAM consiste à utiliser des stratégies d'autorisation. Les stratégies d'autorisation listent les comptes principaux qui ont accès à la ressource et les actions qu'ils peuvent effectuer sur celle-ci.
Les sections suivantes décrivent comment gérer l'accès avec des stratégies d'autorisation à l'aide de la console Google Cloud et de la Google Cloud CLI. Cela inclut les procédures pour les tâches courantes, telles que l'attribution et la révocation d'un rôle unique. Vous pouvez également attribuer et révoquer plusieurs rôles en même temps. Pour en savoir plus, consultez Gérer l'accès aux projets, aux dossiers et aux organisations dans la documentation IAM.
Vous pouvez également utiliser des stratégies d'autorisation associées à différentes ressources Google Cloud pour gérer l'accès à d'autres niveaux de la hiérarchie des ressources. Pour en savoir plus, consultez Utiliser la hiérarchie des ressources pour le contrôle des accès dans la documentation IAM.
Les ressources ne sont pas toutes compatibles avec les stratégies d'autorisation. Pour savoir à quelles ressources vous pouvez associer des stratégies d'autorisation, consultez Ressources compatibles avec les stratégies d'autorisation dans la documentation IAM.
Pour en savoir plus sur les autres stratégies que vous pouvez utiliser pour contrôler l'accès avec IAM, telles que les stratégies de refus, consultez Types de stratégies IAM dans la documentation IAM.
Attribuer un seul rôle IAM à un projet, un dossier ou une organisation
Cette section explique comment accorder l'accès au niveau du projet, du dossier ou de l'organisation. Cela contrôle l'accès d'un utilisateur au projet, au dossier ou à l'organisation, ainsi qu'à toutes les ressources qu'il contient.
Pour attribuer un rôle unique à un compte principal sur un projet, un dossier ou une organisation, procédez comme suit :
Console
- Dans la console Google Cloud , accédez à la page IAM.
- Sélectionnez un projet, un dossier ou une organisation.
- Sélectionnez un compte principal auquel attribuer un rôle :
- Pour attribuer un rôle supplémentaire à un compte principal sur la ressource, recherchez une ligne contenant le compte principal, cliquez sur Modifier le compte principal sur cette ligne, puis cliquez sur Ajouter un autre rôle.
Pour attribuer un rôle à un agent de service, cochez la case Inclure les attributions de rôles fournies par Google pour afficher son adresse e-mail.
- Pour attribuer un rôle à un compte principal qui ne dispose d'aucun rôle sur la ressource, cliquez sur Accorder l'accès, puis saisissez un identifiant de compte principal (par exemple,
ou//iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com).
- Pour attribuer un rôle supplémentaire à un compte principal sur la ressource, recherchez une ligne contenant le compte principal, cliquez sur Modifier le compte principal sur cette ligne, puis cliquez sur Ajouter un autre rôle.
- Sélectionnez un rôle à attribuer dans la liste déroulante. Pour respecter les bonnes pratiques de sécurité, choisissez un rôle qui n'inclut que les autorisations dont votre compte principal a besoin.
- Facultatif : ajoutez une condition au rôle.
- Cliquez sur Enregistrer. Le rôle est attribué au compte principal sur la ressource.
gcloud
-
Dans la console Google Cloud , activez Cloud Shell.
En bas de la fenêtre de la console Google Cloud , une session Cloud Shell démarre et affiche une invite de ligne de commande. Cloud Shell est un environnement de shell dans lequel la Google Cloud CLI est déjà installée, et dans lequel des valeurs sont déjà définies pour votre projet actuel. L'initialisation de la session peut prendre quelques secondes.
-
La commande
add-iam-policy-bindingvous permet d'attribuer rapidement un rôle à un compte principal.Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
-
RESOURCE_TYPE: type de ressource dont vous souhaitez gérer l'accès. Utilisezprojects,resource-manager foldersouorganizations. -
RESOURCE_ID: ID de votre projet, dossier ou organisation Google Cloud . Les ID de projets sont alphanumériques, par exemplemy-project. Les ID de dossier et d'organisation sont numériques, tels que123456789012. -
PRINCIPAL: identifiant du compte principal ou membre, se présentant généralement sous la forme suivante :PRINCIPAL_TYPE:ID. Par exemple,ouprincipalSet://iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com. Pour obtenir la liste complète des valeurs possibles pourPRINCIPAL, consultez Identifiants principaux. -
ROLE_NAME: nom du rôle que vous souhaitez attribuer. Utilisez l'un des formats suivants :- Rôles prédéfinis :
roles/SERVICE.IDENTIFIER - Rôles personnalisés au niveau du projet :
projects/PROJECT_ID/roles/IDENTIFIER - Rôles personnalisés au niveau de l'organisation :
organizations/ORG_ID/roles/IDENTIFIER
Pour obtenir la liste complète des rôles prédéfinis, consultez la page Comprendre les rôles.
- Rôles prédéfinis :
-
CONDITION: condition à ajouter à la liaison de rôle. Si vous ne souhaitez pas ajouter de condition, utilisez la valeurNone. Pour en savoir plus sur les conditions, consultez la présentation des conditions.
Exécutez la commande suivante :
Linux, macOS ou Cloud Shell
gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID \ --member=PRINCIPAL --role=ROLE_NAME \ --condition=CONDITION
Windows (PowerShell)
gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID ` --member=PRINCIPAL --role=ROLE_NAME ` --condition=CONDITION
Windows (cmd.exe)
gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID ^ --member=PRINCIPAL --role=ROLE_NAME ^ --condition=CONDITION
La réponse contient la stratégie d'autorisation IAM mise à jour.
-
Révoquer un seul rôle IAM sur un projet, un dossier ou une organisation
Cette section explique comment révoquer l'accès au niveau du projet, du dossier ou de l'organisation. Cela contrôle l'accès d'un utilisateur au projet, au dossier ou à l'organisation, ainsi qu'à toutes les ressources qu'il contient.
Pour révoquer un rôle d'un compte principal sur un projet, un dossier ou une organisation, procédez comme suit :
Console
- Dans la console Google Cloud , accédez à la page IAM.
- Sélectionnez un projet, un dossier ou une organisation.
- Recherchez la ligne contenant le compte principal dont vous souhaitez révoquer l'accès. Cliquez ensuite sur Modifier le compte principal sur cette ligne.
- Cliquez sur le bouton Supprimer () correspondant au rôle que vous souhaitez révoquer, puis cliquez sur Enregistrer.
gcloud
-
Dans la console Google Cloud , activez Cloud Shell.
En bas de la fenêtre de la console Google Cloud , une session Cloud Shell démarre et affiche une invite de ligne de commande. Cloud Shell est un environnement de shell dans lequel la Google Cloud CLI est déjà installée, et dans lequel des valeurs sont déjà définies pour votre projet actuel. L'initialisation de la session peut prendre quelques secondes.
-
Pour révoquer un rôle d'un utilisateur, exécutez la commande
remove-iam-policy-binding:gcloud RESOURCE_TYPE remove-iam-policy-binding RESOURCE_ID \ --member=PRINCIPAL --role=ROLE_NAME
Indiquez les valeurs suivantes :
-
RESOURCE_TYPE: type de ressource dont vous souhaitez gérer l'accès. Utilisezprojects,resource-manager foldersouorganizations. -
RESOURCE_ID: ID de votre projet, dossier ou organisation Google Cloud . Les ID de projets sont alphanumériques, par exemplemy-project. Les ID de dossier et d'organisation sont numériques, tels que123456789012. -
PRINCIPAL: l'identifiant du compte principal, ou du membre, qui se présente généralement sous la forme suivante :PRINCIPAL_TYPE:ID. Par exemple,ouprincipalSet://iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com. -
ROLE_NAME: nom du rôle que vous souhaitez révoquer. Utilisez l'un des formats suivants :- Rôles prédéfinis :
roles/SERVICE.IDENTIFIER - Rôles personnalisés au niveau du projet :
projects/PROJECT_ID/roles/IDENTIFIER - Rôles personnalisés au niveau de l'organisation :
organizations/ORG_ID/roles/IDENTIFIER
Pour obtenir la liste complète des rôles prédéfinis, consultez la page Comprendre les rôles.
- Rôles prédéfinis :
Par exemple, pour révoquer le rôle de créateur de projet du compte de service
example-service-account@example-project.sur le projetexample-project, procédez comme suit :gcloud projects remove-iam-policy-binding example-project \ --member=serviceAccount:example-service-account@example-project. \ --role=roles/resourcemanager.projectCreator
-
Pour éviter de révoquer les rôles nécessaires, vous pouvez activer les recommandations pour la modification des risques. Les recommandations de modification de risque génèrent des avertissements lorsque vous essayez de révoquer des rôles au niveau du projet que Google Cloud a identifiés comme importants.
Accès conditionnel
Les conditions IAM vous permettent d'affiner vos stratégies en n'accordant l'accès aux comptes principaux que lorsque certaines conditions spécifiées sont remplies. Les conditions sont basées sur des attributs liés au compte principal, à la ressource et à la requête. Par exemple, vous pouvez accorder l'accès à un compte principal uniquement s'il accède à la ressource depuis un emplacement spécifique ou à un moment précis.
Les conditions des stratégies d'autorisation sont basées sur les types d'attributs suivants :
- Attributs de ressource : inclut le service, le type ou le nom de la ressource. Ces attributs sont généralement utilisés pour modifier le champ d'application d'un accès accordé par une liaison de rôle.
- Attributs de requête : inclut des détails sur la requête, tels que l'heure ou le niveau d'accès du compte principal qui a effectué la requête. Ces attributs vous permettent de créer des conditions qui évaluent des détails sur la requête, tels que son niveau d'accès, sa date et son heure, l'adresse IP et le port de destination, ou le chemin d'URL attendu.
Pour en savoir plus sur les attributs de condition compatibles avec Agent Registry, consultez la documentation de référence sur les attributs pour les conditions IAM dans la documentation IAM.
Vous ne pouvez pas accorder d'accès conditionnel directement sur les ressources Agent Registry. Toutefois, vous pouvez accorder un accès conditionnel aux types de ressources Agent Registry en attribuant des rôles aux comptes principaux sur une ressource de conteneur, comme un projet, un dossier ou une organisation, et en ajoutant des conditions à ces liaisons de rôles. Les conditions ajoutées à la stratégie d'autorisation d'une ressource de conteneur sont héritées par les ressources incluses dans cette ressource de conteneur. Pour en savoir plus sur les conditions héritées, consultez Compatibilité avec les conditions héritées dans la documentation IAM.
Pour savoir comment ajouter des conditions aux liaisons de rôles, consultez Gérer les liaisons de rôles conditionnelles dans la documentation IAM.
Étapes suivantes
- Pour en savoir plus sur le contrôle des accès avec IAM, consultez la présentation d'IAM.
- Pour afficher les rôles et autorisations disponibles pour Agent Registry, consultez Rôles et autorisations Agent Registry.
- Découvrez comment vous authentifier auprès des outils et des ressources.
- En savoir plus sur l'identité et les identifiants dans Agent Registry
- Découvrez comment configurer des règles d'agent IAM avec IAP et Agent Gateway.