nacos
nacos copied to clipboard
nacos授权认证失败
spring-cloud-alibaba组件,当nacos启用认证且用户密码含有特殊字符时调用/nacos/v1/auth/users/login接口会报错,可能是由于特殊字符未做URLencode导致
具体哪个版本?带了什么特殊符号?
spring-cloud-alibaba:2021.x版本,密码是放到HttpRequestBody中的,不存在URLencode问题。检查下你的配置项是否配置正确吧。
可以升级下服务端和客户端版本试试。
- 依赖nacos-client 1.3.3版本会有特殊字符传参的问题,问题原因在于传入password时进行了URLencode,但是参数又是放在body,作为json传输的,导致在server端web服务器接收参数时不会进行URLdecode
- Http返回对象判断后在打印日志时调用JacksonUtils.toJson(com.alibaba.nacos.common.http.HttpRestResult)方法时会报序列化错误,导致异常日志更加模糊,当然在整个login逻辑中捕获了异常,但是使得核心异常未打印
那新版本应该已经fix了问题,可以升级一下试试。
No more response from author, I think the version has solve the problem.