Можем ли мы использовать учетные записи служб для проверки подлинности между стандартной средой ядра приложений микро-служб?
Я внедряю микро-сервисы в стандартной среде движка приложений Google. Мне нужно вызвать один микро-сервис из другого, используя URLfetch. Для этого у меня должен быть некоторый механизм аутентификации, чтобы только микросервис в том же проекте мог вызывать только этот API.
Это может быть достигнуто с помощью очередей задач, но это не полезно для моего сценария.
Я перешел по этой ссылке ( Как защитить соединение между различными GAE?), И если мы проверим заголовки X-Appengine-Inbound-Appid, то этого можно достичь. Мне любопытно, если мы сделаем это еще более безопасным, используя служебные учетные записи.
Ниже ссылки имеют ссылку, чтобы сделать это https://cloud.google.com/appengine/docs/standard/python/communicating-between-services https://cloud.google.com/docs/authentication/production
но не нашел четких инструкций для достижения этого. Кто-нибудь использует этот подход для аутентификации?
1 ответ
Один из вариантов - включить Cloud Identity-Aware Proxy (IAP) для ваших приложений App Engine. Затем вы можете программно аутентифицироваться с помощью учетной записи службы. Это позволит одному приложению App Engine с аутентификацией вызывать другое, защищенное IAP.
Эта ссылка [1], которую вы упомянули, содержит четкие инструкции вместе с примерами кода на Python (щелкните вкладку Python) для достижения вашей цели. В документации показано, как создать учетную запись службы, назначить ей роль со связанными разрешениями и предоставить учетные данные для вашего приложения.
Примеры кода демонстрируют взаимодействие приложения с микросервисом облачного хранилища. Если вы получили ошибку во время следования примерам, пожалуйста, предоставьте детали ошибки.