Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 бардак с Audit Database Object Management Event Class  [new]
o-o
Guest
товарищи, а не копал ли кто для себя Audit Database Object Management Event?
сразу скажу, зачем мне надо было (есть идеи, как по-дугому организовать?)
у меня все хорошо логируется в базе DDL-триггером.
НО: злоумышленник (с правами. это сисадмин. но админ админу рознь, хочу узнать, кто именно)
повадился гадить, отключая DDL-триггер.
отловить отключение через disable trigger <...> on database может только аудит,
но даже чтобы его повесить на базу, надо сперва на сервер,
а это -- засветить права, т.к. в ГУИ видно.
а вот чего не видно, так это event notifications.
и если логировать именно Audit Database Object Management Event,
то отлично ловится disable trigger.

уже даже была идея заменить DDL-триггер на event notifications.
только вот этот Audit Database Object Management Event -- очень странный.
не соответствует описанию или как еще понять:
The Audit Database Object Management event class occurs
when a CREATE, ALTER, or DROP statement is executed on database objects, such as schemas.
на деле он логирует:
для DDL-триггера -- все, включая ALTER и DROP.
для таблиц и процедур -- только CREATE.
и это еще не все, для них же (таблиц и процедур) в событие CREATE валится EventSubClass = 2, т.е. ALTER
+

<EVENT_INSTANCE>
  <EventType>AUDIT_DATABASE_OBJECT_MANAGEMENT_EVENT</EventType>
  <PostTime>2015-07-21T14:53:14.900</PostTime>
  <SPID>54</SPID>
  <TextData>create proc dbo.sp_1 as 
select GETDATE() as dt;</TextData>
  <DatabaseID>19</DatabaseID>
  <TransactionID>246307</TransactionID>
  <LineNumber />
  <NTUserName>EE25989</NTUserName>
  <NTDomainName>HD03</NTDomainName>
  <HostName>IS1P38HJ</HostName>
  <ApplicationName>Microsoft SQL Server Management Studio - Query</ApplicationName>
  <LoginName>HD03\EE25989</LoginName>
  <StartTime>2015-07-21T14:53:14.900</StartTime>
  ***************<EventSubClass>2</EventSubClass>*************
  <Success>1</Success>
  <ServerName>IS1P38HJ</ServerName>
  <ObjectType>17235</ObjectType>
  <NestLevel>0</NestLevel>
  <ObjectName>dbo</ObjectName>
  <DatabaseName>analisi</DatabaseName>
  <OwnerName>dbo</OwnerName>
  <DBUserName>dbo</DBUserName>
  <LoginSid>AQUAAAAAAAUVAAAAFX7cpHzuPUvP93F+xdkEAA==</LoginSid>
  <RequestID>0</RequestID>
  <XactSequence>231928233990</XactSequence>
  <EventSequence>442</EventSequence>
  <IsSystem />
  <SessionLoginName>HD03\EE25989</SessionLoginName>
</EVENT_INSTANCE>


просьба к занющим, разъясните плиз.
с event notifications пока особой дружбы нет, в процессе изучения
21 июл 15, 17:59    [17918118]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить