Как я могу сделать управление доступом на основе ролей в службе Azure Kubernetes?

Я развернул свои модули приложений в службе Azure Kubernetes через VSTS. У меня есть идея по kubernetes с RBAC на локальном кластере через создание пользователей. Теперь я хочу создать некоторые роли и назначить различные разрешения для ресурсов kubernetes для моих разработчиков и тестеров, а также в службе Azure Kubernetes. Я исследовал это и прошел через разные ссылки, но я не получил должного представления об этом. Насколько я понимаю, мы можем назначать разрешения для ролей только пользователям, имеющим доступ в Azure Active Directory. если я ошибаюсь Кто-нибудь может меня поправить.

Я нашел один способ, как OpenID Connect Tokens. Для этого я сослался на следующую ссылку. но я понятия не имею, что такое провайдер идентификации и как генерировать различные токены из провайдера идентификации, идентификатора клиента и токена клиента, которые упомянуты в приведенной выше ссылке?

Может ли кто-нибудь помочь мне сделать RBAC в Azure Kubernetes Service или какие-либо альтернативные способы для этого, а не я упомянул выше?

1 ответ

Вы можете использовать Azure AD RBAC и / или внутренний RBAC k8s (который точно такой же, как в локальном кластере).

Для Azure AD RBAC вы должны использовать тот же подход, что и для внутренних пользователей k8s, но вам необходимо связать роли с объектами Azure AD:

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
 name: binding_name
roleRef:
 apiGroup: rbac.authorization.k8s.io
 kind: ClusterRole
 name: cluster-admin
subjects:
- apiGroup: rbac.authorization.k8s.io
  kind: Group
  name: "azure_ad_group_guid"

Для внутренних k8s RBAC читайте официальный документ.

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