Idr3中的授权模式也是基于OAuth2

来看看例子中的说明

   //
// 摘要:
// OpenID Connect flows.
public enum Flows
{
//
// 摘要:
// authorization code flow
AuthorizationCode = ,
//
// 摘要:
// implicit flow
Implicit = ,
//
// 摘要:
// hybrid flow
Hybrid = ,
//
// 摘要:
// client credentials flow
ClientCredentials = ,
//
// 摘要:
// resource owner password credential flow
ResourceOwner = ,
//
// 摘要:
// custom grant
Custom = ,
//
// 摘要:
// authorization code with proof key flow
AuthorizationCodeWithProofKey = ,
//
// 摘要:
// hybrid flow with proof key
HybridWithProofKey =
}

代码中的Flows枚举中有这个几个,后几个也没用过不多说

授权许可是代表资源的凭证,所有者的授权(访问受保护的资源)所使用的客户端获取访问令牌,这个规范定义了四个授权模式类型   【授权码】【隐式】【密码模式】【客户端模式】 Idr3中其他的模式均为扩展性定义附加类型的机制

【授权码】:授权码是通过授权服务器获得的作为客户端很资源所有者之间的中间凭证,是直接请求授权服务器拿到授权码,从而跨过了 先从资源所有者指向的授权服务器或者客户端所指向的授权服务器,从而通过授权码反向提供给客户端,这样增加了客户端的验证授权码的验证处理相对提高安全性,所以在请求资源权限重定向到客户端之前通过授权码、授权服务器验证资源所有者获取授权

【隐式】:这个模式简化了授权码的流程,对于使用脚本语言Javascript在浏览器中实现客户端,在这个模式中由客户端直接颁发访问令牌而不是发布不客户端授权码,与授权码模式不一样,隐式模式中授权服务器不需要不需要验证客户端,由于这个步骤少了验证客户端步骤,所以在效率、速度上快,但要注意这方面的安全影响

【密码模式】:资源所有者凭借 用户名 密码 直接获取资源授权服务器的访问令牌权限,这个模式可以消除客户端存储需要的资源凭证来使用,通过交换具有长期访问的令牌或刷新令牌的凭证

【客户端模式】:针对请求受保护的资源(事先安排好的授权资源服务器)针对客户端可能为一个安排好的整体权限,不需要特定用户资源所有者

一步一步学习IdentityServer3 (12) 授权模式的更多相关文章

  1. 一步一步学习IdentityServer3 (15) 授权模式那些事

    总结一句话,其实很简单 在什么Clients 拿的认证权限Scope 就去 去开什么Scope限制的服务接口门 在写Clients的时候,会有Scope,看下面的代码 new Client { Cli ...

  2. 一步一步学习IdentityServer3 (1)

    学习之初: IdentityServer3我自己最开始了解到的就是做一个SSO单点登录,后面发现还有单独的认证服务功能,其实它还可以做APIs的访问控制,资源授权,另外还可以为提供第三方登录,其他的自 ...

  3. 一步一步学习IdentityServer3 (2)

    下面就来做一个例子:IdentityServer3服务端的配置 VS2015创建一个MVC项目 IdrOAuth 用来授权的认证的站点

  4. 12.Linux软件安装 (一步一步学习大数据系列之 Linux)

    1.如何上传安装包到服务器 有三种方式: 1.1使用图形化工具,如: filezilla 如何使用FileZilla上传和下载文件 1.2使用 sftp 工具: 在 windows下使用CRT 软件 ...

  5. 一步一步学习IdentityServer3 (4)

    其实上述例子 很多都很找到 但是在实际生态环境中给例子有很多不一样的地方 比如自定已登录界面怎么做? 怎么访问自己的用户数据库实现登录? 怎么在接口中使用,在接口中又怎么实现与Idr3结合授权? 等等 ...

  6. 在Linux上安装Oracle RAC 12 c(12.1) 虚拟机,一步一步向导

    Oracle RAC 12 c(12.1)在Linux上安装虚拟机,一步一步向导 今天我们将看到如何安装 12 c版本1 RAC(真正的应用程序集群)数据库2 Linux 64位的虚拟机 使用VMWa ...

  7. (转) 一步一步学习ASP.NET 5 (四)- ASP.NET MVC 6四大特性

    转发:微软MVP 卢建晖 的文章,希望对大家有帮助.原文:http://blog.csdn.net/kinfey/article/details/44459625 编者语 : 昨晚写好的文章居然csd ...

  8. (转) 一步一步学习ASP.NET 5 (二)- 通过命令行和sublime创建项目

    转发:微软MVP 卢建晖 的文章,希望对大家有帮助. 注:昨天转发之后很多朋友指出了vNext的命名问题,原文作者已经做出了修改,后面的标题都适用 asp.net 5这个名称. 编者语 : 昨天发了第 ...

  9. 一步一步学习SignalR进行实时通信_1_简单介绍

    一步一步学习SignalR进行实时通信\_1_简单介绍 SignalR 一步一步学习SignalR进行实时通信_1_简单介绍 前言 SignalR介绍 支持的平台 相关说明 OWIN 结束语 参考文献 ...

随机推荐

  1. Linux下安装Python3和django并配置mysql作为django默认服务器

    我的操作系统为centos6.5 1  首先选择django要使用什么数据库.django1.10默认数据库为sqlite3,本人想使用mysql数据库,但为了测试方便顺便要安装一下sqlite开发包 ...

  2. day13 类的补充

    访问修饰符                          同包                          不同包 本类         子类         非子类        子类   ...

  3. MapReduce (MRV1)设计理念与基本架构

    MapReduce 是一个分布式计算框架,主要由两部分组成:编程模型和运行时环境. 其中,编程模型为用户提供了非常易用的编程接口,用户只需要像编写串行程序一样实现几个简单的函数即可实现一个分布式程序, ...

  4. 视差滚动(Parallax Scrolling)的一点小心得

    下面内容来源于我知乎的这个答案:http://www.zhihu.com/question/20990029/answer/21436067 假期有空,整理到博客园这边,并做了一些语境的调整. ——— ...

  5. github 新创建repositories

    1. 在github上新建repo 2. 找到改repo的地址,用命令git clone https://....,  拉取到本地 3. 打开一个单独的窗口,打开此文件夹 4. 创建自己的python ...

  6. 【AtCoder Regular Contest 080E】Young Maids [堆][线段树]

    Young Maids Time Limit: 50 Sec  Memory Limit: 512 MB Description 给定一个排列,每次选出相邻的两个放在队头,要求字典序最小. Input ...

  7. element-UI 表单图片判空验证问题

    本文地址:http://www.cnblogs.com/veinyin/p/8567167.html  element-UI的表单验证似乎并没有覆盖到文件上传上面,当我们需要在表单里验证图片时,就会出 ...

  8. Tju_Oj_2790Fireworks Show

    这个题主要在于时间复杂度的计算,N是10的6次方,C是10的2次方,OJ系统可接受的时间是10的7次方(室友说是无数先人测出来了┭┮﹏┭┮),所以如果普通遍历的话肯定会超时.而代码中是跳着走了,相当于 ...

  9. slice层解析

    如果说之前的Concat是将多个bottom合并成一个top的话,那么这篇博客的slice层则完全相反,是把一个bottom分解成多个top,这带来了一个问题,为什么要这么做呢?为什么要把一个低层的切 ...

  10. 【leetcode 简单】 第一百一十二题 重复的子字符串

    给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成.给定的字符串只含有小写英文字母,并且长度不超过10000. 示例 1: 输入: "abab" 输出: True 解释 ...