SQL Server 監査レコード

適用対象:SQL Server

SQL Server 監査機能を使用すると、サーバー レベルおよびデータベース レベルのイベントのグループおよびイベントを監査することができます。 詳細については、「SQL Server Audit (データベース エンジン)」を参照してください。 SQL Server :

監査は、監査 対象に記録される 0 個以上の監査アクション項目で構成されます。 監査ターゲットには、バイナリ ファイル、Windows アプリケーション イベント ログ、または Windows セキュリティ イベント ログを使用できます。 ターゲットに送信されるレコードに含まれる可能性がある要素を次の表に示します。

列名 説明 Type 常に使用可能かどうか
event_time 監査可能なアクションが発生した日付/時刻。 datetime2 はい
sequence_no 大きすぎて監査の書き込みバッファーに収まらなかった 1 つの監査レコード内のレコードの順序を追跡します。 int はい
action_id アクションの ID

ヒント: action_id を述語として使用するには、文字列から数値に変換する必要があります。 詳細については、「 Filter SQL Server Audit on action_id / class_type predicate (action_id/class_type 述語での SQL Server 監査のフィルター選択)」を参照してください。
varchar (4) はい
succeeded 監査イベントをトリガーするアクションのアクセス許可のチェックが成功または失敗したかどうかを示します。 bit
- 1 = 成功、
0 = 失敗
はい
permission_bitmask 該当する場合、許可、拒否、または取り消されたアクセス許可を表示します。 bigint いいえ
is_column_permission 列レベル権限を示すフラグ。 bit
- 1 = True、
0 = False
いいえ
session_id イベントが発生したセッションの ID。 int はい
server_principal_id アクションが実行されるログイン コンテキストの ID。 int はい
database_principal_id アクションが実行されるデータベース ユーザー コンテキストの ID。 int いいえ
object_id 監査が発生したエンティティのプライマリ ID。 この ID には次が可能です。

サーバー オブジェクト

databases

データベース オブジェクト

スキーマ オブジェクト
int いいえ
target_server_principal_id 監査可能なアクションが適用されるサーバー プリンシパル。 int はい
target_database_principal_id 監査可能なアクションが適用されるデータベース プリンシパル。 int いいえ
class_type 監査が発生する監査可能なエンティティの種類。 varchar(2) はい
session_server_principal_name セッションのサーバー プリンシパル。 sysname はい
server_principal_name 現在のログイン。 sysname はい
server_principal_sid 現在のログイン SID。 varbinary はい
database_principal_name 現在のユーザー。 sysname いいえ
target_server_principal_name アクションの対象ログイン。 sysname いいえ
target_server_principal_sid 対象ログインの SID。 varbinary いいえ
target_database_principal_name アクションの対象ユーザー。 sysname いいえ
server_instance_name 監査が発生したサーバー インスタンスの名前。 標準の machine\instance の形式を使用します。 nvarchar(120) はい
database_name アクションが発生したデータベース コンテキスト。 sysname いいえ
schema_name アクションが発生したスキーマ コンテキスト。 sysname いいえ
object_name 監査が発生したエンティティの名前。 この名前には次が可能です。

サーバー オブジェクト

databases

データベース オブジェクト

スキーマ オブジェクト

Transact-SQL ステートメント (あれば)
sysname いいえ
statement TSQL ステートメント (あれば) nvarchar (4000) いいえ
additional_information XML として格納されるイベントに関する追加情報。 nvarchar (4000) いいえ

解説

アクションに該当しないために列の値が設定されない場合もあります。

SQL Server 監査は、監査レコードの文字フィールドに 4,000 文字のデータを格納します。 監査可能なアクションから返される additional_informationstatement の値が 4,000 文字を超えていた場合は、そのデータを記録するために、 sequence_no 列を使用して 1 つの監査アクションの監査レポートに複数のレコードが書き込まれます。 このプロセスは次のとおりです。

  • statement 列が 4,000 文字に分割されます。

  • SQL Server 監査は、監査レコードの最初の行として部分データを書き込みます。 他のすべてのフィールドは各行で複製されます。

  • sequence_no の値が増加されます。

  • すべてのデータが記録されるまでこのプロセスが繰り返されます。

このデータに接続するには、 sequence_no の値を使用して行を順番に読み取ります。アクションを識別するには、 event_Timeaction_id 、および session_id の各列を使用します。

CREATE SERVER AUDIT (Transact-SQL)

ALTER SERVER AUDIT (Transact-SQL)

DROP SERVER AUDIT (Transact-SQL)

CREATE SERVER AUDIT SPECIFICATION (Transact-SQL)

ALTER SERVER AUDIT SPECIFICATION (Transact-SQL)

DROP SERVER AUDIT SPECIFICATION (Transact-SQL)

CREATE DATABASE AUDIT SPECIFICATION (Transact-SQL)

ALTER DATABASE AUDIT SPECIFICATION (Transact-SQL)

DROP DATABASE AUDIT SPECIFICATION (Transact-SQL)

ALTER AUTHORIZATION (Transact-SQL)

sys.fn_get_audit_file (Transact-SQL)

sys.server_audits (Transact-SQL)

sys.server_file_audits (Transact-SQL)

sys.server_audit_specifications (Transact-SQL)

sys.server_audit_specification_details (Transact-SQL)

sys.database_audit_specifications (Transact-SQL)

sys.database_audit_specification_details (Transact-SQL)

sys.dm_server_audit_status (Transact-SQL)

sys.dm_audit_actions (Transact-SQL)

sys.dm_audit_class_type_map (Transact-SQL)