Set*_*Set 16 openid-connect asp.net-core identityserver4 openiddict
为了理解我可以用于OpenId Connect Server实现的内容,我已经研究了它们各自的含义:
ASP.NET Core 2的OpenID Connect和OAuth 2.0框架.
AspNet.Security.OpenIdConnect.Server:
对于两个ASP.NET核心的1.x/2.x和OWIN /卡塔纳3.X/4.x的一种先进的OAuth2/ID连接服务器框架,目的是提供一个低级别的,协议的第一种方法.
OpenIddict旨在提供一种简单易用的解决方案,以在任何ASP.NET Core 1.x或2.x应用程序中实现OpenID Connect服务器.
OpenIddict基于
AspNet.Security.OpenIdConnect.Server控制OpenID Connect身份验证流程,可以与任何成员资格堆栈一起使用,包括ASP.NET核心身份.
还检查了所有这些都使用ASP.NET Core Identity作为会员系统.
所以我目前的理解是,IdentityServer4并且OpenIdConnect.Server是解决同一问题的两个替代框架.主要区别在于受支持的ASP.NET Core版本列表.
关于Openiddict- 它是一种基于简化服务器创建的扩展AspNet.Security.OpenIdConnect.Server.
我错过了什么,或者这是一般的事情吗?
Kév*_*let 18
所以我目前的理解是IdentityServer4和OpenIdConnect.Server是解决同一问题的两个替代框架.主要区别在于受支持的ASP.NET Core版本列表.
实际上,我认为最重要的区别是这两个libs没有共同的目标.ASOS唯一的任务是帮助您处理原始的OAuth2/OIDC协议细节:其他一切都完全超出范围.具体地说,这意味着您可以在OpenIddict和IdentityServer中找到的用户,应用程序或商店等概念在ASOS中完全不存在(这意味着您可以自由地实现自己的实现......以及您自己的抽象).
虽然IdentityServer将公开许多允许配置特定功能的抽象和服务,但ASOS(从Katana分支)OAuthAuthorizationServerMiddleware具有集中的基于事件的低级API(命名OpenIdConnectServerProvider),其行为与ASP.NET核心安全中间件开发的方式完全相同由MSFT.
使用ASOS时,您必须处理原始OpenID Connect请求并实施可能敏感的事情,例如客户端身份验证(例如,使用包含客户端凭据的数据库),这就是为什么ASOS的核心目标是了解OAuth2/OIDC协议如何工作的人.另一方面,OpenIddict和IdentityServer将为您实现这些功能.
关于Openiddict - 它是一种基于AspNet.Security.OpenIdConnect.Server简化服务器创建的扩展.
最初,这确实是我被要求设计它的方式.OpenIddict是为那些对OAuth2和OpenID Connect的协议细节感到不太满意的非专家创建的.
虽然它将为您提供实现用户身份验证部分的完全灵活性(例如,在您自己的授权控制器中,使用ASP.NET Core Identity或您自己的身份验证方法),但它将处理复杂的请求验证过程并使其对您的应用程序透明,没有淹没你的大量配置选项.
与ASOS(尽可能灵活且尽可能接近规范)不同,OpenIddict通常附带更严格的验证例程,我个人认为这是最佳实践.例如,它会自动拒绝包含response_type=token客户端是否为机密应用程序的授权请求,即使OpenID Connect规范未禁止这样做.
| 归档时间: |
|
| 查看次数: |
5977 次 |
| 最近记录: |