springblade oauth2

阅读数:69 评论数:0

跳转到新版页面

分类

python/Java

正文

1、密码模式

密码模式主要针对可信应用。

/blade-auth/oauth/token

请求头:
    Authorization : Basic c3dvcmQ6c3dvcmRfc2VjcmV0 ("c3dvcmQ6c3dvcmRfc2VjcmV0"为clientId:clientSecret串转换为的base64编码)
    Tenant-Id:000000(替换为对应的租户id)

表单:
    grant_type:password
    scope:all
    username:admin
    password:admin

 

2、刷新token

/blade-auth/oauth/token

请求头:
    Authorization : Basic c3dvcmQ6c3dvcmRfc2VjcmV0 ("c3dvcmQ6c3dvcmRfc2VjcmV0"为clientId:clientSecret串转换为的base64编码)

表单:
    grant_type:refresh_token
    scope:all
    refresh_token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0ZXN0IjoidGVzdCIsInVzZXJfbmFtZSI6ImFkbWluIiwic2NvcGUiOlsiYWxsIl0sImV4cCI6MTU1MzE2MTA5NSwiYXV0aG9yaXRpZXMiOlsiUk9MRV9VU0VSIl0sImp0aSI6IjE0YmMyYjAyLTgxY2UtNDFiNC04ZTI3LTA5YWE0ZmU4ZWMwYyIsImNsaWVudF9pZCI6ImJsYWRlIn0.jTmioQDq-fSNNn7YCwl3wP0JE-etSWtzLDe545mDbP4

 

3、授权码(暂时没有弄明白)

授权码模式(authorization_code)主要针对第三方应用。

/blade-auth/oauth/token

请求头:
Authorization : Basic c3dvcmQ6c3dvcmRfc2VjcmV0 ("c3dvcmQ6c3dvcmRfc2VjcmV0"为clientId:clientSecret串转换为的base64编码,需要和blade_client表的对应字段相匹配)

表单:
grant_type:authorization_code
scope:all
code:VhYNLR
redirect_uri: http://example.com

 

4、获取到token后如何获取用户信息

(1)拼接请求头

Authorization :bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0ZXN0IjoidGVzdCIsInVzZXJfbmFtZSI6ImFkbWluIiwic2NvcGUiOlsiYWxsIl0sImV4cCI6MTU1MzE2MTA5NSwiYXV0aG9yaXRpZXMiOlsiUk9MRV9VU0VSIl0sImp0aSI6IjE0YmMyYjAyLTgxY2UtNDFiNC04ZTI3LTA5YWE0ZmU4ZWMwYyIsImNsaWVudF9pZCI6ImJsYWRlIn0.jTmioQDq-fSNNn7YCwl3wP0JE-etSWtzLDe545mDbP4

(2)调用blade-auth/oauth/user-info即可获得对应用户信息。




相关推荐

SpringBlade对SpringCloud做了封装。 SpringBlade ├── blade-auth --

一、主要特性 1、采用前后端分离的模式,前端开源两个框架Sword(基于React、Ant Design)、Saber(基于Vue、Element-UI)。 2、

/** * 统一API响应结果封装 * * @author Chill */ @Getter @Setter @ToStrin

1、建表 2、创建实体类 @Data @TableName("blade_blog") public

@RestController @RequestMapping("api") public class DemoController

1、单条数据 /** * 详情 */ @GetMapping("/detail") public R<Blog

1、需要数据隔离的业务表,新建一个字段,tenant_id。 2、实体类无需将这个字段写入,因为框架底层会自动对tenant_id进行处理。 3、在对应的applic

简介 权限模块从大的方面来说,可以分为三种大的类型:功能权限、接口权限、数据权限。 1、功能权限 也就是我们熟悉的菜单、按钮权限。可以配置各个角色能