工作学习记录

客户端模式

2019-07-08  本文已影响0人  好久不见__dbd9

客户端模式

客户端模式(Client Credentials Grant)指客户端以自己的名义,而不是以用户的名义,向"服务提供商"进行认证。

严格地说,客户端模式并不属于OAuth框架所要解决的问题。在这种模式中,用户直接向客户端注册,客户端以自己的名义要求"服务提供商"提供服务,其实不存在授权问题。

它的步骤如下:

(A)客户端向认证服务器进行身份认证,并要求一个访问令牌。

(B)认证服务器确认无误后,向客户端提供访问令牌。

A步骤中,客户端发出的HTTP请求,包含以下参数:

granttype:表示授权类型,此处的值固定为"clientcredentials",必选项。

scope:表示权限范围,可选项。

    POST /token HTTP/1.1

    Host: server.example.com

    Authorization: Basic czZCaGRSa3F0MzpnWDFmQmF0M2JW

    Content-Type: application/x-www-form-urlencoded

    grant_type=client_credentials

认证服务器必须以某种方式,验证客户端身份。

B步骤中,认证服务器向客户端发送访问令牌,下面是一个例子。

    HTTP/1.1 200 OK

    Content-Type: application/json;charset=UTF-8

    Cache-Control: no-store

    Pragma: no-cache

    {

      "access_token":"2YotnFZFEjr1zCsicMWpAA",

      "token_type":"example",

      "expires_in":3600,

      "example_parameter":"example_value"

    }

---------------------

本文来自 落笔映半海 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/qq_36427770/article/details/68922558?utm_source=copy

Client模式           

 请求格式:POST   -D  "&client_id=appid&grant_type=client_credentials&client_secret=appkey"  http://localhost/OAuth/token            

服务器返回来的访问令牌:         

   {          "access_token":"4e56e9ec-2f8e-46b4-88b1-5d06847909ad", 

              "token_type": "bearer” ,

              "refresh_token":"7e14c979-7039-49d0-9c5d-854efe7f5b38",

              "expires_in": 36133 ,

              "scope": "read,write" 

           }

---------------------

本文来自 张胜楠 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/tclzsn7456/article/details/79550249?utm_source=copy

<dependency>  

<groupId>org.apache.oltu.oauth2</groupId>  

<artifactId>org.apache.oltu.oauth2.client</artifactId>  

<version>0.31</version>  

</dependency>

上一篇下一篇

猜你喜欢

热点阅读