Etcd安全配置之Basic Auth认证

认证说明

  1. Etcd v2以上的版本才支持权限认证,且仅支持Basic Authnginx

  2. Etcd经过用户(user)-角色(role)-权限的方式来控制访问,用户关联角色,角色拥有权限,从而用户也就拥有了相应的权限安全

  3. Etcd默认没有启用认证机制,只要能链接etcd服务就拥有全部的权限,仍是很是危险的,另外一种安全的访问方式是开启ssl,只有使用受信任的证书才能访问数据spa

  4. Etcd开启Basic Auth以后,默认会启用两个角色root和guest,root角色拥有全部权限,guest拥有只读权限,这两个角色都不要删除,不然你可能会遇到意想不到的Bug设计

  5. Etcd的权限分为只读、只写、可读写,能够对etcd的详细key进行受权,例如:/conf/project/dev/nginx.conf,也能够受权key前缀(目录),例如:/conf/project/,受权规则应以最小知足需求为准则ssl

权限设计

权限设计应先考虑咱们对权限的需求,从需求出发设计权限配置

  • 需求权限

  1. 为了方便后续管理,规定配置中心全部key都应已/conf/开头数据

  2. 须要两个帐号,一个帐号用在Kerrigan(WebUI)拥有读取、写入、修改、删除key的权限,一个帐号用在confd,只有只读的权限,可以读取配置就能够了证书

 

  • 设计auth

  1. 需求很简单,咱们须要创建两个帐号,分别对应两个角色,两个角色都是对/conf/开头的Key进行控制,一个读写权限,一个只读权限

  2. 定义只读帐号名为readx,只读角色名为readConf,定义读写权限帐号名为authz,读写权限为rootConf,可操做的key都为/conf/开头

相关文章
相关标签/搜索