首页 > 其他分享 >etcd开启账号认证和账号授权

etcd开启账号认证和账号授权

时间:2024-08-20 10:26:56浏览次数:6  
标签:etcd 账号 -- 192.168 认证 pem https data

当etcd同时共多个程序使用时,这时我们一般会根据业务来分为不同的账号,并授予相应的权限。这里使用集群的方式来开启账号认证。

这里举个例子,比如有2个项目使用etcd集群:

  一个是项目1,账号test1,键以/mx1/开头,角色为mx1_role。

  一个是项目2,账号test2,键以/mx2/开头,角色为mx2_role。

  现在的需求是用test1的账号只能操作/mx1/开头的键,test2的账号只能操作/mx2/开头的键。

 

操作过程:

1、使用etcdctl命令设置好root用户的账号和密码

etcdctl --endpoints=https://192.168.110.12:2379,https://192.168.110.13:2379,https://192.168.110.15:2379 \
  --cacert=/data/etcd/ssl/ca.pem \
  --cert=/data/etcd/ssl/server.pem \
  --key=/data/etcd/ssl/server-key.pem \
user add root:root

 

2、开启账号认证。

etcdctl --endpoints=https://192.168.110.12:2379,https://192.168.110.13:2379,https://192.168.110.15:2379 \
  --cacert=/data/etcd/ssl/ca.pem \
  --cert=/data/etcd/ssl/server.pem \
  --key=/data/etcd/ssl/server-key.pem \
auth enable

 

3、根据不同项目创建用户和密码设置。

etcdctl --endpoints=https://192.168.110.12:2379,https://192.168.110.13:2379,https://192.168.110.15:2379 \
  --cacert=/data/etcd/ssl/ca.pem \
  --cert=/data/etcd/ssl/server.pem \
  --key=/data/etcd/ssl/server-key.pem \
  --user=root:root \
user add test1:test1

etcdctl --endpoints=https://192.168.110.12:2379,https://192.168.110.13:2379,https://192.168.110.15:2379 \
  --cacert=/data/etcd/ssl/ca.pem \
  --cert=/data/etcd/ssl/server.pem \
  --key=/data/etcd/ssl/server-key.pem \
  --user=root:root \
user add test2:test2

 

4、创建角色

etcdctl --endpoints=https://192.168.110.12:2379,https://192.168.110.13:2379,https://192.168.110.15:2379 \
  --cacert=/data/etcd/ssl/ca.pem \
  --cert=/data/etcd/ssl/server.pem \
  --key=/data/etcd/ssl/server-key.pem \
  --user=root:root \
role add mx1_role

etcdctl --endpoints=https://192.168.110.12:2379,https://192.168.110.13:2379,https://192.168.110.15:2379 \
  --cacert=/data/etcd/ssl/ca.pem \
  --cert=/data/etcd/ssl/server.pem \
  --key=/data/etcd/ssl/server-key.pem \
  --user=root:root \
role add mx2_role

 

5、赋予角色权限

etcdctl --endpoints=https://192.168.110.12:2379,https://192.168.110.13:2379,https://192.168.110.15:2379 \
  --cacert=/data/etcd/ssl/ca.pem \
  --cert=/data/etcd/ssl/server.pem \
  --key=/data/etcd/ssl/server-key.pem \
  --user=root:root \
role grant-permission  mx1_role --prefix=true readwrite /mx1/

etcdctl --endpoints=https://192.168.110.12:2379,https://192.168.110.13:2379,https://192.168.110.15:2379 \
  --cacert=/data/etcd/ssl/ca.pem \
  --cert=/data/etcd/ssl/server.pem \
  --key=/data/etcd/ssl/server-key.pem \
  --user=root:root \
role grant-permission mx2_role --prefix=true readwrite /mx2/

 

6、授权用户

etcdctl --endpoints=https://192.168.110.12:2379,https://192.168.110.13:2379,https://192.168.110.15:2379 \
  --cacert=/data/etcd/ssl/ca.pem \
  --cert=/data/etcd/ssl/server.pem \
  --key=/data/etcd/ssl/server-key.pem \
  --user=root:root \
user grant-role test1  mx1_role

etcdctl --endpoints=https://192.168.110.12:2379,https://192.168.110.13:2379,https://192.168.110.15:2379 \
  --cacert=/data/etcd/ssl/ca.pem \
  --cert=/data/etcd/ssl/server.pem \
  --key=/data/etcd/ssl/server-key.pem \
  --user=root:root \
user grant-role test2  mx2_role

 

7、现在2个项目就可以分别使用test1和test2账户分别操作/mx1/和/mx2/的key了

etcdctl --endpoints=https://192.168.110.12:2379,https://192.168.110.13:2379,https://192.168.110.15:2379 \
  --cacert=/data/etcd/ssl/ca.pem \
  --cert=/data/etcd/ssl/server.pem \
  --key=/data/etcd/ssl/server-key.pem \
  --user=test1:test1\
