IdentityModel 对比 Microsoft.IdentityModel 对比 System.IdentityModel
IdentityModel vs Microsoft.IdentityModel vs System.IdentityModel
我正在使用 OWIN 在经典 ASP.net MVC 应用程序中实施 OIDC/OAuth 身份验证和授权。对于微软的OIDC中间件不支持的API调用,看来我还有一些选择。
- 我可以直接向 IdP 制作和发出休息请求。
- 我可以使用 System.IdentityModel 中包含的 类。
- 我可以使用 Microsoft.IdentityModel 中包含的 类。
- 我可以安装和使用由 Dominick Baier 和 Brock Allen 构建的 IdentityModel
可能还有其他选择。其中,似乎Dominick和Brock的IdentityModel最为成熟、先进和完善。
鉴于我将经典 ASP.net MVC 与 OWIN 结合使用,我应该偏爱其中一种方法还是需要结合使用上述方法?我会在哪里使用一个而不是另一个?有什么优缺点?
我知道有一些较旧的帖子将 System.IdentityModel 与 Microsoft.IdentityModel 进行比较,但我对 2020 年最好的东西更感兴趣。:-)
马克
身份模型
对于 C#,IdentityModel HttpClient 扩展方法为 OAuth 消息提供了一个很好的外观,就像我的 this example class 中那样。
SYSTEM.IDENTITYMODEL
这有一些 类 您可以在服务器端网络应用程序中使用,例如声明/委托人。
MICROSOFT.IDENTITYMODEL
这主要包含旧的/多余的 WS-Federation 内容,最好忽略。
欧文
除了处理 OAuth/OIDC 消息外,它还为服务器端网络应用程序处理 cookie。 IdentityModel 比基于 cookie 更基于令牌。
单页应用程序
最近我个人的偏好是开发单页应用程序。在此设置中,如果构建 C# API,我将使用 IdentityModel 库。
摘要
我肯定会使用 IdentityModel Client 库来处理您提到的额外请求to.I不过我认为它不会发出 cookie,所以可能会继续使用 OWIN Openid Connect。
我正在使用 OWIN 在经典 ASP.net MVC 应用程序中实施 OIDC/OAuth 身份验证和授权。对于微软的OIDC中间件不支持的API调用,看来我还有一些选择。
- 我可以直接向 IdP 制作和发出休息请求。
- 我可以使用 System.IdentityModel 中包含的 类。
- 我可以使用 Microsoft.IdentityModel 中包含的 类。
- 我可以安装和使用由 Dominick Baier 和 Brock Allen 构建的 IdentityModel
可能还有其他选择。其中,似乎Dominick和Brock的IdentityModel最为成熟、先进和完善。
鉴于我将经典 ASP.net MVC 与 OWIN 结合使用,我应该偏爱其中一种方法还是需要结合使用上述方法?我会在哪里使用一个而不是另一个?有什么优缺点?
我知道有一些较旧的帖子将 System.IdentityModel 与 Microsoft.IdentityModel 进行比较,但我对 2020 年最好的东西更感兴趣。:-)
马克
身份模型
对于 C#,IdentityModel HttpClient 扩展方法为 OAuth 消息提供了一个很好的外观,就像我的 this example class 中那样。
SYSTEM.IDENTITYMODEL
这有一些 类 您可以在服务器端网络应用程序中使用,例如声明/委托人。
MICROSOFT.IDENTITYMODEL
这主要包含旧的/多余的 WS-Federation 内容,最好忽略。
欧文
除了处理 OAuth/OIDC 消息外,它还为服务器端网络应用程序处理 cookie。 IdentityModel 比基于 cookie 更基于令牌。
单页应用程序
最近我个人的偏好是开发单页应用程序。在此设置中,如果构建 C# API,我将使用 IdentityModel 库。
摘要
我肯定会使用 IdentityModel Client 库来处理您提到的额外请求to.I不过我认为它不会发出 cookie,所以可能会继续使用 OWIN Openid Connect。