Ролевая модель KeyStack

Ролевая модель платформы KeyStack определяет доступ ко всем компонентам платформы. Контроль доступа к сервисам основан на модели RBAC (role-based access control). Пользователи получают доступ к различным программным интерфейсам в зависимости от их роли в проекте, домене или контексте системы. Эти роли могут назначаться любому субъекту (пользователю или группе) для любых сущностей (контекст системы, домен, проект).

Принципы организации ролевой модели

Ролевая модель построена по принципу наименьших привилегий. При применении ролевой модели:

  • любой доступ, включая доступ к обрабатываемым на платформе данным, осуществляется на основании перечисленных ролей;

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

  • использование локальных технологических учетных записей для исполнения задач пользователей и администраторов запрещено;

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

Описание ролевой модели

Ролевая модель платформы KeyStack состоит из пяти базовый ролей:

  • admin - администратор платформы. Эта роль дает максимальные привилегии доступа во всей платформе: развертывает и конфигурирует регионы, может проводить все day-2 операции через LCM, обладает всеми правами для работы с виртуальными элементами платформы.

  • operator - сотрудник эксплуатации региона. Эта роль дает права, необходимые для осуществления процесса эксплуатации региона.

  • security_auditor - специалист информационной безопасности. Обладает правами просмотра конфигураций компонентов, а также просмотра событий на SIEM.

  • reader - непривилегированный оператор платформы. Роль предоставляет доступ только на чтение для контекста системы, домена или проекта. Дает возможность просмотра конфигурации региона, компонентов региона, виртуальных элементов.

  • member - учетная запись пользователя платформы. Дает пользователю ограниченные права на использование ресурсов в рамках проекта (тенанта). Эта роль используется для доступа к ресурсам, принадлежащим проекту, с возможностью взаимодействия с ними, но без административных привилегий. Например, пользователи с ролью member в проекте могут просматривать, создавать и удалять ВМ.

Ролевая модель KeyStack реализуется в интеграции платформы с централизованным сервисом идентификации и аутентификации заказчика, например, Active Directory/LDAP. При этом возможно назначить роли KeyStack группам пользователей из централизованного каталога организации. Каждой роли KeyStack могут быть сопоставлены несколько групп LDAP.

Роли KeyStack получают различные привилегии в компонентах платформы. Например, роль operator KeyStack соответствует роли Developer в GitLab.

Сопоставление ролей KeyStack

Роль admin

Администратор платформы, который может:

  • устанавливать и развертывать регионы,

  • менять конфигурацию регионов и компонентов платформы в регионах,

  • проводить все day2-операции через LCM,

  • управлять виртуальными элементами платформы.

Обладает следующими привилегиями доступа к компонентам платформы:

  • AdminUI - CRUD виртуальных элементов платформы (виртуальные машины, диски, образы, сетевые элементы и прочее).

  • OpenStack - CRUD виртуальных элементов платформы (виртуальные машины, диски, образы, сетевые элементы и прочее).

  • GitLab - CRUD IaC компонентов региона, CRUD процессов ПНР.

  • NetBox - CRUD инфраструктурных элементов платформы (гипервизоры, интерфейсы, IP адреса, и прочее).

  • Мониторинг - Просмотр и чтение информации мониторинга, протоколов и событий алертинга.

  • Серверы контроллеров и вычислительных узлов - Полный доступ через sudo.

Роль operator

Оператор эксплуатации региона, который может:

  • проводить все day2-операции через LCM,

  • управлять виртуальными элементами платформы.

Обладает следующими привилегиями доступа к компонентам платформы:

  • AdminUI - CRUD виртуальных элементов платформы (виртуальные машины, диски, образы, сетевые элементы и прочее).

  • OpenStack - CRUD виртуальных элементов платформы (виртуальные машины, диски, образы, сетевые элементы и прочее).

  • GitLab - Запуск пайплайнов эксплуатации.

  • NetBox - Просмотр информации об инфраструктурных элементах платформы.

  • Мониторинг - Просмотр информации мониторинга, протоколов и событий алертинга.

  • Серверы контроллеров и вычислительных узлов - Доступ через sudo, профиль operator.

Роль security_auditor

Специалист информационной безопасности, который может:

  • просматривать конфигурацию регионов и компонентов платформы в регионах,

  • просматривать результаты day2-операций,

  • просматривать информацию о виртуальных элементах платформы,

  • просматривать события аудита.

Обладает следующими привилегиями доступа к компонентам платформы:

  • AdminUI - Просмотр информации о виртуальных элементах платформы (виртуальные машины, диски, образы, сетевые элементы и прочее).

  • OpenStack - Просмотр информации о виртуальных элементах платформы (виртуальные машины, диски, образы, сетевые элементы и прочее).

  • GitLab - Просмотр информации о IaC компонентов региона, кода пайплайнов.

  • NetBox - Просмотр информации об инфраструктурных элементах платформы.

  • Мониторинг - Просмотр информации мониторинга, чтение протоколов и событий алертинга.

  • Серверы контроллеров и вычислительных узлов - Доступ через sudo, профиль security_auditor.

Роль reader

Специалист с этой ролью может:

  • просматривать конфигурацию регионов и компонентов платформы в регионах,

  • просматривать результаты day2-операций,

  • просматривать информацию о виртуальных элементах платформы,

  • отслеживать статус здоровья облака.

Обладает следующими привилегиями доступа к компонентам платформы:

  • AdminUI - Просмотр информации о виртуальных элементах платформы (виртуальные машины, диски, образы, сетевые элементы и прочее).

  • OpenStack - Просмотр информации о виртуальных элементах платформы (виртуальные машины, диски, образы, сетевые элементы и прочее).

  • GitLab - Просмотр информации о IaC компонентов региона, кода автоматизированных процедур эксплуатации.

  • NetBox - Просмотр информации об инфраструктурных элементах платформы.

  • Мониторинг - Просмотр и чтение информации мониторинга, протоколов и событий алертинга.

  • Серверы контроллеров и вычислительных узлов - Доступ через sudo, профиль reader.

Роль member

Пользователь получает доступ к платформе виртуализации с возможностью создавать/редактировать/удалять экземпляры виртуальных машин, тома дисков, снимки ВМ.

Обладает следующими привилегиями доступа к компонентам платформы:

  • AdminUI - Нет привилегий.

  • OpenStack - CRUD в рамках организационной единицы “проект” (тенант) виртуальных элементов платформы (виртуальные машины, диски, образы, сетевые элементы и прочее).

  • GitLab - Нет привилегий.

  • NetBox - Нет привилегий.

  • Мониторинг - Нет привилегий.

  • Серверы контроллеров и вычислительных узлов - Нет привилегий.