put /mx1/test1 "this is test1"

etcdctl --endpoints=https://192.168.110.12:2379,https://192.168.110.13:2379,https://192.168.110.15:2379 \
  --cacert=/data/etcd/ssl/ca.pem \
  --cert=/data/etcd/ssl/server.pem \
  --key=/data/etcd/ssl/server-key.pem \
  --user=test2:test2\
put /mx2/test2 "this is test2"

 

标签:etcd,账号,--,192.168,认证,pem,https,data
From: https://www.cnblogs.com/NanZhiHan/p/18367798

相关文章

  • TCPIP路由技术第一卷第八章OSPF 第六部分-2认证和LSA过滤
    ospf认证明文认证:链路,区域,虚链路密文认证(md5):链路,区域,虚链路ospf链路明文认证step1:在接口下设置认证密钥r1(config-if)#ipospfauthentication-keyccnpr2(config-if)#ipospfauthentication-keyccnpstep2:在接口下开启明文认证r1(config-if)#ipospfauthenti......
  • 华为账号“一键登录”能力让美团用户尽享安全便捷的登录体验
    背景随着全场景智能生态的日益完善,用户面临着众多应用与服务的登录需求,而繁琐的注册登录流程通常是用户转化的隐形障碍,用户可能因为步骤繁琐、记忆密码困难而中途放弃,导致应用错失潜在用户。其次,高门槛的登录方式增加了存量用户流失的风险,用户可能因为登录不便而减少应用使用频......
  • C++批量核验身份证真伪、实名认证接口、身份证识别
    实名认证接口是指一个系统或程序,它能够接收用户的个人信息(如姓名、身份证号码等),并与官方记录进行匹配以验证这些信息的真实性。这种接口可以集成到各种应用程序和服务中,以增强安全性并遵守相关法律法规的要求。批量核验身份证真伪以及进行实名认证是许多在线服务平台为了......
  • 手提式婴儿摇篮美国站CPC认证要求以及16 CFR Part 1225,ASTM F2050测试办理
    手提式婴儿摇篮上架亚马逊美国站CPC认证要求以及16CFRPart1225,ASTMF2050测试办理手提式婴儿摇篮美国亚马逊CPC认证要求以及16CFRPart1225,ASTMF2050什么是手提式婴儿摇篮?手提式婴儿摇篮是一种独立的、刚性或半刚性的产品,旨在承载乘员,其躯干完全由产品支撑,以方便护理......
  • 通过python脚本查询自己阿里云账号里的某个域名的A记录解析情况,以及测拨,用于排查未使
    安装sdkpipinstallaliyun-python-sdk-alidns代码全文importjsonimportrequestsfromaliyunsdkcore.clientimportAcsClientfromaliyunsdkalidns.request.v20150109importDescribeDomainRecordsRequest#替换为你的阿里云AccessKeyID和AccessKeySecret......
  • OpenID Connect(OIDC)认证--keycloak与springboot项目的整合
    OpenIDConnect认证–keycloak与springboot项目的整合文章目录OpenIDConnect认证--keycloak与springboot项目的整合前言什么是Keycloak?项目配置1.创建SpringBoot项目2.设置Keycloak服务器3.在Keycloak中创建Realm和Client4.配置SpringB......
  • Docker的Etcd项目
    etcd是CoreOS团队发起的一个管理配置信息和服务发现(servicediscovery)的项目,在这一章里面,我们将介绍该项目的目标,安装和使用,以及实现的技术。Docker的etcd简介什么是etcdetcd是CoreOS团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-......
  • 3.ACS5.2最基本认证
    第一步acs5.2最基本认证实验拓扑sw3550:vlan2nametestintran    f0/1,f0/2,f0/15,f0/48swmoaccswacvlan2r1:intf0/1ipadd202.100.1.1255.255.255.0noshr2:ipadd202.100.1.2255.255.255.0noshsw3550:intvlan2ipadd202.100.1.......
  • 身份实名认证-身份证实名认证-身份证实名-实名认证-身份证二要素-身份证实名认证-身份
    身份证实名,即身份证实名认证,是指通过验证个人身份证信息的真实性来确认网络用户的真实身份。这一流程在我国许多网络服务中都是基本要求,如开设银行账户、注册社交媒体账号、网络购物等。以下是关于身份证实名认证的详细解析:一、身份证实名认证的必要性确认用户身份:确保网络服......
  • 身份证信息认证服务—— Identity IdCard OCR API
    IdentityIdCardOCRAPI对接说明本文将介绍一种通过输入身份证图片或姓名和身份证号码,来校验姓名和身份证号的真实性和一致性。本接口用于校验姓名和身份证号的真实性和一致性,您可以通过输入姓名和身份证号或传入身份证人像面照片提供所需验证信息。我们的上游是接入了......