Я пытаюсь создать учетную запись службы, которая имеет разрешение только для определенной темы 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, мне отказывают в создании подписки на эту тему.
Если я предоставлю этому пользователю права доступа к пабу всего проекта, я смогу создать подписку на эту тему, но не хочу давать столько разрешений этой учетной записи службы.
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
Я что-то здесь упускаю? Я бы подумал, что для привязки роли этого пользователя к теме будет достаточно разрешений?