Говоря с IdentityServer4 с приложением Angular SPA для аутентификации/авторизации, получающим токен, затем разговаривая с Web API

У меня есть базовый веб-API asp.net. В настоящее время я делаю вызовы непосредственно с помощью приложения Angular 4.

Теперь я хочу добавить уровень аутентификации и авторизации.

Я хотел бы сделать это, добавив к моему проекту еще один проект (строго для auth) типа: ASP.NET Core MVC (w/Individual User Accounts) и добавив к нему IdentityServer4. План состоит в том, чтобы использовать существующие таблицы Identity для хранения пользователей, ролей и т.д.

Как только все это будет настроено, я немного смущен тем, как мое приложение Angular 4 SPA или любая другая сторонняя группа аутентифицируется через приложение IdentityServer. Я бы предположил, что это возвращает какой-то токен. Затем переходит к вызовам моего исходного проекта веб-API (т.е. GetCustomers()) с этим токеном.

Из исследования, которое я сделал, это похоже на то, что мне нужна только одна проверка подлинности на стороне JWT в ядре ASP.NET.

Может кто-нибудь, пожалуйста, предоставит мне некоторые ссылки/информацию о том, как пройти весь этот процесс. Не нашли хороших видео, которые проходят через все. Кроме того, пожалуйста, подтвердите, что приведенная выше картина, о которой я говорю, звучит правильно.

Ответ 1

Identity Server имеет разный flows/grant types, тот, о котором вы говорите о неявный, в этом случае Identity Server вернет jwt token поэтому вы должны хранить это jwt token на клиенте, а затем прикреплять этот токен для запроса заголовка при запросе ваших безопасных маршрутов webapi.

введите описание изображения здесь

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

Говоря о хороших видеороликах по этой теме, это хороший из недавнего анонса NDC conf IdentityServer4: новый и улучшенный для ядра ASP.NET также, если вы хотите изучить материал более глубоко, вы можете проверить это курс множественного числа от Доминика Байера