使用 kubectl 测试 RBAC
kubectl 支持 auth can-i 命令,可以用来测试当前用户或指定用户/组是否有权限执行某个操作。这个命令非常有用,可以帮助我们验证 RBAC 权限配置是否正确
基本用法
kubectl auth can-i <动作> <资源> [选项]
测试当前用户
kubectl auth can-i create pods
kubectl auth can-i delete deployments -n default
kubectl auth can-i list secrets --all-namespaces
测试 ServiceAccount
kubectl auth can-i get pods \
--as=system:serviceaccount:default:app-controller
测试用户/组
kubectl auth can-i create deployments --as=alice
kubectl auth can-i get pods --as-group=developers
列出所有权限
kubectl auth can-i --list
kubectl auth can-i --list --as=system:serviceaccount:default:app-controller