loader image

[SQL server]DB監査

まずは SQL Server 上にDBとAuditを作成する必要がある

Audit作成箇所
DB connect → security → Audits →新規作成

USE ”DB name”;
GO
CREATE DATABASE AUDIT SPECIFICATION "DB name"
FOR SERVER AUDIT "Audit name"
ADD (SELECT, UPDATE, INSERT, DELETE, EXECUTE ON Schema::Sales BY dbo),
ADD (BATCH_STARTED_GROUP),
ADD (DATABASE_PERMISSION_CHANGE_GROUP),
ADD (SCHEMA_OBJECT_CHANGE_GROUP),
ADD (SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP)
WITH (STATE = ON)
GO
アクショングループ名説明
SELECTSELECT が実行されるたびに発生します。
UPDATEUPDATE が実行されるたびに発生します。
INSERTINSERT が実行されるたびに発生します。
DELETEDELETE が実行されるたびに発生します。
EXECUTEEXECUTE が実行されるたびに発生します。
ON Schema::SalesON class::securable の形式で、セキュリティ保護可能なリソースのクラス名、および監査アクションまたは監査アクショングループを適用するデータベース内のテーブル、ビュー、またはその他のセキュリティ保護可能なオブジェクトを指定できます。この例では、Sales スキーマ全体を選択していることになります。
BY dboBY principal の形式で、監査アクション、または監査アクショングループを適用するデータベースプリンシパルの名前を指定できます。この例では、dbo データベースプリンシパルを指定していることになります。データベースプリンシパル全体を監査したい場合は、public を使用します。
BATCH_STARTED_GROUPバッチテキスト、ストアドプロシージャ、またはトランザクション管理操作の実行が開始されるたびに発生します。これは、実行前に発生し、クライアントから送信されたバッチまたはストアド プロシージャのテキスト全体を監査します。
DATABASE_PERMISSION_CHANGE_GROUPSQL Server の任意のユーザーによって、ステートメント権限に対して GRANT、REVOKE、または DENY が実行されるたびに、データベースに対する権限の許可などのデータベース限定のイベントに対して発生します。
SCHEMA_OBJECT_CHANGE_GROUPスキーマに対して CREATE、ALTER、または DROP の各操作が実行されたときに発生します。
SCHEMA_OBJECT_PERMISSION_CHANGE_GROUPスキーマオブジェクトに対して GRANT、DENY、または REVOKE が実行されるたびに発生します。

コメント

タイトルとURLをコピーしました