Nacos开启权限认证

绿盟漏扫扫出了CVE-2021-29441这个漏洞,官网已经在1.4.1版本修复了这个漏洞,但是测试发现还是出现访问接口可以添加任意用户的问题:

http://ip:8848/nacos/v1/auth/users?username=test1&password=test1

返回结果200;

查询资料后发现,nacos需要配置开启权限认证:
打开config下的application.properties配置:

nacos.core.auth.caching.enabled=true

并在项目中配置username及password,如果使用的nacos是1.2.x版本的还需要配置context-path,我的配置如下:

  spring:
	  cloud:
	    nacos:
	      config:
	        username: nacos
	        password: nacos
	        context-path: /nacos
	        server-addr: 127.0.0.1:8848
	      discovery:
        username: nacos
        password: nacos
        context-path: /nacos
        server-addr: 127.0.0.1:8848

pom文件如下:

<!--服务注册发现-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            <version>2.1.2.RELEASE</version>
            <exclusions>
                <exclusion>
                    <groupId>com.alibaba.nacos</groupId>
                    <artifactId>nacos-client</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <!--配置中心-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            <version>2.1.2.RELEASE</version>
            <exclusions>
                <exclusion>
                    <groupId>com.alibaba.nacos</groupId>
                    <artifactId>nacos-client</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.alibaba.nacos</groupId>
            <artifactId>nacos-client</artifactId>
            <version>1.4.1</version>
        </dependency>

原配置部分无法读取,经尝试后,将.properties格式换成.yaml后读取成功。

docker环境下

//拉取最新nacos镜像
docker pull nacos/nacos-server:latest
//创建容器
docker run --env PREFER_HOST_MODE=hostname --env MODE=standalone --env NACOS_AUTH_ENABLE=true -p 8848:8848 --name nacos nacos/nacos-server

版权声明:本文为qq_40708228原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。