owin和oAuth2.0之间的关系是什么?

owin和oAuth2.0之间的关系是什么?,oauth,asp.net-mvc-5,owin,Oauth,Asp.net Mvc 5,Owin,我研究外部登录策略,这些术语让我感到困惑。以下两者之间有什么关系 奥温 OauthWebSecurity OAuth2.0 奥文卡塔纳 ASP.NET标识 Owin 奥文只不过是一个孩子。它代表.Net的开放Web界面。 用非常简单的术语来说,它基于这样一种想法:使用一些语言构造(委托和字典),您可以创建一个框架来处理web请求,该框架独立于web请求的宿主位置(您甚至可以从控制台应用程序运行“owin应用程序”) Owin规范的实现称为Katana 非统组织 OAuth2.0是一个授权协议。

我研究外部登录策略,这些术语让我感到困惑。以下两者之间有什么关系

  • 奥温
  • OauthWebSecurity
  • OAuth2.0
  • 奥文卡塔纳
  • ASP.NET标识
Owin 奥文只不过是一个孩子。它代表.Net的开放Web界面。 用非常简单的术语来说,它基于这样一种想法:使用一些语言构造(委托和字典),您可以创建一个框架来处理web请求,该框架独立于web请求的宿主位置(您甚至可以从控制台应用程序运行“owin应用程序”)

Owin规范的实现称为Katana

非统组织 OAuth2.0是一个授权协议。OAuth背后的思想是,您(资源所有者)可以将访问权限委托给第三方。例如,一个Web应用程序可以为您在Facebook墙上发布信息。 同样,用非常简单的术语来说,当用户访问受保护的资源时,通过向用户发送302重定向来实现。该302将用户重定向到Facebook的oauth登录页面()。 登录facebook后,接受权限请求,facebook将向您提供的重定向url发送302重定向,该url带有访问令牌,您可以使用该令牌代表提供凭据的用户发送请求。例如,要获取有关您将向其执行请求的用户的信息。 此工作流有多种变体。答案末尾的链接中对它们进行了解释

ASP.NET标识 ASP.NET标识与ASP.NET无关。谈论糟糕的命名。。。它提供了从数据源保存和检索用户数据的功能。它还使您能够将声明和角色与用户、其他“登录提供商”相关联(当您“使用facebook登录”并且您的facebook用户id与您的本地用户id相关联时,这种情况会发生,此信息存储在AspNetUserLogins表中)

在MVC项目模板中使用它的方式是在Account controller和CookieAuthenticationMiddleware中

工具书类 奥温/卡塔纳:

非统组织

ASP.NET标识

(最新的方法-从技术上讲,您必须实现几个方法。这里没有几个示例,您可以查看它是如何在IdentityServer4 for.net core中实现的)

我认为还值得一提的是,Microsoft.Owin.Security.OAuth是为实现OAuth协议而开发的Owin安全中间件(请有人核实此信息,因为我是这方面的新手)