亲宝软件园·资讯

展开

k8s实现身份认证策略及过程解析

wffeige 人气:0

身份认证策略

API Server启用的身份认证机制

基于认证插件支持多种认证方式,而相应认证插件的启用需要经 由kube-apiserver上的专用选项完成 kubeadm v1.26 部署的集群默认启用的认证机制如右图红框中的选 项,它们依次是

注意:API Server并不保证各认证插件的生效次序与定义的次序相同

kubelet启用的身份认证机制

kubelet的REST API端点默认通过TCP协议的10250端口提供,支持管理操作

需要对客户端身份进行认证

X.509数字证书认证

在双向TLS通信中,客户端持有数字证书,而API Server信任客户端证书的颁发者

静态令牌文件

令牌信息保存于文本文件中 由kube-apiserver在启动时通过--token-auth-file选项加载 加载完成后的文件变动,仅能通过重启程序进行重载,因此,相关的令牌会长期有效 客户端在HTTP请求中,通过“Authorization Bearer TOKEN”标头附带令牌令牌以完成认证

Service Account令牌

OpenID Connect(OIDC)令牌

OAuth3认证机制,通常由底层的IaaS服务所提供

Webhook令牌认证

身份认证代理

静态令牌认证配置案例

静态令牌认证的基础配置

配置示例

X509 数字证书认证

X509客户端认证依赖于PKI证书体系,kubeadm部署Kubernetes集群时会自动生成所需要的证书,它们位于/etc/kubernetes/pki目录下

依赖到的PKI体系

另外,对Service Account的token进行签名还需要用到一个可选的密钥对儿

所有的证书

X509数字证书认证测试

创建客户端私钥和证书签署请求,为了便于说明问题,以下操作在master节点上以/etc/kubernetes/为工作目录

1 生成私钥: (umask 077; openssl genrsa -out ./pki/mason.key 4096)

2 创建证书签署请求: openssl req -new -key ./pki/mason.key -out ./pki/mason.csr -subj "/CN=mason/O=developers"

3 由Kubernetes CA签署证书: openssl x509 -req -days 365 -CA ./pki/ca.crt -CAkey ./pki/ca.key -CAcreateserial -in ./pki/mason.csr -out ./pki/mason.crt

4 将pki目录下的mason.crt、mason.key和ca.crt复制到某部署了kubectl的主机上,即可进行测试

加载全部内容

相关教程
猜你喜欢
用户评论