Google Cloud propose Identity and Access Management (IAM), qui vous permet de définir de manière plus précise l'accès à des ressources spécifiques de Google Cloud et d'empêcher tout accès indésirable à d'autres ressources. IAM vous permet d'adopter le principe de sécurité du moindre privilège afin de n'accorder que l'accès nécessaire à vos ressources.
Grâce à IAM, vous pouvez contrôler qui (utilisateurs) bénéficie de quel type d'accès (rôles) à quelles ressources en définissant des stratégies IAM. Ces stratégies permettent d'attribuer des rôles spécifiques associés à certaines autorisations.
Cette page décrit les autorisations et les rôles IAM que vous pouvez utiliser pour gérer l'accès aux projets. Pour une description détaillée de IAM, veuillez consulter la documentation IAM, et en particulier la page Accorder, modifier et révoquer les accès à des ressources.
Autorisations et rôles
Pour contrôler l'accès aux ressources, Google Cloud exige que les comptes effectuant des requêtes API disposent de rôles IAM appropriés. Les rôles IAM incluent des autorisations permettant aux utilisateurs d'effectuer des actions spécifiques sur les ressources Google Cloud. Par exemple, l'autorisation resourcemanager.organizations.list
permet à un utilisateur de lister les ressources de l'organisation dont il est propriétaire, tandis que resourcemanager.projects.delete
lui permet de supprimer un projet.
Vous n'accordez pas directement des autorisations aux utilisateurs, mais vous leur attribuez des rôles auxquels sont associées une ou plusieurs autorisations. Ces rôles sont accordés sur une ressource particulière, mais ils s'appliquent également à tous les descendants de cette ressource dans la hiérarchie des ressources.
Autorisations
Pour gérer des projets, l'appelant doit disposer d'un rôle comprenant les autorisations suivantes. Le rôle est attribué sur la ressource ou le dossier de l'organisation contenant les projets:
Méthode | Autorisation(s) requise(s) |
---|---|
resourcemanager.projects.create |
resourcemanager.projects.create |
resourcemanager.projects.delete |
resourcemanager.projects.delete |
resourcemanager.projects.get |
resourcemanager.projects.get Cette autorisation permet également d'obtenir le nom du compte de facturation associé au projet via la méthode de l'API Billing billing.projects.getBillingInfo . |
resourcemanager.projects.getIamPolicy |
resourcemanager.projects.getIamPolicy |
resourcemanager.projects.list |
resourcemanager.projects.list |
resourcemanager.projects.search |
resourcemanager.projects.get |
resourcemanager.projects.setIamPolicy |
resourcemanager.projects.setIamPolicy |
resourcemanager.projects.testIamPermissions |
Ne nécessite aucune autorisation. |
resourcemanager.projects.undelete |
resourcemanager.projects.undelete |
resourcemanager.projects.patch |
La mise à jour des métadonnées d'un projet requiert l'autorisation resourcemanager.projects.update . Pour mettre à jour le parent d'un projet et le déplacer dans une ressource Organisation, vous devez disposer de l'autorisation resourcemanager.projects.create sur la ressource Organisation. |
projects.move |
projects.move |
Utiliser des rôles prédéfinis
Les rôles IAM prédéfinis vous permettent de gérer soigneusement l'ensemble des autorisations auxquelles vos utilisateurs ont accès. Pour obtenir la liste complète des rôles pouvant être accordés au niveau du projet, consultez la page Comprendre les rôles.
Le tableau suivant répertorie les rôles prédéfinis que vous pouvez utiliser pour accorder l'accès à un projet. Chaque rôle comprend une description et les autorisations qu'il inclut.
Rôle | Autorisations |
---|---|
Créateur de projet( Permet de créer des projets. Une fois qu'un utilisateur crée un projet, il se voit automatiquement attribuer le rôle de propriétaire pour celui-ci. |
resourcemanager. resourcemanager. |
suppresseur de projets( Permet de supprimer des projets Google Cloud. |
resourcemanager. |
Déplaceur de projets( Permet de mettre à jour et déplacer des projets. |
resourcemanager.projects.get resourcemanager.projects.move resourcemanager. |
Administrateur de projet IAM( Fournit les autorisations permettant d'administrer les stratégies d'autorisation sur les projets. |
resourcemanager.projects.get resourcemanager. resourcemanager. |
Navigateur( Accès en lecture pour parcourir la hiérarchie d'un projet, y compris le dossier, l'organisation et la stratégie d'autorisation. Ce rôle ne donne pas l'autorisation d'afficher les ressources du projet. |
resourcemanager.folders.get resourcemanager.folders.list resourcemanager. resourcemanager.projects.get resourcemanager. resourcemanager.projects.list |
Rôles de base
Évitez d'utiliser des rôles de base, sauf si cela est absolument nécessaire. Ces rôles sont très puissants et incluent un grand nombre d'autorisations sur tous les services Google Cloud. Pour savoir quand utiliser les rôles de base, consultez la section Rôles de base.
Rôle | Description | Autorisations |
---|---|---|
roles/owner |
Accès complet à toutes les ressources | Permet d'accéder à toutes les autorisations pour toutes les ressources. |
roles/editor |
Accès en modification à la plupart des ressources. | Accès permettant de créer et de mettre à jour toutes les ressources |
roles/viewer |
Accès en lecture à la plupart des ressources. | Accès permettant d'obtenir et de répertorier toutes les ressources |
Créer des rôles personnalisés
En plus des rôles prédéfinis décrits dans cette rubrique, vous pouvez également créer des rôles personnalisés regroupant des autorisations adaptées à vos besoins. Lorsque vous créez un rôle personnalisé à utiliser avec Resource Manager, tenez compte des points suivants :- Les autorisations de type obtenir/répertorier, telles que
resourcemanager.projects.get/list
, doivent toujours être accordées en tant que paire. - Lorsque votre rôle personnalisé inclut les autorisations
folders.list
etfolders.get
, il doit également inclureprojects.list
etprojects.get
. - Sachez que l'autorisation
setIamPolicy
pour les ressources d'organisation, de dossier et de projet permet à l'utilisateur d'accorder toutes les autres autorisations. Elle doit donc être attribuée avec précaution.
Contrôle des accès au niveau du projet
Vous pouvez attribuer des rôles aux utilisateurs au niveau du projet à l'aide de la console Google Cloud, de l'API Resource Manager et de Google Cloud CLI. Pour obtenir des instructions, consultez la page Accorder, modifier et révoquer les accès.
Rôles par défaut
Lorsque vous créez un projet, le rôle roles/owner du projet vous est attribué pour vous procurer un contrôle total en tant que créateur. Ce rôle par défaut peut être modifié normalement dans une stratégie IAM.
VPC Service Controls
VPC Service Controls offre une sécurité supplémentaire lors de l'utilisation de l'API Resource Manager. Pour en savoir plus sur VPC Service Controls, consultez la page Présentation de VPC Service Controls.
Pour en savoir plus sur les limites actuelles liées à l'utilisation de Resource Manager avec VPC Service Controls, consultez la page Produits compatibles et limites.