Через каждого инженера проходит такое количество информации, что часть вещей вроде бы и слышал, но до конца не осознал или просто никогда не применял на практике.
Сегодня словил себя на этом же 👀
Всегда думал, что в Kubernetes есть только:
• SelfSubjectAccessReview — проверка «могу ли Я сделать действие»
• SubjectAccessReview — проверка «может ли другой пользователь/SA сделать действие»
Например:
kubectl auth can-i create pods
А оказывается есть еще и:
kind: SelfSubjectRulesReview
Эта штука позволяет получить effective RBAC rules для текущего пользователя в рамках namespace.
Пример:
apiVersion: authorization.k8s.io/v1
kind: SelfSubjectRulesReview
spec:
namespace: default
или привычнее:
kubectl auth can-i --list -n default
Но тут есть интересный нюанс:
SelfSubjectRulesReview namespace-oriented и не умеет нормально показывать “все права во всем кластере”.
То есть cluster-scope права приходится проверять точечно:
kubectl auth can-i list nodes
kubectl auth can-i list namespaces
****
Может это и хорошо забытое старое но приятное 😇
