consul配置ACL

1、consul配置文件目录下新增配置文件acl.json  内容如下(实际使用时,将注释删除才可使用)

{
      "acl_datacenter": "dc1", //需要acl配置的数据中心 一般默认是dc1 除非启动时指定了 data-center配置
      "acl_master_token": "********",  //这个是随机生成的字符串,不要含有 + 号和空格 以及一些会引起base64问题的字符
      "acl_default_policy": "deny",  //默认策略所有的都禁止
      "acl_down_policy": "extend-cache"
}

2、重启consul server后发现所有服务无法连接,需要配置token

此处我们生产一个次级权限的token,用于管理各个节点

curl \
    --request PUT \
    --header "X-Consul-Token: 上面配置的master_token" \
    --data \
'{
  "Name": "Agent Token",
  "Type": "client",
  "Rules": "node \"\" { policy = \"write\" } service \"\" { policy = \"read\" }"
}' http://127.0.0.1:8500/v1/acl/create
 
#获取改请求返回的token
#服务端配置acl.json新增一个节点 "acl_agent_token": "4ac10325-551b-5465-05e0-e0a48a04971a"
#客户端配置acl.json
 
{
  "acl_agent_token": "4ac10325-551b-5465-05e0-e0a48a04971a",
  "acl_datacenter": "dc1",
  "acl_down_policy": "extend-cache"
}

重启server和client之后即可访问

3、在ui管理界面的acl里面根据权限配置 master_token 或 agent_token

4、此时bash中的consul将无法使用,需配置环境变量 export CONSUL_HTTP_TOKEN=#上面的随机字符串master_token#

注:若有service的json配置 需要加入token子节点 配置拥有manament权限的token 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值