- 用户可以访问哪些资源,查看用户的身份有没有对应动作的权限
* 可以看到这里的授权方式有两种一种是基于Node 一种是RBAC
- 如果在创建pod的时候没有指定limit 如果在命名空间里边加了这个资源 limitrange,就会自动添加一个资源限制,也是在准入控制层完成了,首先需要拦截住请求,是一个安全控制相关的层,如果自己开发一个控制器可以使用准入控制层。
- 在使用kubectl get pod等命令的时候没有明确的认证授权过程,使用-v=7可以产看中间过程。
- 可以看到在第一行有完成加载认证文件的过程,如果不进行校验直接访问,会报不允许匿名用户访问这个api
- 查看用户(有效期一年,k8s不希望一年了还在用旧版本,在使用kubeadm升级的时候会替换证书)
- kubelet作用 健康检查 管理pod 汇报状态(写etcd 需要鉴权 认证)
- 可以看到是使用了证书进行鉴权
- 查看文件,和刚才的conf文件实际上是一个类型的
- 前面所提到的认证都是通过证书来完成的,当然也可以通过使用serviceAccount(服务账号)的方式来做认证,大多数时候做k8s的二次开发都是选择通过ServiceAccount和RBAC的方式。
可以看到每个sa都有一个token