* DOCSUP-2806: Add meta intro. * DOCSUP-2806: Update meta intro. * DOCSUP-2806: Fix meta. * DOCSUP-2806: Add quotes for meta headers. * DOCSUP-2806: Remove quotes from meta headers. * DOCSUP-2806: Add meta headers. * DOCSUP-2806: Fix quotes in meta headers. * DOCSUP-2806: Update meta headers. * DOCSUP-2806: Fix link to nowhere in EN. * DOCSUP-2806: Fix link (settings to tune) * DOCSUP-2806: Fix links. * DOCSUP-2806:Fix links EN * DOCSUP-2806: Fix build errors. * DOCSUP-2806: Fix meta intro. * DOCSUP-2806: Fix toc_priority in examples datasets TOC. * DOCSUP-2806: Fix items order in toc. * DOCSUP-2806: Fix order in toc. * DOCSUP-2806: Fix toc order. * DOCSUP-2806: Fix order in toc. * DOCSUP-2806: Fix toc index in create * DOCSUP-2806: Fix toc order in create. Co-authored-by: romanzhukov <romanzhukov@yandex-team.ru> Co-authored-by: alexey-milovidov <milovidov@yandex-team.ru>
2.9 KiB
toc_priority | toc_title |
---|---|
40 | Роль |
CREATE ROLE
Создает роль.
Синтаксис
CREATE ROLE [IF NOT EXISTS | OR REPLACE] name
[SETTINGS variable [= value] [MIN [=] min_value] [MAX [=] max_value] [READONLY|WRITABLE] | PROFILE 'profile_name'] [,...]
Описание
Роль — это набор привилегий. Пользователь, которому назначена роль, получает все привилегии этой роли.
Одному пользователю можно назначить несколько ролей. Пользователи могут применять назначенные роли в произвольных комбинациях с помощью выражения SET ROLE. Конечный объем привилегий — это комбинация всех привилегий всех примененных ролей. Если у пользователя имеются привилегии, присвоенные его аккаунту напрямую, они также прибавляются к привилегиям, присвоенным через роли.
Роли по умолчанию применяются при входе пользователя в систему. Установить роли по умолчанию можно с помощью выражений SET DEFAULT ROLE или ALTER USER.
Для отзыва роли используется выражение REVOKE.
Для удаления роли используется выражение DROP ROLE. Удаленная роль автоматически отзывается у всех пользователей, которым была назначена.
Примеры
CREATE ROLE accountant;
GRANT SELECT ON db.* TO accountant;
Такая последовательность запросов создаст роль accountant
, у которой есть привилегия на чтение из базы данных accounting
.
Назначить роль accountant
аккаунту mira
:
GRANT accountant TO mira;
После назначения роли пользователь может ее применить и выполнять разрешенные ей запросы. Например:
SET ROLE accountant;
SELECT * FROM db.*;