部署态的安全控制: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