|
|
|
@ -94,7 +94,8 @@
|
|
|
|
|
在实际应用中, <em>web_server_redirect_uri</em>在注册时是必须填写的, 一般用来处理服务器返回的<code>code</code>, |
|
|
|
|
验证<code>state</code>是否合法与通过<code>code</code>去换取<code>access_token</code>值. |
|
|
|
|
<br/> |
|
|
|
|
在spring-oauth-client项目中, 可具体参考<code>AuthorizationCodeController.java</code>中的<code>authorizationCodeCallback</code>方法. |
|
|
|
|
在<a href="http://git.oschina.net/mkk/spring-oauth-client">spring-oauth-client</a>项目中, |
|
|
|
|
可具体参考<code>AuthorizationCodeController.java</code>中的<code>authorizationCodeCallback</code>方法. |
|
|
|
|
</li> |
|
|
|
|
<li> |
|
|
|
|
当grant_type=<code>implicit</code>时通过<code>redirect_uri</code>的hash值来传递<code>access_token</code>值.如: |
|
|
|
@ -106,19 +107,49 @@
|
|
|
|
|
</tr> |
|
|
|
|
<tr> |
|
|
|
|
<td>authorities</td> |
|
|
|
|
<td></td> |
|
|
|
|
<td> |
|
|
|
|
指定客户端所拥有的Spring Security的权限值,可选, 若有多个权限值,用逗号(,)分隔, 如: "ROLE_UNITY,ROLE_USER". |
|
|
|
|
<br/> |
|
|
|
|
对于是否要设置该字段的值,要根据不同的grant_type来判断, |
|
|
|
|
若客户端在Oauth流程中需要用户的用户名(username)与密码(password)的(<code>authorization_code</code>,<code>password</code>), |
|
|
|
|
<br/> |
|
|
|
|
则该字段可以不需要设置值,因为服务端将根据用户在服务端所拥有的权限来判断是否有权限访问对应的API. |
|
|
|
|
<br/> |
|
|
|
|
但如果客户端在Oauth流程中不需要用户信息的(<code>implicit</code>,<code>client_credentials</code>), |
|
|
|
|
<br/> |
|
|
|
|
则该字段必须要设置对应的权限值, 因为服务端将根据该字段值的权限来判断是否有权限访问对应的API. |
|
|
|
|
<br/> |
|
|
|
|
|
|
|
|
|
<p class="help-block">(请在<a |
|
|
|
|
href="http://git.oschina.net/mkk/spring-oauth-client">spring-oauth-client</a>项目中来测试不同grant_type时authorities的变化) |
|
|
|
|
</p> |
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr> |
|
|
|
|
<td>access_token_validity</td> |
|
|
|
|
<td></td> |
|
|
|
|
<td> |
|
|
|
|
设定客户端的access_token的有效时间值(单位:秒),可选, 若不设定值则使用默认的有效时间值(60 * 60 * 12, 12小时). |
|
|
|
|
<br/> |
|
|
|
|
在服务端获取的access_token JSON数据中的<code>expires_in</code>字段的值即为当前access_token的有效时间值. |
|
|
|
|
<br/> |
|
|
|
|
在实际应用中, 该值一般是由服务端处理的, 不需要客户端自定义. |
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr> |
|
|
|
|
<td>refresh_token_validity</td> |
|
|
|
|
<td></td> |
|
|
|
|
<td> |
|
|
|
|
设定客户端的refresh_token的有效时间值(单位:秒),可选, 若不设定值则使用默认的有效时间值(60 * 60 * 24 * 30, 30天). |
|
|
|
|
<br/> |
|
|
|
|
若客户端的grant_type不包括<code>refresh_token</code>,则不用关心该字段 |
|
|
|
|
<br/> |
|
|
|
|
在实际应用中, 该值一般是由服务端处理的, 不需要客户端自定义. |
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr> |
|
|
|
|
<td>additional_information</td> |
|
|
|
|
<td></td> |
|
|
|
|
<td> |
|
|
|
|
|
|
|
|
|
</td> |
|
|
|
|
</tr> |
|
|
|
|
<tr> |
|
|
|
|
<td>create_time</td> |
|
|
|
|