15.7.1.9 Заявление SET DEFAULT ROLE
SET DEFAULT ROLE
{NONE | ALL | role [, role ] ...}
TO user [, user ] ...
Для каждого user, указанного сразу после ключевого слова TO, это утверждение определяет, какие роли станут активными, когда пользователь подключается к серверу и проходит аутентификацию, или когда пользователь выполняет оператор SET ROLE
DEFAULT во время сеанса.
SET DEFAULT ROLE — это альтернативная синтаксическая конструкция для ALTER
USER ... DEFAULT ROLE (см. Раздел 15.7.1.1, «Заявление ALTER USER»). Однако ALTER USER может установить значение по умолчанию только для одного пользователя, тогда как SET DEFAULT
ROLE может установить значение по умолчанию для нескольких пользователей. С другой стороны, вы можете указать CURRENT_USER в качестве имени пользователя для оператора ALTER USER, тогда как вы не можете для SET
DEFAULT ROLE.
SET DEFAULT ROLE требует следующих привилегий:
Установка ролей по умолчанию для другого пользователя требует глобальной привилегии
CREATE USERили привилегииUPDATEдля системной таблицыmysql.default_roles.Установка ролей по умолчанию для себя не требует особых привилегий, если только роли, которые вы хотите установить по умолчанию, вам были предоставлены.
Каждое имя роли использует формат, описанный в Разделе 8.2.5, «Указание имён ролей». Например:
SET DEFAULT ROLE 'admin', 'developer' TO 'joe'@'10.0.0.1';
Часть имени роли, относящаяся к имени хоста, если опущена, по умолчанию равна '%'.
Клауза, следующая за ключевыми словами DEFAULT ROLE, допускает следующие значения:
NONE: Установить значение по умолчанию вNONE(без ролей).ALL: Установить значение по умолчанию во все роли, предоставленные учетной записи.: Установить значение по умолчанию в указанные роли, которые должны существовать и быть предоставлены учетной записи в момент выполненияrole[,role] ...SET DEFAULT ROLE.
SET DEFAULT ROLE и SET ROLE
DEFAULT — это разные операторы:
SET DEFAULT ROLEопределяет, какие роли учетной записи активировать по умолчанию в рамках сеансов учетной записи.SET ROLE DEFAULTустанавливает активные роли в текущем сеансе на роли по умолчанию текущей учетной записи.
Примеры использования ролей см. в Разделе 8.2.10, «Использование ролей».
© 2025 Oracle
Licensed under the GPLv2 License.