Менеджер доступов
На этой странице
В платформе “Штурвал” управление правами доступа осуществляется с помощью ресурса “permissions” (набор доступов), который позволяет гибко настроить доступы к разным частям платформы. Создать набор доступов можно в разделе “Управление доступом” платформы. Наборы доступов, созданные в менеджере доступов, доступны для назначения на пользователей и группы во всех клиентских кластерах и неймспейсах в соответствии с уровнем, для которого создан набор доступа.
Вы можете создать наборы доступов, которые назначат права:
- к платформенным ресурсам (инфраструктура и права доступа);
- к кластерным ресурсам (в т.ч. неймспейсам);
- к ArgoCD.
Вы можете компоновать права доступа так, как требуется для реализации задач. Набор доступов позволяет выдавать права доступа в том числи сегментировано, например, только к ArgoCD. Для создания такого набора доступов оставьте незаполненными кластерные и платформенные разрешения.
Обратите внимание!
- Изменение набора доступов в менеджере доступов приведет к изменению прав доступа всех пользователей и групп, на которых назначен этот набор доступов.
- Если набор доступов назначен хотя бы одному пользователю или группе, то полное его удаление возможно только после снятия назначений с пользователей и групп.
- Преднастроенные наборы доступов (например, platform-admin и cluster-admin) недоступны для внесения изменений или удаления. Разрешения в них строго зашиты. При необходимости создайте новые наборы доступов.
Скриншот

Есть 3 уровня, для которых может быть создан набор доступов:
| Уровень набора доступа | Описание возможностей уровня |
|---|---|
| Платформа | Позволяет открыть доступ ко всей платформе в целом; к клиентским кластерам без доступа к кластеру управления; только к кластеру управления; к логам кластера управления и клиентских кластеров; к ArgoCD клиентских кластеров и кластера управления |
| Кластер | Позволяет открыть доступ к определенному клиентскому кластеру в целом или только к некоторым его объектам; к логам клиентского кластера; к инфраструктуре клиентского кластера; к проектам ARGO CD определенного кластера |
| Неймспейс | Позволяет открыть доступ к определенному неймспейсу клиентского кластера в целом или только к некоторым его объектам; к проекту ARGO CD этого неймспейса |
Скриншот

