Управление пользователями и правами доступа в Yandex Managed Service for ClickHouse®
В Managed Service for ClickHouse® права доступа пользователя определяются назначенными ему привилегиями.
Привилегия — это разрешение выполнять определенные операции в кластере. Подробнее об иерархии привилегий и их области действия читайте в документации ClickHouse®
Роль — это набор привилегий.
Возможности управления правами доступа зависят от выбранного способа управления пользователями:
- Управление через интерфейсы Yandex Cloud (консоль управления
, CLI, Terraform и API) — позволяет управлять доступом пользователей к базам данных с использованием возможностей сервиса Managed Service for ClickHouse®. - Управление через SQL — позволяет управлять доступом пользователей к объектам баз данных на основе ролевой модели (RBAC
).
Одновременное управление через интерфейсы Yandex Cloud и через SQL не поддерживается.
При создании кластера автоматически создаются служебные пользователи.
Управление пользователями через интерфейсы Yandex Cloud
Через интерфейсы Yandex Cloud можно:
-
создавать пользователей и предоставлять им доступ к базам данных;
-
настраивать параметры доступа:
Включить управление пользователями через интерфейсы Yandex Cloud можно только при создании кластера.
Ограничения привилегий для пользователей
Пользователи, созданные через интерфейсы Yandex Cloud, не имеют следующих привилегий:
SYSTEM SHUTDOWN;FILE;ALTER FREEZE PARTITION;CREATE DATABASEиDROP DATABASE;ACCESS MANAGEMENT;- привилегии на модифицирующие операции для системных баз данных
systemи_system.
Управление пользователями через SQL
Включить управление пользователями через SQL можно при создании кластера или изменении его настроек. После этого управлять пользователями можно будет только через SQL, вернуться к управлению через интерфейсы Yandex Cloud невозможно. При этом пользователи, созданные через интерфейсы Yandex Cloud, сохраняются.
При включении настройки создается пользователь admin, от имени которого можно создавать других пользователей и управлять ролями, привилегиями и политиками строк.
Подробнее об управлении правами доступа через SQL читайте в документации ClickHouse®
Ограничения привилегий для пользователя admin
Пользователь admin не имеет следующих привилегий:
SYSTEM SHUTDOWN;FILE;ALTER FREEZE PARTITION;- привилегии на модифицирующие операции для системных баз данных
systemи_system.
Также привилегии CREATE DATABASE и DROP DATABASE предоставляются только при условии, что управление базами данных выполняется через SQL.
Поскольку набор привилегий у admin ограничен, команда GRANT ALL недоступна. Чтобы назначить все доступные привилегии, используйте GRANT CURRENT GRANTS.
Подробнее о GRANT CURRENT GRANTS читайте в документации ClickHouse®
Служебные пользователи
Служебные пользователи — это пользователи, которые создаются и управляются сервисом Managed Service for ClickHouse®. Они необходимы для работы кластера. Управление такими пользователями вручную недоступно.
_admin
Пользователь для администрирования и управления кластером ClickHouse®: создания баз данных, пользователей, служебных таблиц.
_backup_admin
Пользователь для создания резервных копий и восстановления данных из них.
_monitor, _sli
Пользователи для выполнения проверок работоспособности кластера ClickHouse® и его подсистем.
_metrics
Пользователь для вычисления метрик, отправляемых в Yandex Monitoring.
ClickHouse® является зарегистрированным товарным знаком ClickHouse, Inc