zoukankan      html  css  js  c++  java
  • 关于oauth2中为什么不直接返回token而是传授权码code

    1.客户端会暴露 token
    授权服务器是会根据客户端传来的 redirect_url 返回给客户端 3xx 重定向状态码,然后客户端再把授权码 code 传给客户端服务器,首先前端(网页有源代码,手机app反编译)的都是不安全的,直接将 token 传给客户端会把 token 暴露


    2.授权服务器不会直接发 token
    所有授权客户都需要向授权中心注册获取 appkey 与 appscrete,其中 appkey 为公开的而 appscrete 是只有客户端与服务器可见的,更重要的是 appscrete 只能存在客户端服务器不能直接存在客户端上不然同样会暴露。
    因此客户端向授权中心申请授权时会发送自己的 appkey,然后授权中心会返回授权码,经过重定向到客户端服务器,客户端服务器申请授权时要将 appscrete 一起传给授权服务器,授权服务器一一对比确认无误后才会发放 token。
    如果客户端只发送 appkey 就能直接获取 token,那么所有人都可以模拟该客户端来获取 token 了,这得多可怕

  • 相关阅读:
    ScriptOJ-flatten2#91
    ScriptOJ-unique#89
    ScriptOJ-safeGet#99
    测试
    SQL中常用的时间格式
    SQL Server -ISNULL()函数
    SQL Server -查看数据库扩展属性
    SQL Server 中创建数据库、更改主文件组示例
    SQL Server -SET QUOTED_IDENTIFIER
    SQL Server -SET ANSI_NULLS
  • 原文地址:https://www.cnblogs.com/ming-szu/p/9391351.html
Copyright © 2011-2022 走看看