Как аутентифицировать пользователя в веб-интерфейсе .NET Core MVC с помощью инфраструктуры идентификации ядра .net - PullRequest
0 голосов
/ 21 ноября 2018

У меня есть ASP.NET CORE MVC WebApp с Identity Framework.Теперь, когда мы также планируем расширить наш продукт таким образом, чтобы мы могли предоставлять мобильные приложения с xamerin, я решил создать API, чтобы нам не приходилось кодировать бэкэнд дважды.В настоящее время мы размещаем наше приложение в облаке Azure.

Для бэкэнда: я хотел бы использовать ASP.NET CORE WebApi, но я решил, что такого шаблона Identity или встроенной интеграции Azure Web API нет.Так что лучше было бы вместо этого использовать ASP.NET?Я уже создал базовую учетную запись AccountController для API ядра .net.

Поскольку я аутентифицировал ASP.NET Core MVC Web App с помощью каркаса идентификации, я хотел бы также использовать его в бэкэнде.Так что вы входите в систему на бэкенде и получаете токен, как только вы вошли в систему.Я должен написать код для входа пользователя в систему и вернуть токен.

Как именно я могу аутентифицировать интерфейс .NET ASP CORE?Пользователь запросит страницу входа в систему -> AuthConntroller.Login-> Метод входа в систему запускает вызов Backend API для входа в систему -> Backend API запрашивает базу данных backend -> если при успешном возврате true-> backend генерирует токен -> отправляет его обратно во внешний интерфейс-> frontend использует Owin, чтобы я мог использовать атрибут [Authorize] в классах контроллера, чтобы я мог аутентифицировать пользователя?

Что-нибудь еще, что я должен учитывать при использовании такого дизайна API?

Большое спасибо за любые подсказки / уловки / ссылки / рекомендации по моей дилемме.

С уважением, Пол

1 Ответ

0 голосов
/ 21 ноября 2018

Если я правильно понимаю проблему с этими источниками, это может оказаться мало полезным:

https://docs.microsoft.com/en-us/aspnet/core/security/authentication/identity?view=aspnetcore-2.1&tabs=visual-studio

http://docs.identityserver.io/en/release/quickstarts/6_aspnet_identity.html https://github.com/openiddict/openiddict-core

В таких случаях, может не хватить Asp.Net Identity само по себе.Вы можете предоставить Auth server project эти библиотеки для ваших клиентских проектов.

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