无法使用服务帐户订阅Google Pub子主题

时间:2018-05-05 07:05:56

标签: google-cloud-platform google-cloud-pubsub google-deployment-manager google-iam

我试图了解此链接中提供的Google云端示例中的示例

IAM Example

此示例创建服务帐户,VM和发布/订阅主题。 VM作为服务帐户运行,服务帐户具有订阅者访问Pub / Sub主题的权限,从而使在VM上运行的服务和应用程序可以访问Pub / Sub主题。

但是,当我尝试部署此示例时,我遇到错误

The fingerprint of the deployment is a-v3HjAHciZeSLuE-vSeZw==
Waiting for create [operation-1525502430976-56b6fb6809800-dbd09909-c5d681b2]...failed.
ERROR: (gcloud.deployment-manager.deployments.create) Error in Operation [operation-1525502430976-56b6fb6809800-dbd09909-c5d681b2]: errors:
- code: RESOURCE_ERROR
  location: /deployments/test-dp/resources/my-pubsub-topic
  message: '{"ResourceType":"pubsub.v1.topic","ResourceErrorCode":"403","ResourceErrorMessage":{"code":403,"message":"User
    not authorized to perform this action.","status":"PERMISSION_DENIED","details":[],"statusMessage":"Forbidden","requestPath":"https://pubsub.googleapis.com/v1/projects/fresh-deck-194307/topics/my-pubsub-topic:setIamPolicy","httpMethod":"POST"}}'

它提到用户没有权限执行此操作。 我无法理解它提到的用户。 由于我是项目所有者,而我的帐户是项目的所有者,因此我应该能够部署一个脚本,该脚本可以设置IAM策略以订阅pubsub主题。

上面我的理解可能是错的。有人可以帮助理解为什么这个例子失败了吗?

此外,我希望如果运行此示例需要任何其他配置,则应在README文件中提及。但是没有说明。

1 个答案:

答案 0 :(得分:0)

  • 确保已为要部署的所有资源启用了API。
  • 使用gcloud auth list命令确保具有足够权限的帐户是活动帐户。
  • 使用gcloud config list命令确保默认项目或其他设置正确。
相关问题