Подтвердить что ты не робот

Какова связь между owin и oAuth2.0?

Я изучаю внешние логистические стратегии, и терминология меня смущает. Какая связь между следующим.

  • Owin
  • OauthWebSecurity
  • OAuth 2.0
  • Овин Катана
  • Идентификатор ASP.NET
4b9b3361

Ответ 1

Owin

Owin - это не более чем спецификация. Это означает Open Web Interface для .Net. В очень упрощенном виде она основана на идее, что с использованием нескольких языковых конструкций (делегатов и словаря) вы можете создать структуру для обработки веб-запросов, которая не зависит от того, где она размещена (вы даже можете запустить "приложение owin" из консольное приложение).

Реализация спецификации Owin называется Katana.

OAuth

OAuth 2.0 является протоколом авторизации. Идея OAuth заключается в том, что вы (владелец ресурса) можете делегировать права доступа третьим лицам. Примером может служить веб-приложение, которое может размещать на вашей стене Facebook для вас. Опять же, в очень упрощенных выражениях, это материализуется путем отправки перенаправления 302 пользователю, когда она обращается к защищенному ресурсу. Это 302 перенаправляет пользователя, например, на страницу входа в систему Facebook (https://www.facebook.com/dialog/oauth?client_id=...&redirect_url=[yourwebapp]&scope=[permissionsrequiredfromuser]). После входа в facebook, примите запрос на разрешение, facebook отправит перенаправление 302 на адрес redirect_url, предоставленный access_token, который затем можно использовать для отправки запросов от имени пользователя, предоставившего учетные данные. Например, чтобы получить информацию о пользователе, вы должны выполнить запрос https://graph.facebook.com/me?access_token=[access_token]. Существуют вариации для этого рабочего процесса. Все они объясняются в ссылках в конце ответа.

Идентификатор ASP.NET

Идентификатор ASP.NET не имеет ничего общего с ASP.NET. Говорите о бедных именах... Он предоставляет функциональные возможности для сохранения и извлечения пользовательских данных из источника данных. Он также предоставляет вам возможность связывать требования и роли с пользователями, другими "поставщиками логинов" (это было бы так, когда вы "входите в систему с помощью facebook", а ваш user_id из facebook будет связан с вашим локальным идентификатором пользователя, эта информация хранится в таблице AspNetUserLogins).

То, как вы видите, что оно используется в шаблоне проекта MVC, находится в контроллере учетной записи и в файле cookieAuthenticationMiddleware.

Ссылки

Owin/Katana:

http://odetocode.com/blogs/scott/archive/2013/07/09/getting-started-with-owin-katana-and-vs2013.aspx http://odetocode.com/blogs/scott/archive/2013/11/11/writing-owin-middleware.aspx http://odetocode.com/blogs/scott/archive/2013/11/12/simple-logging-middleware-katana-part-4.aspx http://www.asp.net/aspnet/overview/owin-and-katana/an-overview-of-project-katana http://www.asp.net/aspnet/overview/owin-and-katana/owin-startup-class-detection

OAuth

https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow/v2.1 http://blogs.msdn.com/b/webdev/archive/2013/07/03/understanding-owin-forms-authentication-in-mvc-5.aspx http://www.asp.net/web-api/overview/security/external-authentication-services

Идентификатор ASP.NET

http://brockallen.com/2013/10/20/the-good-the-bad-and-the-ugly-of-asp-net-identity/ http://curah.microsoft.com/55636/aspnet-identity http://typecastexception.com/post/2014/04/20/ASPNET-MVC-and-Identity-20-Understanding-the-Basics.aspx