使用用户管理的服务帐号

App Engine 应用需要服务帐号才能访问其他 Google Cloud 服务并执行任务。默认情况下,App Engine 默认服务帐号用作 App Engine 应用的身份。您还可以指定用户管理的服务帐号,以用作特定 App Engine 应用版本的身份。这样,您就可以根据每个版本所执行的特定任务来为其授予不同的权限,同时可避免授予超出需求的权限。

本指南介绍了如何在部署新版本时指定用户管理的服务帐号。如果您在部署特定版本的应用时不需要创建不同的服务帐号,则可以继续使用默认服务帐号,而无需指定服务帐号。

创建用户管理的服务帐号

如需创建用户管理的服务帐号,请参阅这些说明。定义要为服务帐号授予的 Identity and Access Management (IAM) 角色时,您可以参考授予 App Engine 访问权限的角色

如果您需要在创建服务帐号之前查看 IAM 概念,请参阅 IAM 概念概览服务帐号指南。

部署应用时指定服务帐号

gcloud

运行 gcloud app deploy 命令并指定您的服务帐号:

gcloud app deploy --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com

app.yaml

app.yaml 文件中,通过添加 service_account 元素来指定您的服务帐号:

service_account: SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com

后续步骤

遵循有关如何管理和保护服务帐号的最佳做法,请参阅使用和管理服务帐号以及保护服务帐号