• k8s--基础--23.7--认证-授权-准入控制--限制用户操作k8s资源的权限


    k8s–基础–23.7–认证-授权-准入控制–限制用户操作k8s资源的权限


    1、生成一个证书

    1.1、生成一个私钥

    cd /etc/kubernetes/pki/
    (umask 077; openssl genrsa -out lucky.key 2048) 
    
    
    • 1
    • 2
    • 3

    1.2、生成一个证书请求

    openssl req -new -key lucky.key -out lucky.csr -subj "/CN=lucky"
    
    
    • 1
    • 2

    1.3、生成一个证书

    openssl x509 -req -in lucky.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out lucky.crt -days 3650
    
    
    • 1
    • 2

    在这里插入图片描述

    2、在kubeconfig下新增加一个lucky这个用户

    2.1、把lucky这个用户添加到kubernetes集群中,可以用来认证apiserver的连接

    kubectl config set-credentials lucky --client-certificate=./lucky.crt --client-key=./lucky.key --embed-certs=true
    
    
    • 1
    • 2

    2.2、在kubeconfig下新增加一个lucky这个账号

    kubectl config set-context lucky@kubernetes --cluster=kubernetes --user=lucky
    
    
    • 1
    • 2

    2.3、切换账号到lucky,默认没有任何权限

    # 切换账号到lucky,默认没有任何权限
    kubectl config use-context lucky@kubernetes
    
    # 切换账号到 集群用户,有任何权限(因为后面操作需要这个用户权限)
    kubectl config use-context kubernetes-admin@kubernetes 
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    3、把 lucky用户 通过rolebinding绑定到clusterrole上,授予权限,权限只是在lucky这个名称空间有效

    3.1、把lucky这个用户通过rolebinding绑定到clusterrole上

    kubectl create rolebinding lucky -n lucky --clusterrole=cluster-admin --user=lucky
    
    
    • 1
    • 2

    3.2、切换到lucky这个用户

    kubectl config use-context lucky@kubernetes
    
    
    • 1
    • 2

    3.3、测试是否有权限

    # 有权限操作这个名称空间
    kubectl get pods -n lucky
    
    # 没有权限操作其他名称空间
    kubectl get pods
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    4、添加一个lucky的普通用户

    # 添加用户
    useradd lucky
    
    # 拷贝kube的权限
    cp -ar /root/.kube/ /home/lucky/
    
    # 修改用户和用户组
    chown -R lucky.lucky /home/lucky/
    
    # 切换用户
    su - lucky
    
    # 查看pods资源
    kubectl get pods -n lucky
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    在这里插入图片描述

  • 相关阅读:
    2023年中国反射膜产量及市场规模分析:随着太阳能产业快速发展,规模持续扩大[图]
    4、MFC:菜单栏、工具栏与状态栏
    前端系列-1 HTML+JS+CSS基础
    Elasticsearch集群连载-es集群安装
    【超硬核】-1万字详尽大厂团队SQL开发规范,Review没人能笑着出来
    k8s——知识点回顾(1)
    C++类型转换运算符的重载,自增自减运算符的重载
    数学基础(六)估计、偏差、方差
    城市消费券,拒绝恶意爬取
    JVM 内存调优总结贴
  • 原文地址:https://blog.csdn.net/zhou920786312/article/details/126242671