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

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


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

Различия

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

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

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
kubernetes:безопасность_в_кластере [2022/02/21 14:02] – [Создание роли] rootkubernetes:безопасность_в_кластере [2024/12/21 19:00] (текущий) – внешнее изменение 127.0.0.1
Строка 128: Строка 128:
 kubectl auth can-i delete nodes kubectl auth can-i delete nodes
 kubectl auth can-i create pods --as sample-user kubectl auth can-i create pods --as sample-user
 +</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> </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/безопасность_в_кластере.1645441370.txt.gz · Последнее изменение: 2024/12/21 19:00 (внешнее изменение)