kubernetes 12015 创建一个普通用户:ai-user权限可以访问空间名:ai 和 dev 两个空间名称 具有该空间名称下的所有权限使用yaml创建代码制作成kubeconfig 远程可以连接 kubernetes 访问 ai 和 dev 空间名的 deployment pod service stateful 等所有权限。解释每一步
- 创建普通用户ai-user
首先,我们需要创建一个普通用户,可以使用以下命令:
$ kubectl create user ai-user
- 创建角色和角色绑定
接下来,我们需要为ai-user创建一个角色,该角色将允许用户访问ai和dev空间。
我们可以使用以下命令创建角色:
$ kubectl create role ai-role --verb=get,list,create,update,delete --resource=pods,services,deployments,statefulsets --namespace=ai,dev
上述命令将创建一个名为ai-role的角色,该角色允许用户使用get、list、create、update和delete命令访问pods、services、deployments和statefulsets资源。此外,该角色还将限制用户的访问权限仅限于ai和dev空间。
然后,我们需要将角色绑定到ai-user上,这样用户就能够访问ai和dev空间的资源了。可以使用以下命令来完成角色绑定:
$ kubectl create rolebinding ai-role-binding --role=ai-role --user=ai-user --namespace=ai,dev
上述命令将创建一个名为ai-role-binding的角色绑定,该绑定将ai-role角色与ai-user用户关联,并将其限制为仅能访问ai和dev空间。
- 创建kubeconfig文件
现在,我们已经为ai-user创建了必要的角色和角色绑定。接下来,我们需要创建一个kubeconfig文件,以便用户可以使用该文件连接到kubernetes集群并访问ai和dev空间。
我们可以使用以下命令创建kubeconfig文件:
$ kubectl config set-credentials ai-user --client-certificate=ai-user.crt --client-key=ai-user.key --embed-certs=true
$ kubectl config set-context ai-context --cluster=kubernetes --namespace=ai --user=ai-user
$ kubectl config set-context dev-context --cluster=kubernetes --namespace=dev --user=ai-user
上述命令会创建名为ai-user的用户凭据,并将其与ai-context和dev-context上下文关联。这将允许用户连接到kubernetes集群,并使用该文件访问ai和dev空间。
- 测试用户访问权限
现在,我们已经为ai-user创建了必要的角色和角色绑定,并创建了kubeconfig文件。我们可以使用以下命令来测试用户是否具有访问权限:
$ kubectl --context=ai-context get pods
$ kubectl --context=dev-context get pods
上述命令将允许用户使用ai-context或dev-context上下文连接到kubernetes集群,并使用get命令访问ai和dev空间的pods资源。如果一切正常,用户将能够成功访问这些资源。
原文地址: https://www.cveoy.top/t/topic/bVXD 著作权归作者所有。请勿转载和采集!