Инструменты пользователя

Инструменты сайта


kubernetes:безопасность_в_кластере

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
kubernetes:безопасность_в_кластере [2022/02/21 15:55] rootkubernetes:безопасность_в_кластере [2024/12/21 19:00] (текущий) – внешнее изменение 127.0.0.1
Строка 130: Строка 130:
 </code> </code>
 ===== Кластерные роли ===== ===== Кластерные роли =====
 +Кластерные роли, в отличие от обычных, не привязаны к ресурсам в определенном namespace.
 +==== Кластерная роль ====
 +<code yaml cluster-role.yaml>
 +apiVersion: rbac.authorization.k8s.io/v1
 +kind: ClusterRole
 +metadata:
 +  name: cluster-administrator
 +rules:
 +- apiGroups: [""]
 +  resources: ["nodes"]
 +  verbs: ["list","get","create","delete"]
 +</code>
 +==== Привязка кластерной роли к пользователю ====
 +<code yaml cluster-role-binding.yaml>
 +apiVersion: rbac.authorization.k8s.io/v1
 +# This cluster role binding allows anyone in the "manager" group to read secrets in any namespace.
 +kind: ClusterRoleBinding
 +metadata:
 +  name: cluster-admin-role-binding
 +subjects:
 +- kind: User
 +  name: cluster-administrator # Name is case sensitive
 +  apiGroup: rbac.authorization.k8s.io
 +- kind: Group
 +  name: cluster-admins # Name is case sensitive
 +  apiGroup: rbac.authorization.k8s.io
 +roleRef:
 +  kind: ClusterRole
 +  name: cluster-administrator
 +  apiGroup: rbac.authorization.k8s.io
 +</code>
  
 +===== Service Accounts =====
 +По умолчанию в каждом namespace уже существует ServiceAccount с именем <color #ed1c24>default</color>, который автоматически цепляется каждым создаваемым Pod'ом. При этом, default аккаунт сильно порезан в правах.
 +
 +Создать ServiceAccount
 +<code bash>kubectl create serviceaccount test-sa</code>
 +Получить список ServiceAccount'ов
 +<code bash>kubectl get serviceaccount</code>
 +Вывести полную информацию о ServiceAccount'е
 +<code bash>kubectl describe serviceaccount test-sa</code>
 +Получить токен безопасности определенного ServiceAccount'а
 +<code bash>kubectl describe secret test-sa-token-kbbdm</code>
 +
 +Применить ServiceAccount к поду:
 +<code yaml pod.yaml>
 +apiVersion: v1
 +kind: Pod
 +metadata:
 +  name: simplePod
 +spec:
 +  containers:
 +  - name: simplePod
 +    image: simplePod
 +  serviceAccountName: simplePod-sa 
 +</code>
kubernetes/безопасность_в_кластере.1645448142.txt.gz · Последнее изменение: 2024/12/21 19:00 (внешнее изменение)