nacos2.4.1 怎么配置开始账号密码登录 | Nacos 官网
云栖回顾 | 2024 云栖大会微服务和网关相关演讲材料点此了解

nacos2.4.1 怎么配置开始账号密码登录


用户问题 :

nacos2.4.1 怎么配置开始账号密码登录


专家官方解答 :

为了在Nacos 2.4.1中配置并启用账号密码登录,您可以按照以下步骤操作,这些步骤基于提供的知识内容:

分析问题原因

在Nacos 2.4.1中,未启用鉴权时,默认允许无凭据访问,这可能导致安全风险。启用账号密码登录主要是为了实施鉴权机制,确保只有经过验证的用户才能访问Nacos控制台和API。

配置步骤

1. 修改配置文件

对于非Docker部署:

  1. 配置JWT密钥:在application.properties中设置token.secret.key,使用Base64编码的字符串作为密钥,确保其长度至少为32字符。

    nacos.core.auth.default.token.secret.key=$custom_base64_token_secret_key
  2. 配置服务端身份识别信息:设置server.identity.keyserver.identity.value,以确保集群间通信安全。

    nacos.core.auth.server.identity.key=$custom_server_identity_key
    nacos.core.auth.server.identity.value=$custom_server_identity_value
  3. 开启鉴权系统:修改配置以启用Nacos内置的鉴权系统。

    nacos.core.auth.system.type=nacos
    nacos.core.auth.enabled=true

对于Docker镜像部署:

在启动Docker容器时,通过环境变量指定相应的鉴权配置:

docker run ... \
-e NACOS_AUTH_ENABLE=true \
-e NACOS_AUTH_TOKEN=$custom_base64_token_secret_key \
-e NACOS_AUTH_IDENTITY_KEY=$custom_server_identity_key \
-e NACOS_AUTH_IDENTITY_VALUE=$custom_server_identity_value \
...

2. 初始化管理员账户密码

  • API方式:使用Admin API设置管理员(默认用户名为nacos)的密码。

    Terminal window
    curl -X POST 'http://$nacos_server_host:$nacos_server_port/nacos/v1/auth/users/admin' -d 'password=$your_password'

    如果不提供密码或提供空字符串,系统会自动生成一个随机密码。

  • 控制台方式:访问Nacos控制台时,如果没有预设管理员密码,系统会引导至初始化密码页面。在此页面上设置密码后,系统会确认密码设置成功。

解释

以上步骤确保了Nacos服务的安全性,通过配置JWT密钥和身份识别信息,以及开启鉴权功能,强制所有客户端和管理界面访问均需通过认证。初始化管理员账户密码是至关重要的一步,它保证了只有授权用户能够进行管理操作,从而提升了系统的安全性。

请注意,完成这些配置后,所有未携带有效凭证的访问都将被拒绝,包括OpenAPI的调用,因此,确保客户端和服务也根据新的鉴权要求进行相应调整。

由于问题直接关联到了配置鉴权的过程,这里无需额外提问前置问题。以上步骤已直接针对如何在Nacos 2.4.1中配置并启用账号密码登录进行了详细解答。

---------------

参考链接 :

  • 专家经验:Nacos鉴权相关建议

---------------

答疑服务说明:

本内容经由技术专家审阅的用户问答的镜像生成,我们提供了专家智能答疑服务,使用方法: 用法1: 在页面的右下的浮窗”专家答疑“。 用法2: 点击专家答疑页(针对部分网站不支持插件嵌入的情况)

另:

有其他开源产品的使用问题?点击访问阿里AI专家答疑服务

反馈

如问答有错漏,欢迎点:差评给我们反馈。