Можно ли использовать одни учетные данные API Google для нескольких развернутых микросервисов для одного и того же пользователя в разных экземплярах? - PullRequest
0 голосов
/ 10 октября 2018

Приложение1 -> Микросервис1 (развернуто на одном сервере, также отдельная база данных)

Приложение2 -> Микросервис2 (развернуто на другом сервере, отдельная база данных)

ПРИМЕЧАНИЕ : для Microservice1 и Microservice2 мы используем одинаковые учетные данные API Google.

У нас есть одно приложение, в котором мы предоставляем пользователям возможность редактировать файлы word, ppt, excel с помощью онлайн-редактора.

Итак, мы настроили Microservice, который использовал GSuite API для пользователя, чтобы редактировать там файл с помощью онлайн-редактора слов Google.

Теперь у нас есть сценарий, например, когда один пользователь открывает файл из Application1, тогда наше приложение будет перенаправлять пользователя наgoogle экран входа в систему и после того, как пользователь введет свои учетные данные, google проверит, зарегистрировано ли уже стороннее приложение под учетной записью пользователя для входа в систему, и если нет, то google предоставит экран согласия на регистрацию стороннего приложения для текущего пользователя.

Как только пользователь разрешит стороннее приложение, Google перенаправит пользователя на наш Microservice1, как только обратный вызов поступил в наш Microservice, тогда мы будем хранить токен обновления пользователя в нашей базе данных, и пользователь сможет редактировать документ в Интернете.

Теперь откройте файл пользователя из Application2, и он перенаправит пользователя на экран входа в Google икак только пользователь введет те же учетные данные, которые он использовал выше, google проверит, зарегистрировано ли уже стороннее приложение с учетной записью пользователя для входа в систему, на этот раз google обнаружил, что стороннее приложение уже зарегистрировано, и google перенаправит пользователя на Microservice2., но на этот раз Google не дает обновить токен и в нашей базе данных также нет записи обновить токен, поэтому мы не сможем открыть файл в онлайн-редакторе.

Итак, есть ли способобрабатывать подобные сценарии только с одним Google Credential?

Или нам нужна отдельная учетная запись, которая дает нам разные учетные данные Google API?

Like:

Microservice1 (одна учетная запись Googleс учетными данными Google API)

Microservice2 (Другая учетная запись Google с учетными данными API Google)

Любая помощь приветствуется.

Заранее спасибо ...

1 Ответ

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