背景
nacos的默认是不进行分配权限的,那么这样就带来了一个问题,如果多项目共同使用一个nacos,可以带了一个情况是开发人员误操作,把其他项目的nacos配置文件更改或者删除。那么如何解决这个问题呢?就是把nacos进行分权限。A项目的人员只能看到A项目的配置。
说明:若cacos的需要分权限。nacos的版本需要在1.2以上,在1.2以上才有了鉴权的功能,所有如果nacos的版本过低的话,鉴权是用不了的
操作
修改nacos的配置文件(单机,非docker)
找到nacos的配置文件,conf/application.properties
修改配置文件
vim application.properties
找到配置文件中的nacos.core.auth.enabled=false,按“i”进入编辑模式,把false修改为true
nacos.core.auth.enabled是设置nacos的权限,也就是把nacos的分权改为开启模式。
创建空间(若已有空间,此步骤可省略)
管理员账号操作:点击左侧的命名空间---新建命名空间
创建用户
管理员账号点击左侧的权限控制,选择用户列表,选择创建用户,此步骤是为了在登录用户账号市可以这是该用户可以访问的空间。
设置角色管理
管理员账号点击左侧的角色管理,选择绑定角色
这里设置一个角色名称,并和用户名进行绑定
以上步骤设置完成之后,退出管理员的账号,登录刚创建的nacos账号,并访问非该账号可以访问的空间,出现下图的形式,即设置完成
权限管理
管理员账号点击左侧的权限管理,添加权限。这里是为了给用户分配可以查看的命名空间
项目修改配置文件
cloud: nacos: discovery: server-addr: nacos的ip地址 namespace: 项目在nacos的命名空间 group: 项目的分组 username: nacos的账号 password: nacos的密码
修改完配置文件之后不需要重启,会立即生效