потеря прав после backup/restore
Добавлено: 07 дек 2013, 16:45
День добрый!
Помогите пожалуйста разобраться с небольшой проблемой с правами, которые
пропадают после backup/restore.
Ситуация: есть бд FirebirdSS-1.0.3.972-0, которая активно используется порядка
10 лет. бд непрерывно развивается, что-то удаляется, что-то добавляется.
После очердного backup/restore появился баг: исчезли права select на одну из
таблиц у всех ролей. Причем, если просматривать права роли через IBExpert, то
права select на месте, а по факту прочитать из таблицы ничего не получается -
ошибка нет прав. Помогает исправить ситуацию только единственная последовательность
действий: revoke/grant права select у роли для таблицы. Ничего другое не помогает:
просто grant не помогает, заново дать grant всей роли пользователю не помогает.
Немного позже появилась похожая проблема, только действующие лица уже
не роль и таблица, а процедура (назовем ее public) и другая процедура (внутренняя).
Public процедуре сделан autogrant, и она используют внутреннюю процедуру. Пользователи
используют public и в один прекрасный день после backup/resore не смогли ее вызывать,
из-за отсутствия прав на внутреннюю процедуру. Помог тот же revoke/grant внутренняя to/from
public.
Что это? Куда копать?
Спасибо.
P.S. сегодня решил попробовать сделать копию роли, у которой были потери прав.
После backup/restore получил теже самые грабли.
Помогите пожалуйста разобраться с небольшой проблемой с правами, которые
пропадают после backup/restore.
Ситуация: есть бд FirebirdSS-1.0.3.972-0, которая активно используется порядка
10 лет. бд непрерывно развивается, что-то удаляется, что-то добавляется.
После очердного backup/restore появился баг: исчезли права select на одну из
таблиц у всех ролей. Причем, если просматривать права роли через IBExpert, то
права select на месте, а по факту прочитать из таблицы ничего не получается -
ошибка нет прав. Помогает исправить ситуацию только единственная последовательность
действий: revoke/grant права select у роли для таблицы. Ничего другое не помогает:
просто grant не помогает, заново дать grant всей роли пользователю не помогает.
Немного позже появилась похожая проблема, только действующие лица уже
не роль и таблица, а процедура (назовем ее public) и другая процедура (внутренняя).
Public процедуре сделан autogrant, и она используют внутреннюю процедуру. Пользователи
используют public и в один прекрасный день после backup/resore не смогли ее вызывать,
из-за отсутствия прав на внутреннюю процедуру. Помог тот же revoke/grant внутренняя to/from
public.
Что это? Куда копать?
Спасибо.
P.S. сегодня решил попробовать сделать копию роли, у которой были потери прав.
После backup/restore получил теже самые грабли.