簡體   English   中英

主題的GCP PubSub權限

[英]GCP PubSub Permissions for a topic

我正在嘗試創建僅對特定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'

我正在嘗試使用它,但它似乎不起作用: https : //cloud.google.com/sdk/gcloud/reference/alpha/pubsub/topics/add-iam-policy-binding

我在這里想念什么嗎? 我以為該用戶對該主題的角色綁定將足夠的權限?

事實證明,訂閱本身也具有權限。 您需要授予該權限,服務帳戶才能附加到該帳戶。

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

用於創建訂閱,您需要

pubsub.subscriptions.create on the containing Cloud project and pubsub.topics.attachSubscription on the requested topic

由於pubsub.subscriptions.create僅包含在roles/ pubsub.editor (和...admin )中,因此您可能想創建一個自定義角色,以不放棄主題上的delete等權限。

在所請求的主題上,您可以授予pubsub.subscriber來授予attachSubscription

通過https://cloud.google.com/pubsub/docs/access-control#tbl_perm

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM