Назад к вопросам
Junior — Middle
87
Можешь перечислить основные виды абстракций в Kubernetes, обеспечивающие разграничение доступа к функционалу?
Компании, где спрашивали
IDT
Ответ от нейросети
sobes.tech AI
В Kubernetes для разграничения доступа к функционалу используются следующие основные абстракции:
-
Role и ClusterRole — определяют набор разрешений (permissions) на действия с ресурсами внутри namespace (Role) или на уровне всего кластера (ClusterRole).
-
RoleBinding и ClusterRoleBinding — связывают роли с пользователями, группами или сервисными аккаунтами, предоставляя им соответствующие права.
Эти абстракции реализуют модель RBAC (Role-Based Access Control), которая позволяет гибко управлять доступом к ресурсам Kubernetes.
Пример создания Role и RoleBinding:
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
namespace: default
name: pod-reader
rules:
- apiGroups: [""]
resources: ["pods"]
verbs: ["get", "watch", "list"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: read-pods
namespace: default
subjects:
- kind: User
name: jane
apiGroup: rbac.authorization.k8s.io
roleRef:
kind: Role
name: pod-reader
apiGroup: rbac.authorization.k8s.io
Таким образом, Kubernetes обеспечивает разграничение доступа через роли и привязки ролей.