zoukankan      html  css  js  c++  java
  • OAuth2.0 工作流程

    重要术语
     
    Authorization Server:授权服务器,能够成功验证资源拥有者和获取授权,并在此之后分发令牌的服务器;
    Resource Server:资源服务器,存储用户的数据资源,能够接受和响应受保护资源请求的服务器;
    Client:客户端,获取授权和发送受保护资源请求的第三方应用;
    Resource Owner:资源拥有者,能够对受保护资源进行访问许可控制的实体;
    Protected Resource:受保护资源,能够使用OAuth请求获取的访问限制性资源;
    Authorization Code:授权码;
    Refresh Token:刷新令牌;
    Access Token:访问令牌。
     
    核心工作流程
    OAuth 为客户端提供了一种代表资源拥有者访问受保护资源的方法。在客户端访问受保护资源之前,它必须先从资源拥有者获取授权(访问许可),然后用访问许可交换访问令牌(Access Token,包含许可的作用域、持续时间和其它属性等信息)。客户端通过向资源服务器出示访问令牌来访问受保护资源。访问令牌提供了一个抽象层,将不同的授权结构(如用户名密码)替换成资源服务器可以理解的单一访问令牌。这种抽象使得分发短期有效的访问令牌成为可能,也使得资源服务器不必理解多种多样的授权机制。使用OAuth2.0 机制,进行认证授权,获取访问令牌,并通过访问令牌来访问受保护资源,如图所示:
     
     
    OAuth2.0 的工作流程简述如下:
    (1) 客户端从资源拥有者(最终用户)那里请
    求授权。授权请求能够直接发送给资源拥有者,或者
    间接的通过授权服务器发送请求;
    (2) 资源拥有者为客户端授权,给客户端发送一个
    访问许可(Authorization Code);
    (3) 客户端出示自己的私有证书(client_id 和
    client_secret)和上一步拿到的访问许可,来向授权服务
    器请求一个访问令牌;
    (4) 授权服务器验证客户端的私有证书和访问许
    可的有效性,如果验证有效,则向客户端发送一个访
    问令牌,访问令牌包括许可的作用域、有效时间和一
    些其他属性信息;
    (5) 客户端出示访问令牌向资源服务器请求
    受保护资源;
    (6) 资源服务器对访问令牌做出响应。
  • 相关阅读:
    asp.net zero 8.2 学习-9-多租户设置,发送邮件配置
    asp.net zero 8.2 学习-8-实现在页面添加、编辑、删除、查看实体
    asp.net zero 8.2 学习-7-展示实体列表,实现查询,分页,过滤,排序功能
    asp.net zero 8.2 学习-6-权限控制
    asp.net zero 8.2 学习-5-实现增删改查服务及API测试
    asp.net zero 8.2 学习-4-创建接口及服务
    asp.net zero 8.2 学习-3-添加实体,并迁移到数据库
    asp.net zero 8.2 学习-2-创建一个页面
    asp.net zero 8.2 学习-1-安装
    .net core 3.1 jwt认证
  • 原文地址:https://www.cnblogs.com/cuihongwei1988/p/5333369.html
Copyright © 2011-2022 走看看