1

Я занимаюсь разработкой расширения Google Chrome и задаю некоторые вопросы о том, как реализовать безопасность в приложении.Стратегия аутентификации между моим расширением chome и сервером

Мне нужно получить доступ к нескольким API Google, поэтому я буду использовать OAuth 2.0 для этого. Поэтому в основном из расширения я знаю, какой пользователь зарегистрирован в браузере.

Мое расширение затем должно получить и отправить данные в мою службу (nodejs) API. Я хочу убедиться, что пользователь, запрашивающий данные, является тем же самым пользователем, который зарегистрирован в браузере. Есть ли способ использовать предыдущий процесс аутентификации Google, чтобы также аутентифицировать связь между расширением и моим API? Я действительно не хочу, чтобы пользователю приходилось снова входить в систему, чтобы получить доступ к моему API.

Я уверен, что я что-то просто не хватает, и я не смог найти ничего, что соответствует этот сценарий

ответ

1

Следуйте за OpenID Connect auth flow, и вы получите access_token and an id_token. Вы можете использовать acess_token, чтобы использовать аутентифицированные запросы для API Google, как обычно. Id_token будет использоваться как аутентификация с запросами на ваш сервер.

Когда запросы попадут на ваш сервер, вам понадобится validate the token, и вы сможете использовать содержимое id_token для identify the user.

+0

ah right Я думал, что это будет что-то вроде этого, спасибо. Я не знал о проверке маркера и не был уверен, что токен - это то, что я могу разделить между серверами и т. Д. Cheers – Silverbug

1

Пользователь не должен войти в процесс Идент при условии, если пользователь уже вошел в систему и вы используете поток веб-приложений (а не chrome.identity API), но пользователь будет видеть экран согласия по крайней мере в первый раз. Однако вы можете пропустить экран выбора учетной записи, если вы уже знаете адрес электронной почты, указав параметр &login_hint=.

+0

Хотя это прямо не помогает мне, я вижу, что эта информация может быть немного полезной. – Silverbug

Смежные вопросы