Tag Archives: MimboloveRoleBinding
В контексте Kubernetes (k8s) RoleBinding — это объект API, который предоставляет права, определённые в Role или ClusterRole, конкретному пользователю, группе пользователей или сервисному аккаунту в пределах определённого пространства имён (namespace).
Простыми словами: RoleBinding связывает «кто» (субъект) с «что можно делать» (роль).
Ключевые понятия
- Role (Роль): Набор правил, определяющих, какие действия (verbs: get, list, create, delete) разрешены над какими ресурсами (pods, services, deployments). Role действует только в рамках одного namespace.
- ClusterRole (Кластерная роль): Аналогична Role, но действует на уровне всего кластера. Используется для:
- Ресурсов, не привязанных к namespace (например,
nodes,persistentvolumes). - Разрешения доступа к эндпоинтам API (например,
/healthz). - Предоставления одинаковых прав во всех namespace сразу (если привязать через RoleBinding).
- Ресурсов, не привязанных к namespace (например,
- RoleBinding (Привязка роли): Связывает Role с субъектами внутри одного namespace.
- ClusterRoleBinding (Кластерная привязка роли): Связывает ClusterRole с субъектами на уровне всего кластера.
RoleBinding — это объект Kubernetes, который связывает (привязывает) набор разрешений, определенных в Role или ClusterRole, с конкретными пользователями, группами или сервисными аккаунтами. Проще говоря, RoleBinding «наделяет правами» субъектов в кластере.
Архитектура RBAC
Система RBAC состоит из трех основных компонентов:
- Role/ClusterRole — что можно делать (набор правил)
- Subject — кто (пользователь, группа, сервисный аккаунт)
- RoleBinding/ClusterRoleBinding — связывает первые два компонента
Role vs ClusterRole
Role
-
Действует в пределах одного namespace
-
Используется для предоставления прав к ресурсам в конкретном namespace
0