【kubernetes笔记】k8s_集群安全机制(9)

Page content

这一篇整理了集群安全机制相关的内容。

1.概述

访问集群时,需要经过三个步骤。

  1. 认证
  2. 授权
  3. 准入控制

访问时都需要经过apiserver做统一协调

1.1 第一步:认证

传输安全:对外不暴露8080端口,只能内部访问,对完使用6443

客户端身份认证的常用方式

  • https 证书认证(ca)
  • http token认证
  • http 基本认证:用户名 + 密码

1.2 第二步:授权

  • 基于RBAC授权操作
  • 基于角色访问控制

1.3 第三步:准入控制

如果准入控制的列表有请求内容就通过,没有则拒绝。

2.RBAC 基于角色的访问控制

角色

  • role: 特定命名空间访问权限
  • ClusterRole: 所有命名空间访问权限

角色绑定

  • roleBinding: 角色绑定到主体
  • ClusterRoleBinding: 集群角色绑定到主体

主体

  • user: 用户
  • group: 用户组
  • serviceAccount: 服务账号

3.RBAC 实践授权

3.1 创建命名空间

$kubectl create ns roledemo

3.2 在新创建的命名空间创建Pod

$kubectl run nginx --image=nginx -n roledemo

3.3 创建角色

$kubectl get role -b roledemo

3.4 创建角色绑定

$kubectl get role.rolebinding -n roledemo

3.5 使用证书识别身份


欢迎大家的意见和交流

email: li_mingxie@163.com