使用服务帐户部署到App Engine时出现权限错误

时间:2020-04-10 09:25:22

标签: google-app-engine

我想通过Google服务帐户部署我的应用程序。我正在使用启用了结算功能的googlecloud的测试版。我向我的服务帐户授予了以下权限:

  • App Engine管理员
  • App Engine Deployer
  • App Engine服务管理员
  • 云构建服务帐户
  • 云构建编辑器
  • 存储管理员

当我尝试使用gcloud auth activate-service-account --key-file file.json通过密钥文件登录,然后尝试使用以下命令使用服务帐户部署应用程序:gcloud --quiet --project projecid app deploy app.yaml时,出现以下错误:

(gcloud.app.deploy) Permissions error fetching application [apps/projectid]. Please make sure you are using the correct project ID and that you have permission to view applications on the project.

我还可能不得不说,我使用的是以前使用的帐户ID。

你们知道我能做什么吗?当我使用普通的Google帐户和普通的登录名部署它时,它可以工作。但是由于gitlab-ci

我需要

1 个答案:

答案 0 :(得分:2)

我试图通过创建一个新的服务帐户并赋予您列出的角色来重现您的情况。我已使用gcloud auth activate-service-account --key-file=<KEY-FILE>命令授权访问GCP及其密钥,但是对我来说部署已经成功。

运行gcloud auth list命令以确保您具有正确的服务帐户授权。另外,您可以尝试在部署命令中添加--verbosity=debug标志,以查看是否可以在错误日志中找到任何有用的内容。

但是,从错误描述中,您似乎在部署应用程序时也可能传递了错误的项目ID:

gcloud --quiet --project projecid app deploy app.yaml

-确保不是这种情况。