БД Firebird меня разочаровали - нет возможности настроить запрет на подключение к БД для совершенно левых (хотя и RDB$ADMIN) пользователей
Зато есть возможность обрабатывать триггер подключения к БД - bi_connect
В нем достаточно проверить логин и/или роль пользователя и в случае если доступ закрыт - выкинуть ошибку
Подробный сценарий:
1. Приконнектиться через IBExpert к обрабатываемой БД под SYSDBA обязательно!
2. Нажать F12
3. Вставить код:
execute block(username varchar(255) = :username) AS begin execute statement('CREATE EXCEPTION access_forbidden ''No access for your username =)'''); execute statement('CREATE OR ALTER trigger bi_connect active on connect position 0 as begin if (user <> ''SYSDBA'' and user <> ''' || :username || ''') then exception access_forbidden; end'); end
4. Нажать F9
5. Ввести логин, которому нужно разрешить коннект к БД
6. Повторно нажать F9
7. Нажать CTRL+ALT+C подтвердив изменения
8. Проверить подключение к БД под SYSDBA, указанным пользователем и совершенно левым пользователем
P.S.: В случае, если у вас нет IBExpert - выполните код пункта 3 из консоли, или как вы привыкли )
Комментариев нет:
Отправить комментарий
Можете оставить свой комментарий