如何修改Nacos登录密码和登录名称
一般安装nacos后登录密码默认都是nacos/nacos,但是在正式的生成环境这样肯定是不安全的。
查看nacos源码加密方式
nacos底层源码是BCryptPasswordEncoder加密器加密,我们这里使用该加密器就可以
package com.alibaba.nacos.console.utils;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
/**
* Password encoder tool
*
* @author nacos
*/
public class PasswordEncoderUtil {
public static void main(String[] args) {
System.out.println(new BCryptPasswordEncoder().encode("nacos"));
}
public static Boolean matches(String raw, String encoded) {
return new BCryptPasswordEncoder().matches(raw, encoded);
}
public static String encode(String raw) {
return new BCryptPasswordEncoder().encode(raw);
}
}
使用 BCryptPasswordEncoder加密器加密
导入Security的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
加密得到密文
public class UserServerApplication {
public static void main(String[] args) {
System.out.println(new BCryptPasswordEncoder().encode("nacosDev"));
}
}
构造用户,修改密码
复制到nacos的user表中password字段中
我这里构造了用户名:nacosDev,密码也是使用的nacosDev加密的密文
查看nacos源码加密方式
nacos底层源码是BCryptPasswordEncoder加密器加密,我们这里使用该加密器就可以
package com.alibaba.nacos.console.utils;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
/**
* Password encoder tool
*
* @author nacos
*/
public class PasswordEncoderUtil {
public static void main(String[] args) {
System.out.println(new BCryptPasswordEncoder().encode("nacos"));
}
public static Boolean matches(String raw, String encoded) {
return new BCryptPasswordEncoder().matches(raw, encoded);
}
public static String encode(String raw) {
return new BCryptPasswordEncoder().encode(raw);
}
}
使用 BCryptPasswordEncoder加密器加密
导入Security的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
加密得到密文
public class UserServerApplication {
public static void main(String[] args) {
System.out.println(new BCryptPasswordEncoder().encode("nacosDev"));
}
}
构造用户,修改密码
复制到nacos的user表中password字段中
我这里构造了用户名:nacosDev,密码也是使用的nacosDev加密的密文