В Google Cloud, как я могу установить разрешения на публикацию для PubSub для каждой функции? - PullRequest
0 голосов
/ 10 октября 2018

В настоящее время я работаю над проектом GCP, в котором мне нужно попытаться добиться следующего:

Мне нужно каким-то образом ограничить, какие функции GCP могут публиковать в какие темы GCP?

У кого-нибудь есть идеи, как мне этого добиться?

1006 * Спасибо,

Том Ранний

Ответы [ 3 ]

0 голосов
/ 10 октября 2018

Облачные функции выполняются как PROJECT_ID@appspot.gserviceaccount.com и имеют разрешения для этой учетной записи службы.Поэтому, если вы хотите, чтобы разные функции имели разные разрешения, вам придется создавать их в отдельных проектах.Например, вы могли бы иметь:

  • Функция abc в проекте abc-proj
  • Функция xyz в проекте xyz-proj
  • Паб / Подпрограммы a-topic и z-topic в проекте pubsub-proj
  • Предоставить projects.topics.publish разрешение на тему a-topicpubsub-proj) на abc-proj@appspot.gserviceaccount.com
  • Предоставить projects.topics.publish разрешение на темуz-topicpubsub-proj) до xyz-proj@appspot.gserviceaccount.com

И тогда у вас будет функция abc, способная к публикации в pubsub-proj/a-topic, и функция xyz, способная к публикации в pubsub-proj/z-topic, но не крест-накрест.

0 голосов
/ 26 июля 2019

Поскольку у меня все еще нет репутации, чтобы сделать это (извините за это), я пишу новый ответ, просто чтобы все, кто может столкнуться с этим, знали, что ответ Дэвида также действителен для Cloud Run, просто заменив службуучетная запись той, которая обрабатывает вашу службу Cloud Run.

0 голосов
/ 10 октября 2018

Когда вы хотите опубликовать сообщение, вы указываете тему, где вы будете публиковать это сообщение.Это означает, что сообщение будет опубликовано только для этой конкретной темы, но не для других тем.Вы можете посмотреть документацию, связанную с публикацией сообщений здесь , если вам нужна дополнительная помощь в публикации сообщения по определенной теме.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...