nacos 版本:2.3.2
2.2.2版本之前的Nacos默认控制台,无论服务端是否开启鉴权,都会存在一个登录页;在之后的版本关闭了默认登录页面,无需登录直接进入控制台操作。在这里我们可以在官网可以看到相关介绍
而我现在所用的版本是2.3.2,现在需求需要开启nacos登录访问页面
所以在改nacos配置文件的时候只改了以下配置信息:
# 配置数据库连接信息
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=Asia/Shanghai
db.user.0=root
db.password.0=123456
# 开启登录页面
nacos.core.auth.enabled=true
单机模式启动:startup.cmd -m standalone
提示报错“Unable to start embedded Tomcat”
查阅了以下资料,发现是需要配置密钥信息,下面是官网介绍
而这次报错原因就是下载的nacos server配置默认是空的所以需要我们自定义配置上
所以加上下面的配置信息后启动成功,登录认证页面开启
nacos.core.auth.server.identity.key=mykey
nacos.core.auth.server.identity.value=myvalue
nacos.core.auth.plugin.nacos.token.secret.key=VGhpc0lzTXlDdXN0b21TZWNyZXRLZXkwMTIzNDU2Nzg=
PS:如果需要修改nacos账号密码,暂时只知道有两种方式,一是在登录后修改;二是通过代码的方式对新密码进行编码后复制到nacos的数据库修改,也可以通过这种方式添加新账号
下面是第二种方法代码:
引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
代码:
BCryptPasswordEncoder encoder = new BCryptPasswordEncoder();
String pw = encoder.encode("aa@#123456");
System.out.println(pw);