一、该问题的重现步骤是什么?
1. cloud版本,本地idea运行后端微服务
2. 启动saber3前端
3. 登录:http://localhost:2888/login
二、你期待的结果是什么?实际看到的又是什么?
期待的结果:登录成功进入系统。
实际看到:登录失败,提示:用户租户未授权
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
BladeXAvue联合版
前端使用:saber3
后端版本:4.0.0
四、请提供详细的错误堆栈信息,这很重要。
AuthApplication微服务返回
2025-04-16 10:46:17.753 ERROR 25072 --- [ XNIO-1 task-3] o.s.core.tool.jackson.JsonUtil : argument "content" is null
java.lang.IllegalArgumentException: argument "content" is null
at com.fasterxml.jackson.databind.ObjectMapper._assertNotNull(ObjectMapper.java:5072) ~[jackson-databind-2.18.0.jar:2.18.0]
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3827) ~[jackson-databind-2.18.0.jar:2.18.0]
at org.springblade.core.tool.jackson.JsonUtil.parse(JsonUtil.java:95) ~[classes/:na]
at org.springblade.auth.handler.BladeAuthorizationHandler.validateTenant(BladeAuthorizationHandler.java:191) ~[classes/:na]
at org.springblade.auth.handler.BladeAuthorizationHandler.authValidation(BladeAuthorizationHandler.java:120) ~[classes/:na]
at org.springblade.core.oauth2.endpoint.OAuth2TokenEndPoint.token(OAuth2TokenEndPoint.java:128) ~[classes/:na]
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[na:na]
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:255) ~[spring-web-6.1.15.jar:6.1.15]
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:188) ~[spring-web-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:926) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:831) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) ~[spring-webmvc-6.1.15.jar:6.1.15]
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:547) ~[jakarta.servlet-api-6.0.0.jar:6.0.0]
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) ~[spring-webmvc-6.1.15.jar:6.1.15]
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614) ~[jakarta.servlet-api-6.0.0.jar:6.0.0]
org.springblade.core.oauth2.exception.UserUnauthorizedException: 用户租户未授权
Caused by: java.lang.Throwable: null
at org.springblade.core.oauth2.utils.OAuth2ExceptionUtil.lambda$static$6(OAuth2ExceptionUtil.java:63) ~[classes/:na]
at org.springblade.core.oauth2.utils.OAuth2ExceptionUtil.throwFromCode(OAuth2ExceptionUtil.java:108) ~[classes/:na]
at org.springblade.core.oauth2.endpoint.OAuth2TokenEndPoint.token(OAuth2TokenEndPoint.java:136) ~[classes/:na]
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[na:na]
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:255) ~[spring-web-6.1.15.jar:6.1.15]
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:188) ~[spring-web-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:926) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:831) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) ~[spring-webmvc-6.1.15.jar:6.1.15]
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) ~[spring-webmvc-6.1.15.jar:6.1.15]
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:547) ~[jakarta.servlet-api-6.0.0.jar:6.0.0]
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) ~[spring-webmvc-6.1.15.jar:6.1.15]
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614) ~[jakarta.servlet-api-6.0.0.jar:6.0.0]
五、若有更多详细信息,请在下面提供。
这里打断点看下具体情况,看看是不是租户开启了授权功能,被认证失败了
调试发现是因为licenseKey这个字段为空引起的,要如何处理?
yml配置里给tenant的license配置关掉
目前”多租户授权保护“还不能使用是吗?我在blade_tenant表的license_key字段补充值也不行。
不是不能用,而是你开了之后没有配置,自然用不了。如果你手动改数据库就能用那不就成摆设了。
谢谢,以前没使用到这个功能,这次系统升级才了解到。
扫一扫访问 Blade技术社区 移动端