k8s 安全原理

部署态的安全控制:api

1.认证 authentication安全

x509 ,sa,username/password网络

 x509 启动参数:--client-ca-file=ca.crt  (指定根证书)spa

service account  启动参数:--service-account-key-file=key.pem (用以生成token),由controller建立,pod用sa中的token 访问apirest

认证方式有多种,一种经过便可,输出userinfo;而后基于userinfo 进行鉴权对象

 

2.鉴权 authorizationtoken

RBAC ,ABAC, Nodeip

rbac: role,rolebinding (做用于namespace);clusterRole,clusterRoleBinding部署

 

3.Admission(PodSecurityPolicy)openshift

admin 用户建立podsercurityPolicy,决定能建立什么样的pod;容许挂载什么volume 

;容许使用什么网络(例如直接使用主机网络hostnetwork)

 它是一个k8s对象;貌似相似于openshift中的SCC的对象,restricted,privileged

 

 

4.Pod SecurityContext

pod .yaml 文件中的对象

有容器级别 与pod 级别;在容器级别有系统调用权限设置例如时钟设置等

属性:privileged;runAsUser;fsGroup 等

 

 

运行态的安全控制

5.Network policy

k8s 的一种对象; 用于集群项目间的访问控制,ip 白名单什么的

Ingress :入口请求控制

Egress :出口请求控制

 

 

安全持久化保存键值etcd

相关文章
相关标签/搜索