CREATE DATABASE AUDIT SPECIFICATION (Transact-SQL)
Tworzy bazę danych inspekcji specyfikacji obiektu using SQL Server Inspekcja funkcji. Aby uzyskać więcej informacji zobaczUnderstanding SQL Server Audit.
CREATE DATABASE AUDIT SPECIFICATION audit_specification_name
{
FOR SERVER AUDIT audit_name
[ { ADD ( { <audit_action_specification> | audit_action_group_name } )
} [, ...n] ]
[ WITH ( STATE = { ON | OFF } ) ]
}
[ ; ]
<audit_action_specification>::=
{
action [ ,...n ]ON [ class :: ] securable BY principal [ ,...n ]
}
Argumenty
audit_specification_name
To nazwa specyfikacji inspekcji.audit_name
Jest nazwą inspekcji, do których zastosowano tę specyfikację.audit_action_specification
Znajduje się specyfikacja działań dotyczących securables przez głównych, które powinny być rejestrowane w inspekcji.action
Jest nazwą jednej lub wielu akcji występowaniu zdarzeń objętych poziom bazy danych.Aby uzyskać listę akcji inspekcji Zobacz SQL Server Audit Action Groups and Actions.audit_action_group_name
Jest nazwą jednej lub kilku grup akcji występowaniu zdarzeń objętych poziom bazy danych.Aby wyświetlić listę grup akcja inspekcji Zobacz SQL Server Audit Action Groups and Actions.class
Jest nazwą klasy (jeśli dotyczy) na zabezpieczany.securable
Czy w tabela, widoku lub inne zabezpieczany obiektu w bazie danych, na którym należy zastosować akcja kontroli lub audytu grupy akcja.Aby uzyskać więcej informacji zobaczSecurables.principal
Jest to nazwa SQL Server główna, na którym należy zastosować akcja kontroli lub audytu grupy akcja. Aby uzyskać więcej informacji zobaczPrincipals (Database Engine).WITH ( STATE**=** {W | WYŁĄCZONA} )
Włącza lub wyłącza inspekcji z gromadzenia rekordów dla tej specyfikacji inspekcji.
Remarks
Specyfikacje inspekcji bazy danych są-zabezpieczanych obiektów, które znajdują się w danej bazie danych.Podczas tworzenia specyfikacji inspekcji do bazy danych jest w stanie wyłączonym.
Aby uzyskać informacje o bazie danych inspekcji specyfikacji w SQL Server inspekcji, należy użyć sys.database_ audit_specifications Służy do wyświetlania katalogu.
Podczas tworzenia lub modyfikowania specyfikację inspekcji bazy danych w bazie danych użytkownika, nie należy umieszczać akcje inspekcji obiektów zakres serwera, takie jak widoki systemu.Jeśli dołączono obiektów o zakresie serwerów, inspekcji zostanie utworzony.Jednak obiekty o zakresie serwer nie jest uwzględniana, a błędy nie zostaną zwrócone.Aby przeprowadzić inspekcję zakres serwera obiektów, należy użyć specyfikację inspekcji bazy danych w głównej bazie danych.
Uprawnienia
Użytkownicy mający ALTER ANY śladu bazy danychuprawnienia można utworzyć specyfikacje inspekcji bazy danych i powiązać żadnych inspekcji.
Po utworzeniu specyfikację inspekcji bazy danych mogą być przeglądane przez głównych na serwerze kontroliZMIENIAĆ ŻADNYCH INSPEKCJI BAZY DANYCHuprawnienia lub konto sysadmin.
Przykłady
Poniższy przykład tworzy inspekcji serwera, zwany Payrole_Security_Audit a następnie wywoływana specyfikację inspekcji bazy danych Payrole_Security_Audit które inspekcji SELECT i INSERT deklaracje dbo Użytkownik, aby HumanResources.EmployeePayHistory Tabela w AdventureWorks Baza danych.
USE master ;
GO
-- Create the server audit.
CREATE SERVER AUDIT Payrole_Security_Audit
TO FILE ( FILEPATH =
'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA' ) ;
GO
-- Enable the server audit.
ALTER SERVER AUDIT Payrole_Security_Audit
WITH (STATE = ON) ;
GO
-- Move to the target database.
USE AdventureWorks ;
GO
-- Create the database audit specification.
CREATE DATABASE AUDIT SPECIFICATION Audit_Pay_Tables
FOR SERVER AUDIT Payrole_Security_Audit
ADD (SELECT , INSERT
ON HumanResources.EmployeePayHistory BY dbo )
WITH (STATE = ON) ;
GO
See Also