На каждом уровне доступа страница набора доступов содержит:
- имя набора доступов. Задается при создании набора. Обязательное и неизменяемое.
- описание набора доступов. Необязательное поле, позволяет внести короткое описание для удобства дальнейшего назначения. Рекомендуем поддерживать в актуальном состоянии для удобства использования наборов доступа.
- роль в Argo CD. Необязательное поле, позволяет назначить роль в интерфейсе ArgoCD.
- кластерные разрешения. Необязательные, позволяют задать набор правил в формате YAML. Каждое правило должно содержать API-группу, глаголы и ресурсы, к которым назначаются права.
- платформенные разрешения. Необязательные, позволяют задать права к тем ресурсам, которыми управляет кластер управления. Для уровней “кластер” и “неймспейс” это управление объектами инфраструктуры (узлы, машины), неймспейсами и правами доступа. Для уровня “платформа” это управление ресурсами кластера управления.
Кластерные разрешения
Эти разрешения относятся только к клиентским кластерам. Так, например, кластерные разрешения, прописанные в набор доступов уровня “Платформа”, откроют доступ до указанных ресурсов клиентских кластеров. Ожидается валидный YAML. Первой строкой должна быть API-группа.
Пример
- apiGroups:
- '*'
resources:
- '*'
verbs:
- '*'
- nonResourceURLs:
- '*'
verbs:
- '*'
Платформенные разрешения
Т.к. созданием кластеров, объектов инфраструктуры и доступа управляет кластер управления (платформа), разрешения называются платформенными. В зависимости от уровня создаваемого набора доступны следующие платформенные разрешения:
Платформенные разрешения
| Название разрешения | Полномочия | Уровни набора разрешений | Комментарий |
|---|---|---|---|
| access-map-get | Просмотр назначенных ролей, дерева доступов | Платформа | - |
| cluster-create | Создание клиентских кластеров | Платформа | Дополнительно требует как минимум разрешений provider-get, provider-edit и ippool-get. Рекомендуется для создания кластеров использовать только набор доступов platform-admin |
| permissions-edit | Управление правами пользователей и групп в кластере управления | Платформа | - |
| permissions-get | Получение сведений о правах доступа в кластере управления | Платформа | - |
| platform-roles-edit | Управление правами доступа Service-accounts | Платформа | - |
| platform-roles-get | Получение сведений о правах доступа Service-accounts | Платформа | - |
| provider-edit | Управление провайдерами инфраструктуры | Платформа | Рекомендуется совместно с разрешениями ippool-get |
| provider-get | Получение доступов о провайдерах инфраструктуры | Платформа | Рекомендуется совместно с разрешениями ippool-get |
| ippool-edit | Управление пулами IP-адресов в кластере управления | Платформа | Рекомендуется совместно с разрешениями ippool-get, provider-get, provider-edit |
| ippool-get | Получение пулов IP-адресов в кластере управления | Платформа | Пулы назначаются в провайдер, поэтому рекомендуется совместно с provider-get, provider-edit |
| cluster-delete | Удаление клиентских кластеров | Платформа, Кластер | - |
| cluster-edit | Установление аннотаций, приостановка реконсиляции инфраструктуры, создание информационного сообщения в клиентских кластерах | Платформа, Кластер | Дополнительно требует как минимум разрешений cluster-get и cluster-info |
| cluster-get | Получение клиентского кластера, информационного сообщения | Платформа, Кластер, Неймспейс | На уровне “Неймспейс” позволяет получить объекты кластера |
| cluster-info | Получение информации о клиентском кластере | Платформа, Кластер | - |
| cluster-infra-edit | Управление узлами, машинами кластера | Платформа, Кластер | - |
| cluster-infra-get | Получение сведений об узлах, машинах кластера | Платформа, Кластер | - |
| cluster-roles-edit | Управление правами доступа пользователей и групп в кластере | Платформа, Кластер | - |
| cluster-roles-get | Получение сведений о правах доступа в кластере | Платформа, Кластер | - |
| namespace-roles-edit | Управление правами доступа пользователей и групп в неймспейсах клиентских кластеров | Платформа, Кластер, Неймспейс | - |
| namespace-roles-get | Получение сведений о правах доступа в неймспейсах клиентских кластеров | Платформа, Кластер, Неймспейс | - |
| tenant-get | Получение информации о тенанте | Платформа, Кластер, Неймспейс | В релизе 2.11.0 получить информацию о самом тенанте могут только пользователи с платформенными назначениями |
| tenant-edit | Управление тенантами | Платформа, Кластер | В релизе 2.11.0 изменить информацию о самом тенанте могут только пользователи с платформенными назначениями |
Роли в ArgoCD
Все роли доступны на любом из уровней набора разрешений. При создании на уровне “Платформа” роль будет назначена в каждом клиентском кластере. В кластере управления роль не создается.
| Название роли | Разрешения в ArgoCD | Описание разрешений |
|---|---|---|
| admin | policyAppCreate, policyAppGet, policyAppUpdate, policyAppSync, policyAppDelete, policyAppSetCreate, policyAppSetGet, policyAppSetUpdate, policyAppSetDelete, policyExecCreate, policyLogsGet | Полный доступ на создание проектов, приложений |
| edit | policyAppCreate, policyAppGet, policyAppSync, policyAppSetCreate, policyAppSetGet | может создавать приложения, но не может менять репозиторий или удалять приложения |
| view | policyAppGet, policyAppSetGet | доступ на чтение информации в проектах ArgoCD |