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
后续步骤
遵循使用服务账号的最佳实践。