关于Nacos1.3.2版本权限控制问题
Nacos1.3.2已经完美的解决了权限问题,通过添加username和password来处理登录用户名和密码,但是存在一个问题,那就是用户名和密码存在特殊字符的时候会出现403,unknown user 问题
username: nacos password: nacos
NacosAuthManager.java具体代码位置如下:
private String resolveToken(HttpServletRequest request) throws AccessException { String bearerToken = request.getHeader(NacosAuthConfig.AUTHORIZATION_HEADER); if (StringUtils.isNotBlank(bearerToken) && bearerToken.startsWith(TOKEN_PREFIX)) { return bearerToken.substring(7); } bearerToken = request.getParameter(Constants.ACCESS_TOKEN); if (StringUtils.isBlank(bearerToken)) { String userName = request.getParameter("username"); String password = request.getParameter("password"); bearerToken = resolveTokenFromUser(userName, password); } return bearerToken; }
当出现特殊字符的时候,request.getParameter存在转义问题,所以大家注意即可