Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
Шрифт:
Любой идентифицированный пользователь может запустить gsec, но только пользователь SYSDBA может изменять сведения о пользователе, хранящиеся в базе данных безопасности. Требуются имя пользователя и пароль, независимо от того, видимы ли из командной строки переменные окружения ISC_USER и ISC_PASSWORD. В POSIX, если вы подключились как root, вы можете вызывать gsec без ввода параметров -user и -password.
Запуск интерактивной сессии gsec
В командной строке в каталоге Firebird /bin введите следующее. Для POSIX:
./gsec -user sysdba -password masterkey
Для Windows:
gsec -user sysdba -password masterkey
Подсказка командной строки изменится на GSEO, указывающую, что вы запустили gsec в интерактивном режиме.
Для завершения интерактивной сессии введите QUIT.
SYSDBA может использовать gsec на клиентской машине для управления идентификацией пользователей на удаленном сервере. Синтаксис вызова в этом случае несколько отличается: он требует переключателя -database, за которым следует полный сетевой путь к базе данных безопасности. Например (это одна команда), здесь показывается, как клиент POSIX обращается к серверу Windows в версии 1.5:
./gsec -database hotchicken:с:\Program Files\Firebird\Firebird_1_5\security. fdb
– user sysdba -password masterkey
Следующий пример показывает обращение клиента Windows к серверу POSIX в версии 1.0.x:
gsec -database coolduck:/opt/firebird/isc4.gdb
– user sysdba -password masterkey
Командами интерактивной утилиты gsec являются отображение, добавление, модификация, удаление, помощь и выход. Они не чувствительны к регистру.
* add, modify и delete используются для добавления и удаления пользователей и для изменения паролей. Они требуют в качестве параметра имя пользователя (username) вместе с соответствующими переключателями и аргументами.
* display без имени пользователя отображает список всех пользователей. Пароли не показываются. Эта команда также может получать имя пользователя. В этом случае отображаются подробности этого пользователя.
* help или его алиас ? отображает текст помощи для утилиты.
* quit завершает gsec и закрывает командную строку.
В табл. 34.1 показаны столбцы таблицы USERS вместе с соответствующими переключателями gsec. Требуемыми полями при использовании gsec являются только
USER NAME и PASSWD.
Таблица 34.1. Столбцы таблицы USERS и режимы gsec
Столбец | Описание | Режим gsec | Аргумент |
USER_NAME | Имя пользователя, распознаваемое идентификацией пользователя на сервере, gsec требует его в качестве параметра для интерактивных команд добавления, изменения и удаления и для соответствующих переключателей командной строки -a[dd], mo[dify] и-d[elete] | username параметр | |
SYS_USER_NAME | Не используется | ||
GROUP_NAME | Не используется | ||
UID | Для некоторых платформ POSIX идентификатор пользователя UNIX. Не требуется | – uid | integer |
GID | Для некоторых платформ POSIX идентификатор группы UNIX. Не требуется | – gid | integer |
PASSWD | Текущий пароль для этого пользователя. Требуется | – pw | string(10) |
PRIVILEGE | Не используется | ||
COMMENT | Не | ||
FIRST_NAME | Имя пользователя. Не требуется | – fname | string(31) |
MIDDLE_NAME | Второе имя пользователя. Не требуется | – mname | string(31) |
LAST_NAME | Фамилия пользователя. Не требуется | – Iname | string(31) |
FULL_NAME | Нет | ||
Также при запуске gsec с удаленной рабочей станции: | |||
Сервер и путь к файлу базы данных безопасности | – database | Путь и имя файла |
Отображает основные столбцы таблицы USERS базы данных безопасности. Пароли никогда не показываются.
user_name uid gid full name SYSDBA
MICKEY 123 345 Mickey Mouse
D_DUCK 124 345 Donald Duck
JULIUS 125 345 J. Caesar
Для отображения той же информации из одной строки таблицы USERS введите:
GSEC> display username
Например:
GSEC> display julius user_name uid gid full name
JULIUS 125 345 J. Caesar
Добавляет пользователя в таблицу USERS:
a[dd] имя-пользователя -pw пароль [другие переключатели]
Здесь имя-пользователя- уникальное новое имя пользователя, а пароль- пароль, связанный с этим пользователем.
! ! !
ПРИМЕЧАНИЕ. Переключателем для нового пароля при добавлении пользователя или при изменении его пароля является -pw. Не путайте его с сокращенной формой переключателя пароля при соединении SYSDBA, который задается в виде -ра.
. ! .
Пример:
GSEO add mmouse -pw Veritas
Для добавления пользователя hpotter с именем Harry Potter и паролем noMuggle введите:
GSEC> add hpotter -fname Harry -lname Potter -pw noMuggle
Для проверки новой записи:
GSEC> display hpotter
user_name uid gid full name
HPOTTER Harry Potter
! ! !
ПРИМЕЧАНИЕ. Если вы попытаетесь ввести недопустимые символы в строке пароля, gsec просто завершит работу без выдачи сообщения.
. ! .
Используется для изменения (редактирования) значения столбца в существующей записи USERS. Задайте имя пользователя, для которого требуются изменения, затем укажите один или более переключателей, определяющие изменяемые элементы, и новое значение для каждого из них.
Например, для задания идентификатора пользователя 25 для пользователя mickey, изменения имени (first name) на Michael и изменения пароля на icecream введите следующие переключатели:
GSEC> modify mickey -uid 25 -fname Michael -pw icecream
Вы не можете изменить имя пользователя. Удалите старого пользователя и добавьте нового.
Удаляет пользователя с указанным именем из таблицы USERS. Команда не получает никаких аргументов и переключателей.
de[lete] имя-пользователя Пример:
GSEO delete mickey
Вы можете использовать команду display, чтобы убедиться в удалении записи.