【发布时间】:2018-11-26 18:27:38
【问题描述】:
我正在尝试使用 RBAC 锁定 kubernetes 中的命名空间,因此我遵循了 tutorial。
我正在开发一个 baremetal 集群(没有 minikube,没有云提供商)并使用 Ansible 安装了 kubernetes。
我创建了以下 命名空间:
apiVersion: v1
kind: Namespace
metadata:
name: lockdown
服务帐号:
apiVersion: v1
kind: ServiceAccount
metadata:
name: sa-lockdown
namespace: lockdown
角色:
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: lockdown
rules:
- apiGroups: [""] # "" indicates the core API group
resources: [""]
verbs: [""]
角色绑定:
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: rb-lockdown
subjects:
- kind: ServiceAccount
name: sa-lockdown
roleRef:
kind: Role
name: lockdown
apiGroup: rbac.authorization.k8s.io
最后我使用下一条命令测试了授权
kubectl auth can-i get pods --namespace lockdown --as system:serviceaccount:lockdown:sa-lockdown
这应该返回“否”,但我得到“是”:-(
我做错了什么?
谢谢
【问题讨论】:
标签: kubernetes roles kubectl rbac