k8s安全,认证,鉴权.准入控制

机制说明

在这里插入图片描述

认证

在这里插入图片描述

HTTPS认证

在这里插入图片描述

需要认证的节点

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
查看pod中serviceAccount demo
在这里插入图片描述

总结

pod使用Service Account 调用API Server
k8s组件 使用证书 调用API Server
在这里插入图片描述

鉴权

在这里插入图片描述

常用的RBAC角色访问控制

在这里插入图片描述

RBAC API资源对象说明

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

ROLE和ClusterRole

Role

在这里插入图片描述

ClusterRole

在这里插入图片描述

RoleBinding和ClusterRoleBinding

RoleBinding

在这里插入图片描述
在这里插入图片描述

ClusterRoleBinding

在这里插入图片描述

Resource

在这里插入图片描述

Subject

在这里插入图片描述

Demo演示

  1. 在宿主机上面创建devuser用户
    在这里插入图片描述
  2. 在/usr/local/install-k8s 目录下面创建/cert/devusr/devuser-csr.json文件
    在这里插入图片描述
  3. 将json内容复制到新增json文件中
    在这里插入图片描述
  4. 下载证书生成工具
    在这里插入图片描述
  5. 将工具放入/usr/local/bin目录下并且可执行
    在这里插入图片描述
  6. 使用cfssl生成证书
    在这里插入图片描述
  7. 查看到证书生成成功
    在这里插入图片描述
  8. 设置KUBE_APISERVER变量
    在这里插入图片描述
  9. 使用kubectl config 指定集群ca证书以及api server生成devuser.kubeconfig文件,设置集群参数
    在这里插入图片描述
  10. 设置客户端认证参数
    在这里插入图片描述
  11. 再次查看devuser.kubeconfig文件,查看到多了客户端证书和私钥信息
  12. 创建dev名称空间
    在这里插入图片描述
  13. 设置上下文
    在这里插入图片描述
  14. 再次查看devuser.kubeconfig文件,查看到绑定了如下信息13
    在这里插入图片描述
  15. 创建rolebinding
    在这里插入图片描述
  16. 将devuser.kubeconfig 文件copy到devuser用户下的.kube目录下并且赋予用户和用户组
    在这里插入图片描述
  17. 使用devuser登录查看pod默认就是namespace为dev下的pod,default namespace下的pod没有权限查看
    在这里插入图片描述

准入控制

在这里插入图片描述

おすすめ

転載: blog.csdn.net/Persistence___/article/details/119429647