用户账户和用户组
Kubernetes 并不会存储由认证插件从客户端请求中提取出的用户及所属组的信息,它们仅仅用于检验用户是否有权限执行其所请求的操作
客户端访问 API 服务的途径通常有三种:kubectl、客户端库或者直接使用 REST接口进行请求;而可以执行此类请求的主体也被 Kubernetes 分为两类:现实中的“人”和 Pod 对象;它们的用户身份分别对应于常规用户 (User Account )和服务账号 ( Service Account)
- Use Account(用户账号)
一般是指由独立于 Kubernetes 之外的其他服务管理的用户账号,例如由管理员分发的密钥、Keystone 一类的用户存储(账号库)、甚至是包含有用户名和密码列表的文件等
Kubernetes 中不存在表示此类用户账号的对象, 因此不能被直接添加进 Kubernetes 系统中
- Service Account(服务账号)
是指由 Kubernetes API 管理的账号,用于为 Pod 之中的服务进程在访问 Kubernetes API 时提供身份标识( identity )
Service Account 通常要绑定于特定的命名空间,它们由 API Server 创建,或者通过 API 调用于动创建 ,附带着一组存储为 Secret 的用于访问 API Server 的凭据