GCP PubSub主题权限

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GCP PubSub主题权限相关的知识,希望对你有一定的参考价值。

我正在尝试创建一个仅具有特定pubsub主题权限的服务帐户。

我创建一个主题:

gcloud pubsub topics create mytopic

然后创建一个服务帐户:

gcloud iam service-accounts create my-user 
  --display-name "my-user"

然后尝试授予此服务帐户权限:

gcloud alpha pubsub topics add-iam-policy-binding mytopic 
      --member="serviceAccount:my-user@myproject.iam.gserviceaccount.com" 
      --role='roles/pubsub.editor'

获取服务帐户json文件:

gcloud iam service-accounts keys create 
  --iam-account "my-user@myproject.iam.gserviceaccount.com" 
  service-account.json

使用此服务帐户json凭据我被拒绝创建对此主题的订阅。

如果我将此用户的权限授予整个项目的pubsub,我可以创建对此主题的订阅,但我不想给这个服务帐户提供那么多的权限。

gcloud projects add-iam-policy-binding myproject 
  --member="serviceAccount:my-user@myproject.iam.gserviceaccount.com" 
  --role='roles/pubsub.editor'

我试图使用它,它似乎不起作用:qazxsw poi

我在这里错过了什么吗?我本以为这个用户对该主题的角色绑定是否足够的权限?

答案

事实证明,订阅本身也有权限。您需要授予服务帐户的权限才能附加到服务帐户。

使用此命令:https://cloud.google.com/sdk/gcloud/reference/alpha/pubsub/topics/add-iam-policy-binding

以上是关于GCP PubSub主题权限的主要内容,如果未能解决你的问题,请参考以下文章

GCP PubSub 主题推送问题

如何将 GCP Pubsub 订阅的消息转发到另一个主题?

将消息发布到 GCP pubSub 主题失败

GCP Pubsub 主题持续时间中存在的消息数

如何从 Cloudflare 工作人员内部发布到 GCP PubSub 主题

如何在 apache camel 中执行 gcp pubsub 消息的并行处理