Концепция тенантов

Объединение кластеров и неймспейсов для разграничения доступа.

Суть реализации

Тенанты в платформе «Штурвал» — это дополнительный уровень абстракции между платформой и кластерами. Они позволяют объединять ресурсы для единого управления доступом:

  • несколько кластеров целиком;
  • несколько неймспейсов одного кластера;
  • несколько неймспейсов нескольких кластеров.

Иерархия доступа: ПлатформаТенантыКластерыНеймспейсы. Права, назначенные на тенант, применяются ко всем вложенным объектам (кластерам и неймспейсам в нём).

По умолчанию создаются системные тенанты:

  • platform — включает все кластеры и неймспейсы платформы;
  • тенант на кластер — для каждого созданного кластера создаётся тенант, включающий все неймспейсы этого кластера.

Системные тенанты нельзя изменить, удалить или продублировать.

С точки зрения реализации тенанты представлены кастомными ресурсами API‑группы permissions.shturval.tech. Общий обзор этих и других кастомных ресурсов доступен на странице «Кастомные ресурсы в платформе».


Способы использования

По системе

Если на платформе несколько систем (например, CRM, ERP, аналитика), кластеры и неймспейсы каждой системы можно объединить в отдельный тенант и выдать единый доступ команде, отвечающей за систему.

По окружению

Если в одном или нескольких кластерах есть разделение по окружениям (dev, stage, prod), все неймспейсы одного окружения можно объединить в тенант и выдать доступ к окружению.

По типу неймспейсов

Можно объединить системные или кастомные неймспейсы разных кластеров в тенант для упрощения назначения прав.

Назначение прав в тенанте

  • Если тенант объединяет кластеры целиком (в неймспейсах указана *), доступны наборы доступов кластерного уровня.
  • Если тенант объединяет конкретные неймспейсы, доступны наборы доступов неймспейсного уровня.

Назначение прав выполняется в разделе Управление доступом → вкладка Тенант. Подробнее — Назначение прав доступа.


Необходимые права доступа

Управление тенантами и назначение прав в них доступно только платформенным пользователям — тем, у кого есть права на уровне платформы.

Разрешение Описание Уровень
tenant-get Получение информации о тенанте Платформа, Кластер, Неймспейс
tenant-edit Управление тенантами (создание, изменение, удаление) Платформа, Кластер
tenant-role-binder Управление доступами в тенантах, просмотр тенантов, раздел «Управление доступом» Платформа
tenant-role-viewer Просмотр доступов в тенантах, менеджера и дерева доступов Платформа

Подробнее — Настройка разрешений.


Релиз 2.15.0

Важно: Основной функционал тенантов будет реализован в релизе 2.15.0. В 2.14 доступны базовые возможности назначения прав в тенантах и просмотр структуры доступов.