Гибридная аутентификация на стороне сервера и на стороне клиента с помощью AWS Cognito - PullRequest
0 голосов
/ 07 января 2019

У меня есть веб-сайт asp.net mvc, который общается с некоторыми микросервисами, вызывая их API. Все эти микросервисы находятся в частной подсети AWS.

Только одна форма (всплывающее окно с подробными сведениями о продукте) использует jquery для вызова ajax к шлюзу Api, который предоставляет один из частных API для общедоступной сети.

Шлюз Api настроен на использование AWS Cognito для аутентификации.

Кроме того, пользователи вводят свою электронную почту и пароль AWS Cognito, затем на веб-сайте asp.net mvc используется новый

Поставщик идентификационных данных AWS Cognito

для аутентификации пользователей. Вход на серверной стороне дает мне Cognito ID пользователя.

Теперь jquery на стороне клиента должен иметь id_token для доступа к шлюзу API, однако рабочий процесс для аутентификации на стороне клиента заключается в том, чтобы перевести пользователя на сервер Oauth, захватить id_token и затем выполнить вызовы API. Это совсем не идеально, потому что мои пользователи уже вошли в систему, и нет смысла возвращать их обратно на встроенную страницу входа AWS Cognito!

Как я могу получить токен для доступа к шлюзу Api, не заставляя пользователей дважды входить в систему.

...