在Nacos 2.2.2以后的版本中,如果启用了鉴权功能,需要在服务端和客户端进行相应的配置。如果没有正确配置,可能会导致服务注册和发现的异常。
1.首先在服务端的conf目录下的配置文件 application.properties 中,开启鉴权相关的配置项,包括:
nacos.core.auth.enabled=true
其中,nacos.core.auth.enabled 表示开启鉴权功能。
开启鉴权后运行startup.cmd -m standalone可能报错,需在配置文件中设置nacos.core.auth.server.identity.key,由于nacos.core.auth.server.identity.key是一个自定义的值,你可以选择任何你觉得合适且安全的字符串作为这个键。重要的是,这个键和对应的值需要在Nacos服务器和客户端之间保持一致,以便正确地进行身份验证。
举个例子,你可以在Nacos的配置文件中这样设置:
nacos.core.auth.server.identity.key=myCustomAuthKey
nacos.core.auth.server.identity.value=myCustomAuthValue
2.在客户端的配置文件中,需要配置访问服务端的账户和密码信息。比如,在 spring cloud 应用中,在 application.yml 中添加以下配置:
spring.cloud.nacos.username=nacos
spring.cloud.nacos.password=nacos
如果没有配置账户信息,客户端将无法正常注册到Nacos服务器并发现其他服务,以上用户名和密码使用的是默认的nacos,如有更改按实际。