zoukankan      html  css  js  c++  java
  • etcd 开启auth认证

    一、概述

    1、etcd的v2和v3的认证有些不同,需要分别设置
    2、Etcd通过用户(user)-角色(role)-权限的方式来控制访问,用户关联角色,角色拥有权限,从而用户也就拥有了相应的权限
    3、Etcd开启Basic Auth之后,默认会启用两个角色root和guest,root角色拥有所有权限,guest拥有只读权限,这两个角色都不要删除

    二、授权

    v2:
    1、添加root,创建root后,root默认有root最高权限
    etcdctl --endpoints=http://127.0.0.1:2379 user add root

    2、开启认证
    etcdctl --endpoints=http://127.0.0.1:2379 auth enable

    3、添加一个读写账号和一个只读账号
    etcdctl --endpoints=http://127.0.0.1:2379 --username root:123456 user add reado
    etcdctl --endpoints=http://127.0.0.1:2379 --username root:123456 user add readw

    4、添加只读角色和读写角色
    etcdctl --endpoints=http://127.0.0.1:2379 --username root:123456 role add readConf
    etcdctl --endpoints=http://127.0.0.1:2379 --username root:123456 role add rootConf

    5、为角色授权
    etcdctl --endpoints=http://127.0.0.1:2379 --username root:123456 grant --read --path /* readConf
    etcdctl --endpoints=http://127.0.0.1:2379 --username root:123456 grant --readwrite --path /* rootConf

    6、为用户分配角色
    etcdctl --endpoints=http://127.0.0.1:2379 --username root:123456 user grant --roles readConf reado
    etcdctl --endpoints=http://127.0.0.1:2379 --username root:123456 user grant --roles rootConf readw

    7、常用命令
    1)关闭auth
    etcdctl --endpoints=http://127.0.0.1:2379 --username root:123456 auth disable

    2)删除用户
    etcdctl --endpoints=http://127.0.0.1:2379 --username root:123456 user remove reado

    3)用户撤销角色
    etcdctl --endpoints=http://127.0.0.1:2379 --username root:123456 user revoke --roles readConf reado

    4)修改用户密码
    etcdctl --endpoints=http://127.0.0.1:2379 --username root:123456 user passwd reado


    v3:
    1、添加root,创建root后,root默认有root最高权限
    etcdctl --endpoints=http://127.0.0.1:2379 user add root

    2、创建普通用户
    etcdctl --endpoints=http://127.0.0.1:2379 --user=root:123456 user add putong

    3、添加角色
    etcdctl --endpoints=http://127.0.0.1:2379 --user=root:123456 role add normal

    4、角色授权
    etcdctl --endpoints=http://127.0.0.1:2379 --user=root:123456 role grant-permission --prefix=true normal readwrite /path_name

    5、用户绑定角色
    etcdctl --endpoints=http://127.0.0.1:2379 --user=root:123456 user grant-role putong normal

  • 相关阅读:
    Linux下#!/usr/bin/env bash和#!/usr/bin/bash、#!/bin/bash的比较
    重要:1. hive查询时,先看表格元数据是怎样分区的,然后在where里写分区条件,否则会查询出错;2. 在Where条件中使用变量时,Hive查询会非常慢
    001机器人姿态RPY及移动路径方式
    linux 查看并对外开放端口(防火墙拦截处理)
    协程,twisted
    flask源码走读
    python 协程与go协程的区别
    Python 自带 RPC Demo
    这样逼格满满的弹出框消息提示你不心动吗?
    JS获取本周、本季度、本月、上月的开始日期、结束日期
  • 原文地址:https://www.cnblogs.com/cuishuai/p/12024841.html
Copyright © 2011-2022 走看看