一、该问题的重现步骤是什么?
1. 现在新加了一张客户表,该怎么改才能实现用这张表的信息完成登录操作?
2.
3.
二、你期待的结果是什么?实际看到的又是什么?
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
四、请提供详细的错误堆栈信息,这很重要。
五、若有更多详细信息,请在下面提供。
大概有个了解之后,来修改这个类:https://center.javablade.com/blade/BladeX/src/branch/master/blade-auth/src/main/java/org/springblade/auth/service/BladeUserDetailService.java
根据不同的请求头来判断具体用户信息走哪个表。这样就可以做不同表的登录逻辑了,最终只需要构建好对应的Oauth2User的类返回便可。
现在已经能返回token了,但是使用返回的token去调用其他接口还是会401,这是哪里还需要调整吗?
额外增加一个固定请求头Blade-Requested-With
固定值为BladeHttpRequest
还有一个限制是如果roleid、deptid、postid等字段没有的话,在严格模式下,访问会被直接拒绝。
如果你的场景是不会有这些字段,需要把严格模式关掉.
#blade配置 blade: #安全框架配置 secure: #严格模式 #缺失令牌字段则取消授权 strict-token: false
这个有的
感谢,关掉严格模式后可以访问了
关掉严格模式的话,有一个风险,就是注册用户也会返回token,如果没有严格模式,这个token是可以直接调用接口的。如果没有接口权限或者数据权限,就会有风险。这个你需要额外操作一下。
或者还是开启严格模式,你这边新定义的返回token把postid、deptid、roleid给填充上,没有值也给他一个默认的比如0。
好的,我调整一下
扫一扫访问 Blade技术社区 移动端