FirebirdSQL logo
 БезопасностьУправление пользователями 
Включение и выключение AUTO ADMIN MAPPING в базе данных безопасности

Оператором ALTER ROLE RDB$ADMIN невозможно включить или выключить флаг AUTO ADMIN MAPPING в базе данных пользователей.Однако вы можете создать глобальное отображение предопределённой группы DOMAIN_ANY_RID_ADMINS на роль RDB$ADMIN следующим образом:

CREATE GLOBAL MAPPING WIN_ADMINS
USING PLUGIN WIN_SSPI
FROM Predefined_Group
DOMAIN_ANY_RID_ADMINS
TO ROLE RDB$ADMIN;

Кроме того для включения AUTO ADMIN MAPPING в базе данных пользователей можно использовать утилиту командной строки gsec:

gsec -mapping set

gsec -mapping drop
Note

В зависимости от административного статуса текущего пользователя для утилиты gsec может потребоваться больше параметров, таких как -user и -pass, или -trusted.

Только SYSDBA может включить AUTO ADMIN MAPPING, если он выключен, но любой администратор может выключить его.

При выключении AUTO ADMIN MAPPING пользователь отключает сам механизм, который предоставлял ему доступ и, таким образом, он не сможет обратно включить AUTO ADMIN MAPPING.Даже в интерактивном gsec сеансе новая установка флага сразу вступает в силу.

Администраторы

Администратор — это пользователь, которые имеет достаточные права для чтения и записи, создания, изменения и удаления любого объекта в базе данных.В таблице показано, как привилегии “Суперпользователя” включены в различных контекстах безопасности Firebird.

Table 1. Администраторы
Пользователь Роль RDB$ADMIN Замечание

SYSDBA

Автоматически

Существует автоматически на уровне сервера. Имеет полныепривилегии ко всем объектам во всех базах данных. Можетсоздавать, изменять и удалять пользователей, но не имеет прямогодоступа к базе данных безопасности.

Пользователь root в POSIX

Автоматически

Так же как SYSDBA. Только в Firebird Embedded.

Суперпользователь в POSIX

Автоматически

Так же как SYSDBA. Только в Firebird Embedded.

Владелец базы данных

Автоматически

Так же как SYSDBA, но только в этой базе данных.

Администраторы Windows

Устанавливается в CURRENT_ROLE, если вход успешен

Так же как SYSDBA, если соблюдены следующие условия:

  • В файле конфигурации firebird.conf (параметр AuthServer) в списке плагинов присутствовал провайдер Win_Sspi.Кроме того, этот плагин должен присутствовать и в списке плагинов клиентской стороны (параметр AuthClient).

  • Во всех базах данных, где требуется полномочия суперпользователя должен быть включен AUTO ADMIN MAPPING или создано отображение предопределенной группы DOMAIN_ANY_RID_ADMINS на роль RDB$ADMIN.

  • При входе не указана роль.

Обычный пользователь

Должна быть предварительно выдана и должна быть указана при входе

Так же как SYSDBA, но только в тех базах данных, где эта роль предоставлена.

Пользователь POSIX

Должна быть предварительно выдана и должна быть указана при входе

Та кже как SYSDBA, но только в тех базах данных, где эта роль предоставлена.Только в Firebird Embedded.

Пользователь Windows

Должна быть предварительно выдана и должна быть указана при входе

Так же как SYSDBA, но только в тех базах данных, где эта роль предоставлена.Доступно только если в файле конфигурации firebird.conf(параметр AuthServer) в списке плагиновприсутствовал провайдер Win_Sspi. Кроме того, этот плагин долженприсутствовать и в списке плагинов клиентской стороны (параметр AuthClient).