Проверка подлинности Web API2 в службе REST

Мы хотели бы использовать новую систему авторизации/токенов Web API2 и обновились до MVC5/Web API2.

Существует внутренний REST API, который уже выполняет аутентификацию, которую мы хотели бы использовать повторно. По сути, он принимает uid/pwd и некоторые дополнительные параметры профиля и возвращает true/false.

Вопрос: как подключить фильтр проверки подлинности к этой службе вместо хранилища удостоверений на основе базы данных Entity Framework 6 по умолчанию?

Я посмотрел на класс UserManager, и неясно, что это правильный путь.


person SEAFERN    schedule 13.11.2013    source источник
comment
В видео Даниэля Рота о веб-API 2.0 было краткое упоминание об аутентификации в отношении веб-службы, но он не стал вдаваться в подробности.   -  person SEAFERN    schedule 14.11.2013
comment
Можете ли вы уточнить, как вы хотите, чтобы фильтр аутентификации работал? Вы хотите использовать обычную схему аутентификации или какой-либо другой механизм? (Как имя пользователя/пароль передается фильтру.)   -  person dmatson    schedule 14.11.2013
comment
Создайте проект нового одностраничного приложения VS2013. Просмотрите папку Providers, App_Start/WebApiConfig.cs, App_Start/Startup.Auth.cs. И если вы все еще запутались, поймите, что такое аутентификация OWIN.   -  person jd4u    schedule 14.11.2013
comment
Разобрался: встроенный ApplicationOAuthProvider.cs имеет хорошую точку интеграции, GrantResourceOwnerCredentials(), которая имеет имя пользователя/пароль в параметре контекста. Внутри я подключил вызов нашей веб-службы аутентификации и разрешил добавление записи в БД и выдачу токена только в том случае, если вызов прошел успешно с действительным пользователем. Проблема со схемой заключается в том, что мы находимся в самом низу стека с реализацией Entity Framework и, следовательно, должны использовать БД. @dmatson, мы перешли с BA против веб-сервиса на аутентификацию на основе токенов. И jd4u: спасибо, но меня больше всего беспокоила часть выпуска токена.   -  person SEAFERN    schedule 03.12.2013


Ответы (1)


Надеюсь, следующее видео ответит на ваш вопрос. http://www.pluralsight.com/training/Courses/TableOfContents/webapi-v2-security

person samdubey    schedule 15.04.2014