Назначение
Создание учётной записи пользователя Firebird.
Синтаксис
CREATE USER username
PASSWORD 'password'
[<user_option> [<user_option> ...]]
[TAGS ( <tag> [, <tag> ...] )]
<user_option> ::=
FIRSTNAME 'firstname'
| MIDDLENAME 'middlename'
| LASTNAME 'lastname'
| {ACTIVE | INACTIVE}
| USING PLUGIN pluginname
| GRANT ADMIN ROLE
<tag> ::=
tagname = 'string_value'
Table 1. Параметры оператора CREATE USER
Параметр |
Описание |
username |
Имя пользователя.Максимальная длина 63 символов. |
[password |
Пароль пользователя.Чувствительно к регистру. |
firstname |
Вспомогательная информация: имя пользователя.Максимальная длина 32 символа. |
middlename |
Вспомогательная информация: "второе имя" (отчество, "имя отца") пользователя.Максимальная длина 32 символа. |
lastname |
Вспомогательная информация: фамилия пользователя.Максимальная длина 32 символа. |
pluginname |
Имя плагина управления пользователями, в котором необходимо создать нового пользователя. |
tagname |
Имя пользовательского атрибута.Максимальная длина 63 символа.Имя атрибута должно подчиняться правилам наименования SQL идентификаторов. |
string_value |
Значение пользовательского атрибута.Максимальная длина 255 символов. |
Оператор CREATE USER
создаёт учётную запись пользователя Firebird.Пользователь должен отсутствовать в текущей базе данных безопасности Firebird иначе будет выдано соответствующее сообщение об ошибке.
Important
|
Начиная с Firebird 3.0 имена пользователей подчиняются общему правилу наименования идентификаторов объектов метаданных.Таким образом, пользователь с именем "Alex" и с именем "ALEX" будут разными пользователями.
CREATE USER ALEX PASSWORD 'bz23ds';
CREATE USER Alex PASSWORD 'bz23ds';
CREATE USER "ALEX" PASSWORD 'bz23ds';
CREATE USER "Alex" PASSWORD 'bz23ds';
|
Предложение PASSWORD
задаёт пароль пользователя.Максимальная длина пароля зависит от того какой плагин управления пользователями задействован (параметр UserManager
).Для плагина SRP эффективная длина пароля ограничена 20 байтами *. Плагин Legacy_UserManager максимальная длина пароля равна 8 байт.
Note
|
*Почему эффективная длина пароля ограничена 20 символами?
На длину пароля нет ограничения в 20 байт и он может быть использован.Хеши различных паролей, длина которых более 20 байт, тоже различны.Предел эффективности наступает из-за ограниченной длины хеша в SHA1 равном 20 байт или 160 бит.Рано или поздно найдётся более короткий пароль с тем же хешем с помощью атаки Brute Force.Именно поэтому часто говорят, что эффективная длина пароля для алгоритма SHA1 составляет 20 байт.
|
Необязательные предложения FIRSTNAME
, MIDDLENAME
и LASTNAME
задают дополнительные атрибуты пользователя, такие как имя пользователя (имя человека), отчество и фамилия соответственно.
Если при создании учётной записи будет указан атрибут INACTIVE
, то пользователь будет создан в “неактивном состоянии”, т.е.подключиться с его учётной записью будет невозможно.При указании атрибута ACTIVE
пользователь будет создан в активном состоянии.По умолчанию пользователь создаётся активным.Данная возможность доступна только при использовании Srp в качестве менеджера пользователей.
Если указана опция GRANT ADMIN ROLE
, то новая учётная запись пользователя создаётся с правами роли RDB$ADMIN
в текущей базе данных безопасности.Это позволяет вновь созданному пользователю управлять учётными записями пользователей, но не даёт ему специальных полномочий в обычных базах данных.
Необязательное предложение USING PLUGIN
позволяет явно указывать какой плагин управления пользователями будет использован.По умолчанию используется тот плагин, который был указан первым в списке параметра UserManager
в файле конфигурации firebird.conf.Допустимыми являются только значения, перечисленные в параметре UserManager
.
Important
|
Важно
Учтите что одноименные пользователи, созданные с помощью разных плагинов управления пользователями — это разные пользователи.Поэтому пользователя созданного с помощью одного плагина управления пользователями можно удалить или изменить, указав только тот же самый плагин.
|
Кроме того вы можете задать неограниченное количество пользовательских атрибутов с помощью необязательного предложения TAGS
.Данная возможность доступна только при использовании Srp в качестве менеджера пользователей.