什么是ASOS

ASOS是AspNet.Security.OpenIdConnect.Server 的简称,是asp.net core框架下一个开源的OAuth2/OpenID连接服务的中间件。设计为支持.net 桌面框架和新的.net core平台。ASOS是 aspnet-contrib initiative 的一部分,是OAuth2社交登录的基础部分,可见连接( the OAuth2 social providers for ASP.NET Core)。

ASOS不止使用了OAuth2 authorization server同样的低层、协议优先的方法,而且还添加了新的openID 连接的特点例如(  配置发现 provider configuration discovery客户端发起的退出登录client-initiated logout or 用户信息支持userinfo support),另外还实现了最近Oauth2的新的规范( token撤销 token revocation or token introspection 这个需要感谢Michael Ciarlillo 的贡献)

ASOS与其他身份服务的区别

同其他身份服务不同,ASOS只提供在应用和协议细节之间的联系,不提供类似用户管理,验证页面和CORS策略的功能,这些必须自己实现。

尽管ASOS需要很多OAuth2/OpenID知识,而且需要做更多的工作相比其他交钥匙项目(比如说 IdentityServer 或者 OpenIddict),ASOS更加灵活并且易于与现有环境融合。

你的项目是否要用ASOS

若果你不熟悉OAuth2 或者 OpenID,你最好不用ASOS。相比OAuthAuthorizationServerMiddleware,ASOS设计为底层框架,而不是拿来即用的服务。必须实现自己的授权逻辑和其他功能。

当然,如果你不想成为ASOS的专家,ASOS也为你提供了一系列支持(例如请求验证、配置发现、token序列化与反序列化),你只要实现其余的具体部分即可,例如客户认证和确认页面。

OpenIddict介绍

在ASOS和ASP.net Core

Based on ASOS and ASP.NET Core  Identity身份框架的基础上。OpenIddict  是一个提供大多数认证功能的交钥匙项目,OpenIddict原生的支持OAuth2/OpenID互动和非互动的流控制,并且容易实现。仅需加一个类似ASP.NET Core Identity AccountController的AuthorizationController。

尽管Openiddict刚刚起步,它是简单项目的最好选择。如果你需要更加复杂的并且全程控制的Openid服务,ASOS是你最好的选择。关于OpenIDDict可以参考下面几篇文章:

这个系列从简到繁,基本涵盖了建立ASOS 服务端的各个方面,敬请期待。

最新文章

  1. ipv4理论知识2-分类编址、ip分类、网络标识、主机标识、地址类、地址块
  2. PHP 使用 password_hash() 给密码加密
  3. dyld: Symbol not found: _OBJC_CLASS_$_NSURLSessionDataTask
  4. DB设计原则(二)如何拆、分表
  5. Android DownloadThread.run()学习
  6. 时间处理总结(一).net
  7. 使用Swiper轮播插件引起的探索
  8. openstack搭建之-neutron配置(11)
  9. day29 二十九、元类、单例
  10. web api HttpResponseMessage的简单使用
  11. JS -- serializeJSON
  12. 阿里云负载均衡SLB 七层https协议 nginx 获取真实IP
  13. Linux下对文件进行加密备份的操作记录
  14. 《转》vue 常用ui组件
  15. 笔记本(ThinkPad)怎样关闭触摸板
  16. Eclipse中Maven WEB工程tomcat调试
  17. js判断手机是否安装了某一款app,有则打开,没有去下载
  18. PHP开发者应了解的24个库
  19. Java将字符串转成二进制码
  20. 8-11 Add All uva 10954

热门文章

  1. 查找算法的实现(C/C++实现)
  2. ZOJ 1403&&HDU 1015 Safecracker【暴力】
  3. Free Pascal初次体验(有亮点哦)
  4. .NET MongoDB Driver 2.2使用示例
  5. 设置Sql server用户对表、视图、存储过程、架构的增删改查权限
  6. <input type="text">和<textarea>的区别
  7. Android-第一天
  8. Java之IO流学习总结【下】
  9. mysql主从同步(4)-Slave延迟状态监控
  10. 【Java框架型项目从入门到装逼】第十二节 项目分层