Роли и пользователи
В данном разделе рассматриваются типы ролей и пользователей, которые нужны для корректной работы TCF.
Прежде чем перейти к пользователям и ролям, ознакомьтесь с компонентами TCF в соответствующей схеме.
Пользователи и их роли, которые могут быть назначены человеку или внешним сервисам:
- Пользователи Tarantool
admin- DML-пользователь
Служебные пользователи для корректной работы TCF:
- Служебные пользователи для репликации данных внутри кластера и шардирования
- Служебный пользователь репликации данных
peerstorage
Также смотрите пример создания пользователей в TCF.
Пользователи Tarantool
Пользователи Tarantool – это учетные записи для управления кластером Tarantool (или продуктов на его основе). Для работы с кластером необходимы пользователи с ролями: Администратор БД и Пользователь БД.
Роль | Пользователь | Описание |
|---|---|---|
Администратор БД |
| Создает пользователей БД и сущности для работы с данными, назначает права пользователям БД. |
Пользователь БД | DML-пользователь | Выполняет DML-операции (чтение, запись, обновление, удаление данных). |
Служебные пользователи
Служебные пользователи – это специальные учетные записи, предназначенные для выполнения системных задач. Подробнее см. таблицу ниже. Не назначаются человеку или внешним сервисам.
Пользователь | Описание |
|---|---|
Служебный пользователь репликации данных | Пользователь для репликации данных между кластерами в TCF. |
peer | Пользователь для репликации внутри кластера. Имеет минимальные права, достаточные для выполнения операций репликации. Набор параметров и значений в конфигурации этого пользователя должен быть фиксированным (за исключением параметра password). См. пример. |
storage | Пользователь для работы с модулем шардирования. Обеспечивает управление данными, которые шардируются между узлами в кластере. Набор параметров и значений в конфигурации этого пользователя должен быть фиксированным (за исключением параметра password). См. пример. |
Пример настройки служебных пользователей описан в соответствующем разделе.
Пример создания пользователей в YAML-конфигурации для работы TCF:
credentials:users:admin:password: 'secret'roles: [super]privileges:- permissions: ['read', 'write', 'execute', 'create', 'alter', 'drop']universe: truedml_users:password: 'dml_password'roles: [dml]privileges:- permissions: ['read', 'write', 'create', 'alter']spaces: ['space_name']replication_user:password: 'replication_password'roles: [replication]privileges:- permissions: ['read', 'write', 'execute']universe: truepeer:password: 'peering_password'roles: [replication]privileges:- permissions: ['execute']functions: ['box.info']storage:password: 'secret'roles: [sharding]
Пользователи:
admin: администратор БД, предоставляет полный доступ ко всем функциям кластера;replication_user: служебный пользователь репликации данных. На стороне Gateway требует прав на чтение (roles: [replication]), на стороне Destination — прав на выполнение кода и запись данных. Обычно назначаются праваsuper(без прав на управление пользователями);dml_users: DML-пользователь;peer: пользователь для репликации внутри кластера;storage: пользователь для работы с модулем шардирования.
Параметры пользователей:
password: пароль пользователя, необходимый для аутентификации;roles: роли, назначенные пользователю. Роль определяет разрешенные действия для пользователя в кластере;privileges: операции, разрешенные пользователю. Может включать различные виды разрешений, такие как чтение, запись, выполнение и другие;permissions: разрешения, которые могут быть предоставлены пользователю (например,read,write,execute,create,alter,drop);universe: если задано значениеtrue, разрешения действуют на все объекты в кластере;space: спейс данных, для которого предоставляются права;functions: тип объекта, для которого назначены права. В примере этоfunctions.