VK Cloud logo

Управление доступом

Чтобы разграничить права для приглашенных участников проекта или сервисных учетных записей, в Managed Containers используется единый сервис управления идентификацией и доступом — IAM. Управлять доступами можно централизованно из личного кабинета VK Cloud.

Список доступных участнику проекта действий в сервисе Managed Containers определяет:

Настройка отдельных разрешений для Managed Containers не поддерживается.

Роли могут назначать только участники проекта с ролями Владелец проекта, Суперадминистратор и Администратор пользователей (IAM). Выбирая роли, придерживайтесь принципа минимальных привилегий: пользователь должен иметь только те права, без которых невозможно выполнить его задачи.

Базовые роли

Базовые роли Владелец проекта, Суперадминистратор и Администратор проекта получают полный доступ ко всем операциям Managed Containers, настраивать отдельные роли не нужно.

mcs_owner

Название в личном кабинете: Владелец проекта.

Роль с максимальным набором прав на проекте. Роль автоматически назначается пользователю, который сам создал проект, либо для которого проект был автоматически создан при регистрации аккаунта.

В проекте может быть только один владелец. Эту роль нельзя назначить вручную или пригласить на нее.

mcs_co_owner

Название в личном кабинете: Суперадминистратор.

Роль, которая предоставляет разрешения на управление всеми ресурсами проекта. Эта роль может быть назначена пользователю только владельцем проекта.

mcs_admin

Название в личном кабинете: Администратор проекта.

Роль, которая предоставляет разрешения на управление всеми ресурсами проекта, кроме групп пользователей и баланса.

mcs_admin_security

Название в личном кабинете: Администратор пользователей (IAM).

Роль, предназначенная для управления участниками проекта на странице управления доступами. Администратор пользователей может приглашать участников в проект и удалять их из него, редактировать назначенные участникам роли. Сервисы и информация о балансе проекта для этой роли недоступны.

В сервисе Cloud Logging роль позволяет просматривать логи.

В сервисе Cloud Monitoring роль позволяет просматривать дашборды.

В сервисе Cloud Audit роль позволяет просматривать события сервиса IAM и собственные действия пользователя.

mcs_viewer

Название в личном кабинете: Наблюдатель.

Роль, которая предоставляет разрешения на просмотр большей части информации о проекте и ресурсах, но не имеет разрешений для их создания и изменения.

В сервисе Cloud Logging роль позволяет просматривать логи.

В сервисе Cloud Monitoring роль позволяет просматривать дашборды.

В сервисе Cloud Audit роль позволяет просматривать все события проекта и выгружать эти данные.

В сервисе Managed Containers роль позволяет просматривать информацию о кластере и группах узлов и получать секрет для доступа в Headlamp.

Специализированные роли

Для сервиса Managed Containers доступно несколько специализированных ролей, которые можно использовать вместе с базовой ролью или самостоятельно.

mcs_k8s_viewer

Название в личном кабинете: Аудитор Kubernetes.

Роль с разрешениями на просмотр сервиса Managed Containers.

Пользователь с этой ролью может:

  • просматривать информацию о кластере и группах узлов;
  • получать файл kubeconfig;
  • получать секрет для доступа в Kubernetes Dashboard.

В сервисе Cloud Logging роль позволяет просматривать логи и генерировать учетные данные.

В сервисе Cloud Monitoring роль позволяет просматривать, создавать и редактировать дашборды, а также делать запись в систему мониторинга.

В сервисе Cloud Audit роль позволяет просматривать события сервиса Managed Containers и собственные действия пользователя, а также выгружать эти данные.

mcs_k8s_editor

Название в личном кабинете: Оператор Kubernetes.

Роль с разрешениями для работы в сервисе Managed Containers. Некоторые действия доступны только в определенном состоянии кластера. Например, установка и удаление аддонов возможны, только если кластер запущен.

Пользователь с этой ролью может:

  • запускать и останавливать кластеры;
  • отображать информацию о кластере и группах узлов;
  • получать файл kubeconfig;
  • получать секрет для доступа в Kubernetes Dashboard;
  • обновлять версию кластера;
  • изменять тип виртуальной машины;
  • изменять размер диска Prometheus;
  • добавлять или удалять группу узлов;
  • изменять настройки масштабирования групп узлов;
  • изменять метки (labels) и ограничения (taints);
  • устанавливать или удалять аддоны.

В сервисе Cloud Logging роль позволяет просматривать логи и генерировать учетные данные.

В сервисе Cloud Monitoring роль позволяет просматривать, создавать и редактировать дашборды, а также делать запись в систему мониторинга.

В сервисе Cloud Audit роль позволяет просматривать события сервиса Managed Containers и собственные действия пользователя, а также выгружать эти данные.

mcs_k8s_admin

Название в личном кабинете: Администратор Kubernetes.

Роль с максимально широким набором разрешений для работы с сервисом Managed Containers. Некоторые действия доступны только в определенном состоянии кластера. Например, установка и удаление аддонов возможны, только если кластер запущен.

Пользователь с этой ролью может:

  • создавать и удалять кластеры;
  • запускать и останавливать кластеры;
  • отображать информацию о кластере и группах узлов;
  • получать файл kubeconfig;
  • получать секрет для доступа в Kubernetes Dashboard;
  • обновлять версию кластера;
  • изменять тип виртуальной машины;
  • изменять размер диска Prometheus;
  • добавлять или удалять группу узлов;
  • изменять настройки масштабирования групп узлов;
  • изменять метки (labels) и ограничения (taints);
  • устанавливать или удалять аддоны.

В сервисе Cloud Logging роль позволяет просматривать логи и генерировать учетные данные.

В сервисе Cloud Monitoring роль позволяет просматривать, создавать и редактировать дашборды, а также делать запись в систему мониторинга.

В сервисе Cloud Audit роль позволяет просматривать события сервиса Managed Containers и собственные действия пользователя, а также выгружать эти данные.

Взаимосвязь ролей личного кабинета и Kubernetes

Пользователь аутентифицируется в кластере Kubernetes с теми же реквизитами, что и при входе в личный кабинет VK Cloud, с помощью технологии единого входа (Single Sign-On, SSO). Каждая специализированная роль — администратора, оператора или аудитора Kubernetes — также определяет доступную пользователю внутреннюю роль Kubernetes. Роль Kubernetes отвечает за то, какие объекты кластера доступны пользователю, и какие действия разрешено выполнять над этими объектами.

Чтобы просмотреть список доступных ресурсов для роли, подключитесь к кластеру и выполните команду:

kubectl describe clusterrole <РОЛЬ_В_KUBERNETES>

Роль в Kubernetes: view.

Роль предоставляет доступ на чтение к большинству объектов в пространстве имен.

Роль не предоставляет:

  • Доступ на просмотр или изменение ролей и связывания ролей.

  • Доступ к секретам.

    Пользователь с доступом к секретам может получить доступ к учетным данным любого сервисного аккаунта в пространстве имен. Это позволит получить доступ к API от имени любого сервисного аккаунта в пространстве имен. Для роли с правами «только чтение» это будет расцениваться как превышение привилегий (privilege escalation).

Была ли статья полезна?