Страница 1 из 1

добавление прав через RDB$USER_PRIVILEGES

Добавлено: 04 апр 2013, 13:22
zigorzn
Добрый день.

Пользователь раздает сам себе права через вставку записи в RDB$USER_PRIVILEGES

INSERT INTO RDB$USER_PRIVILEGES
(RDB$USER, RDB$GRANTOR, RDB$PRIVILEGE, RDB$GRANT_OPTION, RDB$RELATION_NAME, RDB$FIELD_NAME, RDB$USER_TYPE, RDB$OBJECT_TYPE)
VALUES
(<пользователь>, <пользователь>, 'M', 1, 'RDB$ADMIN', NULL, 8, 13);

Подключается под этой ролью и начинает под этой ролью работать.
Самое страшное, что он может таким образом выдаваль права на любую роль включая 'RDB$ADMIN'.
Удалить эту запись он не может. Так этот "вредитель" и был пойман.

как устранить эту возможность? :?:

FB 2.5.1.26351 Win32

Re: добавление прав через RDB$USER_PRIVILEGES

Добавлено: 06 ноя 2014, 17:02
kdv
чтобы закрыть вопрос
баг зарегистрирован в трекере (если не ошибаюсь, то именно этот)
http://tracker.firebirdsql.org/browse/CORE-4341

Кроме того, в Firebird 3 прямая модификация таблиц RDB$ запрещена.