Netwrix Auditor for SQL Server
- Netwrix Auditorを実行し、Reports に移動します → 「SQL Server」を選択 → 「All SQL Server Logons」を選択 →「Subscribe」をクリックします。
- 受信者とフィルターを指定して、サブスクリプションを保存します。設定したスケジュールに従って、メールで受け取るか、指定した共有フォルダーに配信することができます。
レポート例:
詳しくはこちら:Netwrix Auditor for SQL Server
ネイティブ監査
- SQL Managements Studio を実行し、Transact-SQL で次のコードを実行してください:
CREATE DATABASE LogonAudit /* Creates db for storing audit data */
USE [LogonAudit]
CREATE TABLE LogonAuditing /* Creates table for logons inside db */
(
SessionId int,
LogonTime datetime,
HostName varchar(50),
ProgramName varchar(500),
LoginName varchar(50),
ClientHost varchar(50)
)
GO
CREATE TRIGGER [LogonAuditTrigger] /* Creates trigger for logons */
ON ALL SERVER
FOR LOGON
AS
BEGIN
DECLARE @LogonTriggerData xml,
@EventTime datetime,
@LoginName varchar(50),
@ClientHost varchar(50),
@LoginType varchar(50),
@HostName varchar(50),
@AppName varchar(500)
SET @LogonTriggerData = eventdata()
SET @EventTime = @LogonTriggerData.value('(/EVENT_INSTANCE/PostTime)[1]', 'datetime')
SET @LoginName = @LogonTriggerData.value('(/EVENT_INSTANCE/LoginName)[1]', 'varchar(50)')
SET @ClientHost = @LogonTriggerData.value('(/EVENT_INSTANCE/ClientHost)[1]', 'varchar(50)')
SET @HostName = HOST_NAME()
SET @AppName = APP_NAME()
INSERT INTO [LogonAudit].[dbo].[LogonAuditing]
(
SessionId,
LogonTime,
HostName,
ProgramName,
LoginName,
ClientHost
)
SELECT
@@spid,
@EventTime,
@HostName,
@AppName,
@LoginName,
@ClientHost
END
GO
- SQL Management Studio でログオンに関する収集情報を表示するには、次のスクリプトを実行してください:
SELECT *
FROM [LogonAudit].[dbo].[LogonAuditing]
You can save data to CSV format after that.
レポート例:
SQL Server のログオン トリガー作成を超えて、アクセスを制御する
誰かが SQL Server データベースに直接アクセスした場合、すぐにそれを把握する必要があります。アクセス権を得たデータベース管理者は、不正な操作を行うことができます。たとえば、事前に通知せずにテーブルを削除したり、トリガーを作成したりすることが可能です。ネイティブ ツールでは、SQL Server のログオン トリガーを作成してすべてのサーバーのアクセス イベントを監査し、その後は SQL Server Management Studio(SSMS)を使ってログオン イベントとトリガー実行を監視できます。しかし、Transact-SQL でトリガー コードを作成するのに相当な時間を費やし、そのうえで監査情報を注意深く読み解いて異常なアクセスを見つけるための手間を覚悟しておく必要があります。
Netwrix Auditor for SQL Server は、SQL Server の監査を有効にするために、SQL Server のログオン トリガーを含む DDL トリガーを作成する必要をなくします。このソリューションは、最初のログオン試行、その試行が行われた時刻と場所、誰が実行したのか、そして成功したのか失敗したのかを示すことで、各 SQL Server インスタンスに誰がアクセスしようとしたのかを広範囲に可視化するのに役立ちます。さらに、すぐに使える洞察に満ちたレポートと Google のような検索機能により、出現しつつある脅威をすばやく特定して追跡できます。加えて、このソリューションは、コスト効率の高い 2 層ストレージ(SQL database + file-based)にすべてのログを何年にもわたって保存し、いつでも簡単にアクセスできるようにします。
共有する