• OpenID Connect Core 1.0(三)验证


    OpenID Connect执行终端用户登录或确定终端用户已经登录的验证工作。OpenID Connect 使服务器以一种安全的方式返回验证结果。所以客户可以依靠它。出于这个原因,在这种情况下客户被称为依赖方(RP)。

    验证结果在返回ID令牌中,ID令牌定义(第二节)。它声明表达这些信息作为发行人,标识符,认证到期时间等。

    验证可以按照三种方式:

    1、授权码流程( response_type=code );

    2、隐式流程( response_type=id_token token 或 response_type=id_token );

    3、混合流程 (使用其他响应类型值在 OAuth 2.0中定义的多个响应类型编码实践 [OAuth.Responses])。流程确定以何种方式以ID令牌和访问令牌返回给客户端。

    接下来对三个流程的特点进行了总结,显示在非规范化表中。该表的目的是提供一些指导在特定的上下文中选择哪一个流程。

    属性

    授权码流程

    隐式流程

    混合流程

    从授权终结点返回所有令牌

    从令牌终结点返回的所有令牌

    令牌不显示用户代理

    客户端可以通过验证

    可刷新令牌

    一次往返即沟通完成

    多用于服务器到服务器通信

    可变

     

     

     

     

     

     

     

     

     

     

     

     

    使用哪种流程取决于授权请求中的response_type值。下列就是各种response_type 值选择对应的流程:

    response_type值

    流程

    code

    Authorization Code Flow

    id_token

    Implicit Flow

    id_token token

    Implicit Flow

    code id_token

    Hybrid Flow

    code token

    Hybrid Flow

    code id_token token

    Hybrid Flow

     

     

     

     

     

     

     

     

     

     

     

    所有这些响应类型的值除了code均定义在OAuth 2.0 (RFC6749)中,OAuth 2.0中定义多个响应类型编码实践 (OAuth.Responses) 规范。注意:虽然OAuth 2.0还定义了令牌隐式流程响应类型值,但OpenID Connect不使用这种响应类型,因为没有ID令牌返回。

  • 相关阅读:
    BLOB
    cesium 检测视图改变的代码
    有关Nodejs的一些插件介绍
    线程基础知识
    进程和线程概念对比
    C#对象与XMl文件之间的相互转换(转)
    简介C#读取XML的方式(转)
    关于c# Debug和Release的区别 (转)
    c++堆和栈(转)
    浅谈C#堆栈与托管堆的工作方式(转)
  • 原文地址:https://www.cnblogs.com/athinker/p/9746050.html
Copyright © 2020-2023  润新知