Аутентификация пользователя Kubernetes с сертификатом

Я играю с Minikube и создал тестового пользователя с сертификатами (mueller). Он установил CN своего сертификата на mueller и O на разработку.

Вот моя роль:

kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
 namespace: development
 name: read-development-pods
rules:
 - apiGroups: [""]
   resources: ["pods"]
   verbs: ["get", "list", "watch"]

и моя роль:

kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
 name: read-development-pods-rb
 namespace: development
subjects:
- kind: User
  name: mueller
  apiGroup: rbac.authorization.k8s.io
roleRef:
  kind: Role
  name: read-development-pods
  apiGroup: rbac.authorization.k8s.io

Также я установил свои сертификаты в файл kubeconfig. Правила работают нормально.

Теперь мой вопрос: могу ли я избавиться от привязки ролей, потому что иметь привязку ролей для каждого пользователя не очень удобно, и я думаю, что где-то читал, что Kubernetes может использовать поле O сертификата пользователя для автоматической привязки к ролям. которые написаны в этом поле.

Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
0
0
61
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Всякий раз, когда вы успешно подтверждаете объект объекта в рамках одного из стратегии аутентификации K8s в Kubernetes API, типичный запрос может состоять из некоторых свойств атрибут, которые определяют способ авторизации посетителя кластера с помощью одного из конкретных модули.

Согласно официальному Kubernetes документация:

As of Kubernetes 1.4, client certificates can also indicate a user’s group memberships using the certificate’s organization fields. To include multiple group memberships for a user, include multiple organization fields in the certificate.

For example, using the openssl command line tool to generate a certificate signing request:

openssl req -new -key jbeda.pem -out jbeda-csr.pem -subj "/CN=jbeda/O=app1/O=app2"

конечно, но могу ли я избавиться от RoleBinding и позволить kubernetes использовать O-поле как группы и автоматически привязывать пользователя к этой группе?

ItFreak 14.06.2019 08:33

Вы можете использовать определенную группу, к которой назначен пользователь, и объявить эту группу в определении RoleBinding.

Nick_Kh 17.06.2019 11:28

Другие вопросы по теме