Страница 1 из 1
Аннулирование прав при изменении ХП
Добавлено: 30 окт 2007, 15:36
Naidenov
System Info: FB CS 1.5.2
Вопррос:
1. Почему после (alter) procedure/trigger имеющиеся права сбрасываются?
2. Можно ли автоматически их восстанавливать?
3. При модификации таблиц/просмотров ситуация аналогичная?
Добавлено: 31 окт 2007, 13:43
Naidenov
Мисье, же не ма шпа си жур! Не проходите мимо! Помогите страждущему!!!
На мудрость и милосердие вашу уповаю!
Добавлено: 31 окт 2007, 13:48
Attid
а почему 1.5.2 а не 1.5.4 ?
там ошибочки были . . .
Re: Аннулирование прав при изменении ХП
Добавлено: 31 окт 2007, 15:42
dimitr
Naidenov писал(а):Почему после (alter) procedure/trigger имеющиеся права сбрасываются?
на этот вопрос затруднительно ответить, т.к. права не сбрасываются
Re: Аннулирование прав при изменении ХП
Добавлено: 31 окт 2007, 16:18
WildSery
Naidenov писал(а):1. Почему после (alter) procedure/trigger имеющиеся права сбрасываются?
Возможно, drop / create?
Naidenov писал(а):3. При модификации таблиц/просмотров ситуация аналогичная?
ALTER VIEW пока не бывает. Только пересоздание.
Re: Аннулирование прав при изменении ХП
Добавлено: 31 окт 2007, 16:38
Naidenov
dimitr писал(а):на этот вопрос затруднительно ответить, т.к. права не сбрасываются
Честно признаться, самолично не проверял...
Поверил на слово kdv (вот здесь
http://www.ibase.ru/devinfo/sqlroles.htm его примечание именно об этом и повествует. см главу "Назначение привилегий на выполнение хранимых процедур" 2-ое примечание по счету)
Re: Аннулирование прав при изменении ХП
Добавлено: 31 окт 2007, 16:42
Naidenov
WildSery писал(а):Возможно, drop / create?
Нет.
WildSery писал(а):ALTER VIEW пока не бывает. Только пересоздание.
Пардон. Упустил этот ньюанс
Re: Аннулирование прав при изменении ХП
Добавлено: 01 ноя 2007, 12:12
dimitr
Naidenov писал(а):Честно признаться, самолично не проверял... :roll: Поверил на слово kdv
неправ он там
Добавлено: 01 ноя 2007, 12:22
kdv
смотря в чем я неправ.
по идее, при изменении процедуры (например процедуры A), должны оставаться права выданные на нее, но сбрасываться права выданные ей.
Почему логично убивать права, выданные процедурЕ, при ее alter:
1. в процедуре может быть удалено использование объектов, на которые ей выданы права.
2. в процедуре могут появиться объекты, на которые у нее нет прав
3. в процедуре может измениться доступ к объектам, которые использовались ранее.
Поскольку процедуры в среднем состоят не из 5-7 строк, а больше, то оставлять права при alter - это значит оставлять тонны лишних прав, особенно во время разработки, т.е. частой переделки процедур.
Логика моих рассуждений понятна?
Возможно, когда я переводил статью, с текущей версией ib/fb так и происходило, т.е. права сбрасывались.
Добавлено: 01 ноя 2007, 15:25
Dimitry Sibiryakov
С точностью до наоборот: права, выданные процедурам, триггерам и прочему барахлу только недавно начали удаляться при их дропе. В полуторке, ЕМНИП, а то и позже.
Добавлено: 02 ноя 2007, 18:05
Naidenov
kdv писал(а):Логика моих рассуждений понятна?
Понятна. Спасибо.