Запрет удаления хранимых процедур
От: Falic www.falicsoft.narod.ru
Дата: 18.10.05 09:23
Оценка:
А кто знает как быстро поставить запрет на удаление всех хранимых процедур в MSSQLServer 2000 для роли MyRole, а то с помощью REVOKE я заколебусь перечислять все процедуры (их более 1000)
Спасибо.
Re: Запрет удаления хранимых процедур
От: yoriсk.kiev.ua  
Дата: 18.10.05 09:49
Оценка:
Здравствуйте, Falic, Вы писали:

F>А кто знает как быстро поставить запрет на удаление всех хранимых процедур в MSSQLServer 2000 для роли MyRole, а то с помощью REVOKE я заколебусь перечислять все процедуры (их более 1000)



А чего их перечислять-то?

SELECT name FROM sysobjects WHERE xtype = 'p'
Re: Запрет удаления хранимых процедур
От: pkarklin  
Дата: 18.10.05 10:01
Оценка:
Здравствуйте, Falic, Вы писали:

F>А кто знает как быстро поставить запрет на удаление всех хранимых процедур в MSSQLServer 2000 для роли MyRole, а то с помощью REVOKE я заколебусь перечислять все процедуры (их более 1000)

F>Спасибо.

Не существует консрукции DENY\REVOKE DROP PROC ...DROPнуть объект может или его владелец или dbo или член роли db_ddladmin. Проверяйте, не входят ли Ваши пользователи в однгу из этих ролей, даже опосредственно, например, через вхождений учетной записи в локальную группу администраторов через логин BUILIN\Administrators, который является сисадмином.
Re[2]: Запрет удаления хранимых процедур
От: Falic www.falicsoft.narod.ru
Дата: 18.10.05 10:03
Оценка:
Здравствуйте, yoriсk.kiev.ua, Вы писали:

YKU>А чего их перечислять-то?


YKU>
YKU>SELECT name FROM sysobjects WHERE xtype = 'p'
YKU>


а у меня не получается на
REVOKE DROP ON spProba TO user
DENY DROP ON spProba TO user
пишет
Server: Msg 165, Level 16, State 10, Line 1
Privilege DROP <object> may not be granted or revoked.
Server: Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'ON'.
Re: Запрет удаления хранимых процедур
От: Falic www.falicsoft.narod.ru
Дата: 18.10.05 10:17
Оценка:
Может я не так вопрос поставил, вообщеи мне надо чтобы роль MyRole могла только добавлять и изменять объекты (таблицы, процедуры и т.п.), но не могла их удалять. Удаление происходит под другой учетной записью. Как это сделать?
Re[2]: Запрет удаления хранимых процедур
От: pkarklin  
Дата: 18.10.05 10:34
Оценка:
Здравствуйте, Falic, Вы писали:

F>Может я не так вопрос поставил, вообщеи мне надо чтобы роль MyRole могла только добавлять и изменять объекты (таблицы, процедуры и т.п.), но не могла их удалять. Удаление происходит под другой учетной записью. Как это сделать?


Никак! Ибо владелец объекта имеет полные права на него.
Re: Запрет удаления хранимых процедур
От: Falic www.falicsoft.narod.ru
Дата: 18.10.05 11:17
Оценка:
Хорошо, раз все так запущено, зайдем с другой стороны. Можно ли как-нитиь отследить какой юзверь какой объект создал, удалил, изменил. Лог можно какой-нить вести в разрезе пользователей?
Re[2]: Запрет удаления хранимых процедур
От: Satrapp Россия  
Дата: 18.10.05 12:15
Оценка:
Здравствуйте, Falic, Вы писали:

F>Хорошо, раз все так запущено, зайдем с другой стороны. Можно ли как-нитиь отследить какой юзверь какой объект создал, удалил, изменил. Лог можно какой-нить вести в разрезе пользователей?


1) Profiler
2) sp_trace_create
sp_trace_setfilter
sp_trace_generateevent
sp_trace_setstatus
sp_trace_setevent
Играет Deep Purple — Silver Tongue...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.