Nacos 1.2.0 权限控制使用

Nacos 1.2.0 权限控制介绍和使用:https://nacos.io/en-us/blog/nacos%201.2.0%20guide.html

Server端配置

Server端打开权限控制开关。修改con/application.properties内容:

nacos.core.auth.enabled=true

这个开关采用了热加载模式,无需重启Server即可生效。因此当权限控制功能使用有异常时,可以直接回滚到不鉴权的模式。

注意:Nacos 1.2.0里登录和鉴权是绑定关系,而由于这个开关的默认值为false,因此默认启动时,是没有登录界面的。

使用权限控制

设置顺序:

  • 命名空间 -> 新建命名空间
  • 权限控制 -> 用户列表 -> 创建用户
  • 权限控制 -> 角色管理 -> 绑定角色
  • 权限控制 -> 权限管理 -> 添加权限

Client端配置

bootstap.yml配置文件

spring:
  application:
    name: union-pay-gateway
  profiles: prod
  cloud:
    nacos:
      #discovery:
        #username: xxx
        #password: xxx
        #server-addr: https://nacos.yezhou.me
      config:
        server-addr: https://nacos.yezhou.me
        context-path: /nacos
        file-extension: yaml
        group: TAOZIPAY
        namespace: production
        timeout: 6000
        username: xxx
        password: xxx
        extension-configs:
          - data-id: common.yaml
            group: DEFAULT_GROUP
            refresh: true

server:
  port: 8805

其中context-path必须改成 /nacos,通过源码追踪可以发现,如果不改,连接的时候会登陆不上,报错403。

加入两个新的依赖

这两个依赖在最新的Alibaba Cloud中没有,需要手动加入,才能使用权限功能

<!-- https://mvnrepository.com/artifact/com.alibaba.nacos/nacos-api -->
<dependency>
    <groupId>com.alibaba.nacos</groupId>
    <artifactId>nacos-api</artifactId>
    <version>1.2.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.alibaba.nacos/nacos-client -->
<dependency>
    <groupId>com.alibaba.nacos</groupId>
    <artifactId>nacos-client</artifactId>
    <version>1.2.1</version>
</dependency>

在访问nacos前加入一层nginx

location /nacos/ {
  proxy_pass http://nacosserver/nacos/;
  rewrite (.*)//(.*) $1$2 permanent;
}
location /n/ {
  proxy_pass http://nacosserver/;
  rewrite (.*)//(.*) $1$2 permanent;
}

这样做的目的是为了重写///,保证security的url校验能够成功
其中 nacosserver是nacos的访问url,这里配置了两个,第一个是访问nacos的管理界面,第二个是client注册nacos的url

版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/03/24/nacos-1-2-0-permission-control-usage/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
打赏
海报
Nacos 1.2.0 权限控制使用
Nacos 1.2.0 权限控制介绍和使用:https://nacos.io/en-us/blog/nacos%201.2.0%20guide.html Server端配置 Server端打开权限控制开关。修改con/application.pr……
<<上一篇
下一篇>>
文章目录
关闭
目 录