首页 > kubernetes(k8s) > kubernetes – 用户认证和namespace授权
2019
11-17

kubernetes – 用户认证和namespace授权

当我们安装好集群后,如果想要把 kubectl 命令交给用户使用,就不得不对用户的身份进行认证和对其权限做出限制。

kubernetes 认证基本流程(2种认证方式,pod 与 k8s组件)

2.鉴权(RBAC 授权模式)

实践:( 下面以创建一个 devuser 用户并将其绑定到 dev namespace 为例说明)

需要注意的是 Kubenetes 并不会提供用户管理需要创建一个linux用户

那么 User、Group、ServiceAccount 指定的用户又是从哪里 来的呢?

Kubenetes 组件(kubectl、kube-proxy)或是其他自定义的用户在向 CA 申请证书时,需要提供一个 证书请求文件

1.创建CA证书和秘钥(创建 devuser-csr.json 文件)

devuser-csr.json

下载证书生成工具

生成证书

设置集群参数

去k8s创建下dev的命名空间

rolebinding

将配置文件复制到,devuser用户home下

另开一个窗口,使用devuser用户登录到主节点机器 (这里切记一定要重新登录到devuser,不可以su devuser切换,因为切换后还是原来的环境变量,或者一定要使用就用 su -devuser切换。)

设置默认上下文(让k8s读取到devuser.kubeconfig)

创建一个pod测试下是否在dev命名空间下

因为权限的原因,他只能看到自己命名空间下的pod

现在我们再去k8s的admin用户命名空间下查看

(用户权限设置完成)

最后编辑:
作者:shooter
这个作者貌似有点懒,什么都没有留下。