![]() |
1
37
编辑(2021 1月28日) : as part of the 3.0 update giving advanced users the same lower-level approach as AspNet.Security.OpenIdConnect.Server .
实际上,我认为最重要的区别是 这两个LIB的目标不同 . ASOS的唯一任务是帮助您处理原始的OAuth 2.0/OIDC协议细节:其他一切都完全超出了范围。具体来说,这意味着用户、应用程序或商店等概念——可以在OpenIddict和IdentityServer中找到——在ASOS中完全不存在(这意味着你可以自由地带来自己的实现……和自己的抽象)。
虽然IdentityServer将公开许多抽象和服务,允许配置特定的功能,但ASOS是从Katana的
在使用ASOS时,您必须处理原始的OpenID连接请求,并实现潜在的敏感事项,如客户端身份验证(例如使用包含客户端凭据的数据库),这就是为什么ASOS的核心目标是了解OAuth2/OIDC协议如何工作的人。另一方面,OpenIddict和IdentityServer将为您实现这些功能。
虽然它将为您提供充分的灵活性来实现用户身份验证部分(例如在您自己的授权控制器中,使用ASP.NET核心身份或您自己的身份验证方法),但它将处理复杂的请求验证过程,并使其对您的应用程序透明,而不会让您被大量的配置选项淹没。
与ASOS(尽量灵活并尽可能接近规范)不同,OpenIddict通常具有更严格的验证例程,我个人认为这是最佳实践。例如,它将自动拒绝包含以下内容的授权请求:
|