什么是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 服务端的各个方面,敬请期待。

用ASOS建立自定义的OpenID 服务(一)-----------简介的更多相关文章

  1. 10_Jaxws使用自定义pojo发布服务

    [简述] 查询三天的天气信息(天气概况.日期.温度),测试jaxws是否支持自定义pojo发布服务. [开发过程] 服务端: 1.自定义pojo(天气概况.日期.温度) 2.开发SEI接口及实现类 3 ...

  2. Power BI 与 Azure Analysis Services 的数据关联:1、建立 Azure Analysis Services服务

    Power BI 与 Azure  Analysis Services 的数据关联:1.建立  Azure  Analysis Services服务

  3. 6-1 建立客户端与zk服务端的连接

    6-1 建立客户端与zk服务端的连接 zookeeper原生java api使用 会话连接与恢复; 节点的增删改查; watch与acl的相关操作; 导入jar包;

  4. Ionic-wechat项目边开发边学(三):自定义样式,指令,服务

    摘要 上一篇文章主要介绍了一个ionic项目的标准目录结构,header标签的使用,以及页面之间的切换.这篇文章实现的功能有: 消息数据的获取, 消息列表的展示, 消息标为已读/未读, 主要涉及的到的 ...

  5. linux自定义开机启动服务和chkconfig使用方法

    linux自定义开机启动服务和chkconfig使用方法 1. 服务概述在linux操作系统下,经常需要创建一些服务,这些服务被做成shell脚本,这些服务需要在系统启动的时候自动启动,关闭的时候自动 ...

  6. (转)linux自定义开机启动服务和chkconfig使用方法

    原文:https://www.cnblogs.com/jimeper/archive/2013/03/12/2955687.html linux自定义开机启动服务和chkconfig使用方法 1. 服 ...

  7. 163_技巧_Power BI 一键批量建立自定义字段参数

    163_技巧_Power BI 一键批量建立自定义字段参数 一.背景 在 2022 年 5 月开始,Power BI 新增了一个非常有用的功能字段参数.再也不用写一串的 SWITCH 了.字段参数的效 ...

  8. ASP.NET Core 1.1 静态文件、路由、自定义中间件、身份验证简介

    概述 之前写过一篇关于<ASP.NET Core 1.0 静态文件.路由.自定义中间件.身份验证简介>的文章,主要介绍了ASP.NET Core中StaticFile.Middleware ...

  9. ASP.NET Core 1.0 静态文件、路由、自定义中间件、身份验证简介

    概述 ASP.NET Core 1.0是ASP.NET的一个重要的重新设计. 例如,在ASP.NET Core中,使用Middleware编写请求管道. ASP.NET Core中间件对HttpCon ...

随机推荐

  1. [51nod1532]带可选字符的多字符串匹配

    有一个文本串,它的长度为m (1 <= m <= 2000000),现在想找出其中所有的符合特定模式的子串位置. 符合特定模式是指,该子串的长度为n (1 <= n <= 50 ...

  2. CF 615D Multipliers

    题目:http://codeforces.com/contest/615/problem/D 求n的约数乘积. 设d(x)为x的约数个数,x=p1^a1+p2^a2+……+pn^an,f(x)为x的约 ...

  3. 二 @ResponseBody用法

    @ResponseBody底层是通过response.getwriter()方法将数据写回前 台 @ResponseBody @RequestMapping (value="/queryLi ...

  4. chorme调试Paused in debugger问题解决

    最近出现的问题,使用chorme调试代码总是这个状态(Paused in debugger[debug的时候暂停了]): 一刷新就这样,非常的不舒服.当然你可以选择多按几次F8跳出,下面提供几种方式解 ...

  5. 如何初始化grunt

    为什么使用任务运行工具Grunt -- 官方解释 简而言之,自动化.当你处理诸如代码最小化, 代码编译, 单元测试, 代码规范校验等等重复任务时, 你必须要做的工作越少,你的工作就变得越简单.在你完成 ...

  6. windows server 2008使用nginx转发API异常解决办法

    公司比较传统,一直使用的JSP做项目,没有遇到过跨域问题. 最近因为公司接到一个微信spa项目,因为考虑到项目需要调用老接口,斗胆选择nginx(1.12.1)做接口转发服务, 开发环境使用的win1 ...

  7. 修改国内yum源

    yum的源配置文件名为:CentOS-Base.repo 一般情况是在/etc/yum.repos.d目录下有CentOS-Base.repo 备份CentOS-Base.repo文件 打开这个网站h ...

  8. 读书笔记——《C++ Concurrency IN ACTION》

    =================================版权声明================================= 版权声明:原创文章 禁止转载  请通过右侧公告中的“联系邮 ...

  9. extends和implements的区别

    extends表示继承 implements表示抽象类的接口

  10. iphone开发笔记目录

    http://www.cnblogs.com/syxchina/archive/2012/10/20/2732731.html#2653802