您的位置:首页 > 编程语言 > Java开发

spring-oauth-server实践:授权方式四:client_credentials 模式下access_token的产生

2017-07-11 19:51 681 查看

授权结果

获取access_token成功, 访问资源服务器API
http://localhost:9000/api-gateway-engine/unity/user_info?access_token=94d129e7-7898-4084-9c08-6bfe27a2521e

准备工作





一、授权过程

FirewalledRequest[ Request(POST //10.200.44.82:9000/api-gateway-engine/oauth/token)@6406550f]

1、身份识别







2、权限检查









org.springframework.security.access.vote.AuthenticatedVoter@4d4dfe95



3、授权处理

3.1、授权入口

请求参数





ClientCredentialsTokenGranter.grant("client_credentials",tokenRequest)

org.springframework.security.oauth2.provider.client.ClientCredentialsTokenGranter@97e8aa0



3.2、获取数据库中的oauth_client_details信息



3.3、创建OAuth2Authentication对象(根据storedOAuth2Request对象(client+tokenRequest))









3.4、构建storedOAuth2Request(根据client和tokenRequest)









3.5、如果已经存在access_token, 更新数据库返回









二、结果验证

1、授权结果



第二步 访问资源服务器的API
access_token
94d129e7-7898-4084-9c08-6bfe27a2521e
token_type
bearer
scope
read write
expires_in
2591843
获取access_token成功, 访问资源服务器API
http://localhost:9000/api-gateway-engine/unity/user_info?access_token=94d129e7-7898-4084-9c08-6bfe27a2521e JSON格式的资源服务器数据

2、访问业务

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