Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Les rôles déterminent les services et les actions disponibles pour un compte utilisateur ou un compte de service. Les types de rôles suivants permettent d'accéder à App Engine :
Les rôles de base s'appliquent à l'ensemble des services et des ressources d'un projet, y compris, mais sans s'y limiter, à App Engine. Par exemple, un compte doté du rôle d'éditeur peut modifier les paramètres d'App Engine et de Cloud Storage.
Les rôles prédéfinis App Engine fournissent un accès précis à App Engine. Chaque service de votre projet Google Cloud dispose de ses propres rôles prédéfinis. Par exemple, un compte qui n'est doté que du rôle "Déployeur App Engine" peut déployer des applications App Engine, mais ne peut pas afficher ni créer d'objets dans Cloud Storage. Ce compte doit également disposer d'un rôle prédéfini Cloud Storage spécifique pour créer ou afficher des objets dans Cloud Storage.
Les rôles personnalisés fournissent un accès précis en fonction d'une liste d'autorisations que vous spécifiez.
Vous pouvez utiliser des rôles de base lorsque vous travaillez sur des projets plus petits aux besoins moins complexes. Afin de mieux contrôler les accès, utilisez des rôles prédéfinis.
Rôles de base
Les rôles de base s'appliquent à l'ensemble des services et des ressources d'un projet. Par exemple, un compte doté du rôle d'éditeur peut modifier les paramètres d'App Engine et de Cloud Storage.
Rôle
Autorisations pour la console Google Cloud
Autorisations pour les outils
Owner
Obligatoire pour créer des applications App Engine. Inclut tous les droits du lecteur et de l'éditeur, ainsi que la possibilité d'afficher le code source déployé, d'inviter des utilisateurs, de modifier les rôles des utilisateurs et de supprimer une application.
Dispose des droits d'administrateur pour toutes les ressources du projet.
Obligatoire pour créer des applications App Engine. Permet également de déployer le code d'application et de mettre à jour toutes les configurations.
Editor
Permet d'afficher les informations relatives à l'application et de modifier ses paramètres.
Dispose des droits d'administrateur pour toutes les ressources du projet.
Permet de déployer le code de l'application et de mettre à jour les index/files d'attente/tâches Cron.
Viewer
Permet d'afficher les informations relatives à l'application.
Dispose des droits d'administrateur pour toutes les ressources du projet.
Permet de demander des journaux.
Rôles App Engine prédéfinis
Role
Permissions
App Engine Admin
(roles/appengine.appAdmin)
Read/Write/Modify access to all application configuration and settings.
To deploy new versions, a principal must have the
Service Account User
(roles/iam.serviceAccountUser) role on the assigned App Engine
service account, and the Cloud Build Editor
(roles/cloudbuild.builds.editor), and Cloud Storage Object Admin
(roles/storage.objectAdmin) roles on the project.
Lowest-level resources where you can grant this role:
Project
appengine.applications.get
appengine.applications.listRuntimes
appengine.applications.update
appengine.instances.*
appengine.instances.delete
appengine.instances.enableDebug
appengine.instances.get
appengine.instances.list
appengine.memcache.addKey
appengine.memcache.flush
appengine.memcache.get
appengine.memcache.update
appengine.operations.*
appengine.operations.get
appengine.operations.list
appengine.runtimes.actAsAdmin
appengine.services.*
appengine.services.delete
appengine.services.get
appengine.services.list
appengine.services.update
appengine.versions.create
appengine.versions.delete
appengine.versions.get
appengine.versions.list
appengine.versions.update
artifactregistry.projectsettings.get
artifactregistry.repositories.deleteArtifacts
artifactregistry.repositories.downloadArtifacts
artifactregistry.repositories.uploadArtifacts
resourcemanager.projects.get
resourcemanager.projects.list
App Engine Creator
(roles/appengine.appCreator)
Ability to create the App Engine resource for the project.
Lowest-level resources where you can grant this role:
Project
appengine.applications.create
resourcemanager.projects.get
resourcemanager.projects.list
App Engine Viewer
(roles/appengine.appViewer)
Read-only access to all application configuration and settings.
Lowest-level resources where you can grant this role:
Project
appengine.applications.get
appengine.applications.listRuntimes
appengine.instances.get
appengine.instances.list
appengine.operations.*
appengine.operations.get
appengine.operations.list
appengine.services.get
appengine.services.list
appengine.versions.get
appengine.versions.list
artifactregistry.projectsettings.get
resourcemanager.projects.get
resourcemanager.projects.list
App Engine Code Viewer
(roles/appengine.codeViewer)
Read-only access to all application configuration, settings, and deployed
source code.
Lowest-level resources where you can grant this role:
Project
appengine.applications.get
appengine.applications.listRuntimes
appengine.instances.get
appengine.instances.list
appengine.operations.*
appengine.operations.get
appengine.operations.list
appengine.services.get
appengine.services.list
appengine.versions.get
appengine.versions.getFileContents
appengine.versions.list
artifactregistry.projectsettings.get
resourcemanager.projects.get
resourcemanager.projects.list
App Engine Managed VM Debug Access
(roles/appengine.debugger)
Ability to read or manage v2 instances.
appengine.applications.get
appengine.applications.listRuntimes
appengine.instances.*
appengine.instances.delete
appengine.instances.enableDebug
appengine.instances.get
appengine.instances.list
appengine.operations.*
appengine.operations.get
appengine.operations.list
appengine.services.get
appengine.services.list
appengine.versions.get
appengine.versions.list
resourcemanager.projects.get
resourcemanager.projects.list
App Engine Deployer
(roles/appengine.deployer)
Read-only access to all application configuration and settings.
To deploy new versions, you must also have the
Service Account User
(roles/iam.serviceAccountUser) role on the assigned App Engine
service account, and the Cloud
Build Editor (roles/cloudbuild.builds.editor), and Cloud Storage Object Admin
(roles/storage.objectAdmin) roles on the project.
Cannot modify existing versions other than deleting versions that are not receiving traffic.
Lowest-level resources where you can grant this role:
Project
appengine.applications.get
appengine.applications.listRuntimes
appengine.instances.get
appengine.instances.list
appengine.operations.*
appengine.operations.get
appengine.operations.list
appengine.services.get
appengine.services.list
appengine.versions.create
appengine.versions.delete
appengine.versions.get
appengine.versions.list
artifactregistry.projectsettings.get
artifactregistry.repositories.deleteArtifacts
artifactregistry.repositories.downloadArtifacts
artifactregistry.repositories.uploadArtifacts
resourcemanager.projects.get
resourcemanager.projects.list
App Engine Memcache Data Admin
(roles/appengine.memcacheDataAdmin)
Can get, set, delete, and flush App Engine Memcache items.
appengine.applications.get
appengine.memcache.addKey
appengine.memcache.flush
appengine.memcache.get
appengine.memcache.update
resourcemanager.projects.get
resourcemanager.projects.list
App Engine Service Admin
(roles/appengine.serviceAdmin)
Read-only access to all application configuration and settings.
Write access to module-level and version-level settings. Cannot deploy a new version.
Lowest-level resources where you can grant this role:
Project
appengine.applications.get
appengine.applications.listRuntimes
appengine.instances.delete
appengine.instances.get
appengine.instances.list
appengine.operations.*
appengine.operations.get
appengine.operations.list
appengine.services.*
appengine.services.delete
appengine.services.get
appengine.services.list
appengine.services.update
appengine.versions.delete
appengine.versions.get
appengine.versions.list
appengine.versions.update
artifactregistry.projectsettings.get
resourcemanager.projects.get
resourcemanager.projects.list
App Engine Standard Environment Service Agent
(roles/appengine.serviceAgent)
Give App Engine Standard Envirnoment service account access to managed resources. Includes access to service accounts.
Les rôles prédéfinis pour App Engine vous offrent des options de contrôle des accès plus précises.
Ces rôles ne permettent d'accéder qu'à App Engine. Si votre projet comprend d'autres services, tels que Cloud Storage ou Cloud SQL, vous devez attribuer des rôles supplémentaires pour autoriser l'accès aux autres services.
Comparaison des rôles App Engine prédéfinis
Le tableau suivant compare de manière exhaustive les fonctions de chaque rôle App Engine prédéfini.
Capacité
Administrateur App Engine
Administrateur de services App Engine
Déployeur App Engine
Lecteur App Engine
Lecteur de codes App Engine
Répertorier l'ensemble des services, versions et instances
Oui
Oui
Oui
Oui
Oui
Afficher l'ensemble des paramètres d'application, de service, de version et d'instance
Oui
Oui
Oui
Oui
Oui
Afficher les métriques de l'environnement d'exécution telles que l'utilisation des ressources, les informations de charge et les informations relatives aux erreurs
Oui
Oui
Oui
Oui
Oui
Afficher le code source de l'application
Non
Non
Non
Non
Oui
Déployer une nouvelle version d'application
Oui, si vous attribuez également le rôle "Utilisateur du compte de service"
Non
Oui, si vous attribuez également le rôle "Utilisateur du compte de service"
Se connecter via SSH à une instance de VM dans l'environnement flexible
Oui
Non
Non
Non
Non
Arrêter une instance
Oui
Non
Non
Non
Non
Désactiver et réactiver l'application App Engine
Oui
Non
Non
Non
Non
Gestionnaires d'accès dont l'accès est limité avec login:admin (environnements d'exécution de première génération uniquement)
Oui
Non
Non
Non
Non
Mettre à jour les règles de distribution
Oui
Non
Non
Non
Non
Mettre à jour les paramètres DoS
Oui
Non
Non
Non
Non
Mettre à jour les planifications Cron
Non
Non
Non
Non
Non
Mettre à jour l'expiration des cookies par défaut
Oui
Non
Non
Non
Non
Mettre à jour les URL de provenance
Oui
Non
Non
Non
Non
Mettre à jour les expéditeurs autorisés de l'API Email
Oui
Non
Non
Non
Non
Pour en savoir plus sur les autorisations IAM spécifiques accordées par chaque rôle, consultez la section Rôles de la documentation sur l'API Admin.
Rôle recommandé pour le déploiement d'application
Pour un compte qui n'est responsable que du déploiement de nouvelles versions d'une application, nous vous recommandons d'attribuer les rôles suivants :
Rôle "Déployeur App Engine" (roles/appengine.deployer)
Rôle "Utilisateur du compte de service" (roles/iam.serviceAccountUser)
Le rôle Utilisateur du compte de service permet au compte d'emprunter l'identité du compte de service App Engine par défaut lors du processus de déploiement.
Si le compte utilise des commandes gcloud pour le déploiement, ajoutez également les rôles suivants :
Administrateur des objets de l'espace de stockage (roles/storage.objectAdmin)
Séparer les tâches de déploiement et d'acheminement du trafic
De nombreuses entreprises préfèrent séparer la tâche liée au déploiement d'une version d'application de celle associée à l'augmentation progressive du trafic vers la nouvelle version. Chaque tâche est alors confiée à différents postes. Les rôles "Déployeur App Engine" et "Administrateur de services App Engine" assurent cette séparation :
Rôles "Déployeur App Engine" et "Utilisateur du compte de service" : les comptes sont limités au déploiement de nouvelles versions et à la suppression des anciennes versions qui ne diffusent pas le trafic.
Le compte doté de ces rôles ne peut pas configurer le trafic sur une version ni modifier les paramètres au niveau de l'application, tels que les règles de distribution ou le domaine d'authentification.
Rôle "Administrateur de services App Engine" : les comptes ne peuvent pas déployer la nouvelle version d'une application ni modifier les paramètres au niveau de l'application. Toutefois, ces comptes disposent de droits leur permettant de modifier les propriétés des versions et services existants, y compris le choix des versions pouvant diffuser le trafic. Le rôle "Administrateur de services App Engine" est idéal pour un service des opérations ou un service informatique qui gère l'augmentation progressive du trafic sur des versions récemment déployées.
Limites des rôles prédéfinis
Aucun des rôles prédéfinis App Engine n'accorde l'accès aux actions suivantes :
Afficher et télécharger les journaux d'application
Afficher les graphiques Monitoring dans la console Google Cloud.
Activer et désactiver la facturation
Exécuter des analyses de sécurité dans Cloud Security Scanner
Accéder à la configuration ou aux données stockées dans Datastore, les files d'attente de tâches, Cloud Search ou tout autre produit de stockage Cloud Platform
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/04 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/04 (UTC)."],[[["\u003cp\u003eRoles determine the services and actions available to user or service accounts within App Engine, including basic roles for all project services, predefined roles for specific App Engine access, and custom roles for tailored permissions.\u003c/p\u003e\n"],["\u003cp\u003eBasic roles like Owner, Editor, and Viewer apply broadly across all services in a project, allowing actions in App Engine as well as services like Cloud Storage.\u003c/p\u003e\n"],["\u003cp\u003ePredefined App Engine roles, such as Admin, Deployer, and Viewer, offer granular control, limiting access to App Engine-specific functionalities, and requiring additional roles for other services.\u003c/p\u003e\n"],["\u003cp\u003eThe App Engine Deployer role is recommended for accounts solely responsible for deploying new app versions, and it requires the Service Account User role for impersonating the default service account, as well as other roles for \u003ccode\u003egcloud\u003c/code\u003e commands usage.\u003c/p\u003e\n"],["\u003cp\u003eFor separating deployment tasks from traffic routing, the App Engine Deployer role and App Engine Service Admin role can be assigned to different job functions, with the Deployer managing new versions and the Admin controlling traffic routing and existing service configurations.\u003c/p\u003e\n"]]],[],null,["# Roles that Grant Access to App Engine\n\nRoles determine which services and actions are available to a user account or\nservice account. The following types of roles grant access to App Engine:\n\n- [Basic roles](#basic_roles) which apply to all services and resources in a\n project, including but not limited App Engine. For example, an account\n with the Editor role can change App Engine settings as well as Cloud\n Storage settings.\n\n- [Predefined App Engine roles](#predefined_roles), which provide\n granular access to App Engine. Each service in your\n Google Cloud project provides its own predefined roles. For example, an\n account that only has the App Engine Deployer role\n can deploy App Engine apps but cannot view or create objects\n in Cloud Storage. Such an account would also need a specific [Cloud Storage\n predefined role](/iam/docs/understanding-roles#cloud-storage-roles)\n to create or view objects in Cloud Storage.\n\n- [Custom roles](/iam/docs/understanding-custom-roles),\n which provide granular access according to a list of permissions you specify.\n\nYou can use basic roles when you are working on smaller projects that have\nless complex needs. For more fine-tuned access controls, use predefined roles.\n\nBasic roles\n-----------\n\nBasic roles apply to all services and resources in a project. For example, an\naccount in the Editor role can change App Engine settings as well as\nCloud Storage settings.\n\nPredefined App Engine roles\n---------------------------\n\nThe predefined roles for App Engine provide you with finer grained\noptions for access control.\n\n*These roles only provide access to App Engine.* If your project includes\nother services, such as Cloud Storage or Cloud SQL, you will need to assign\n[additional roles](/iam/docs/understanding-roles#predefined_roles) to enable access to the other services.\n\n### Comparison of App Engine predefined roles\n\nThe following table provides a complete comparison of the capabilities of each\npredefined App Engine role.\n\n| **Note:** The predefined roles are enforced in the [Google Cloud console](https://console.cloud.google.com/iam-admin/iam), the [Admin API](/appengine/docs/admin-api/access-control), and other tooling that requires access, including the [deployment commands](/appengine/docs/legacy/standard/python/tools/uploadinganapp).\n\nFor details about the specific IAM permissions that are granted by each role,\nsee the [Roles](/appengine/docs/admin-api/access-control#roles) section of the\nAdmin API.\n\nRecommended role for application deployment\n-------------------------------------------\n\nFor an account that is responsible *only* for deploying new versions of an app,\nwe recommend that you grant the following roles:\n\n- App Engine Deployer role (`roles/appengine.deployer`)\n- Service Account User role (`roles/iam.serviceAccountUser`)\n\n The [Service Account User role](/iam/docs/service-account-permissions#user-role)\n enables the account to impersonate the default App Engine service account\n during the deployment process.\n-\n If the account uses `gcloud` commands to deploy, add these roles as well:\n\n - Storage Object Admin (`roles/storage.objectAdmin`)\n - Cloud Build Editor (`roles/cloudbuild.builds.editor`)\n\n| **Note:** If you have granted an account the App Engine Admin role, you don't need to grant it the App Engine Deployer role, because the Admin role holds the same relevant permissions as the Deployer role, along with additional administrative privileges. We recommend using the App Engine Deployer role for accounts that are responsible only for deploying new versions.\n\nFor details about how to grant the required permissions, see\n[Creating a user account](/appengine/docs/legacy/standard/python/access-control#user_account).\n\n### Separation of deployment and traffic routing duties\n\nMany organizations prefer to separate the task of deploying an application\nversion from the task of ramping up traffic to the newly created version, and to\nhave these tasks done by different job functions. The App Engine Deployer and\nApp Engine Service Admin roles provide this separation:\n\n- App Engine Deployer plus Service Account User roles - Accounts are limited to deploying new versions and deleting old versions that are not serving traffic. The account with these roles won't be able to configure traffic to any version nor change application-level settings such as dispatch rules or authentication domain.\n- App Engine Service Admin role - Accounts cannot deploy a new version of an app nor change application-level settings. However, those accounts have privileges to change the properties of existing services and versions, including changing which versions can serve traffic. The App Engine Service Admin role is ideal for an Operations/IT department that handles ramping up traffic to newly deployed versions.\n\n\n| **Note** : Accounts with the App Engine Deployer role can overwrite a version that is serving traffic by deploying a new version with the same name (using the `--version` flag).\n\n\u003cbr /\u003e\n\n### Limitations of the predefined roles\n\nNone of the App Engine predefined roles grant access to the following:\n\n- View and download application logs.\n- View Monitoring charts in the Google Cloud console.\n- Enable and Disable billing.\n- Run security scans in Cloud Security Scanner.\n- Access configuration or data stored in Datastore, Task Queues, Cloud Search or any other Cloud Platform storage product."]]