Использование oauth для аутентификации и авторизации основного приложения angular и. Net - PullRequest
0 голосов
/ 14 января 2020

У меня есть приложение angular с ядром. Net. Я пытаюсь реализовать единый вход с помощью OpenIdConnect (Okta как IDP).

Каков наилучший подход для этого? пройти аутентификацию из приложения angular, используя angular -oauth2-oid c? или я делаю это на сервере с помощью Microsoft.AspNetCore.Authentication.OpenIdConnect?

Где должна быть моя отправная точка? Я также хочу убедиться, что аутентифицированный или авторизованный пользователь может вызывать конечную точку Api из браузера или Swagger.

Чтобы быть более универсальным c в приложении с пользовательским интерфейсом и серверной частью как работает SSO? если бэкэнд-код обрабатывает процесс входа в систему?

спасибо

1 Ответ

1 голос
/ 14 января 2020

Вы должны реализовать аутентификацию в вашем angular приложении. Так как Oktais является вашей службой аутентификации / единого входа, общий процесс заключается в том, что пользователь будет перенаправлен на страницу входа Okta для входа, после того как пользователь введет учетные данные и Okta проверит учетные данные, пользователь перенаправит обратно в ваше приложение angular с кодом (при использовании Код авторизации + PKCE), ваше приложение отправит запрос в службу Okta с кодом для получения идентификационного токена и токена доступа, токен доступа можно использовать для доступа к защищенной веб-странице.

Для приложения angular вы можно использовать Okta Angular SDK или Okta Auth JavaScript SDK (Auth SDK является более низким уровнем SDK, чем Okta Angular SDK). Вы можете обратиться к статье ниже для учебника и примера кода:

https://developer.okta.com/quickstart/# / angular / nodejs / generi c

Вот еще одна статья, которая предоставляет подробные шаги с asp. net базовым веб-интерфейсом API в качестве внутреннего интерфейса:

https://developer.okta.com/blog/2018/04/26/build-crud-app-aspnetcore-angular

Обзор потока PKCE:

https://developer.okta.com/docs/guides/implement-auth-code-pkce/overview/

...