監査ログは、Data Security Center (DSC) によってキャプチャされたすべてのデータベース操作 — 誰が、いつ、何にアクセスし、何を行ったか — を記録します。監査ログを使用して、セキュリティイベントを調査し、不正アクセスや悪意のあるアクティビティを検出して、コンプライアンス要件を満たします。
前提条件
開始する前に、以下を確認してください。
監査するデータ資産に対して Log Audit 機能が有効になっていること。設定手順については、「監査モードの設定と有効化」をご参照ください。
ログ保存場所
データ監査モードを有効にすると、DSC は次の構造を使用して Simple Log Service (SLS) にログを保存します。
プロジェクト:
sddp-${uid}-${regionId}。ここで、${uid}はご利用の Alibaba Cloud アカウント ID であり、${regionId}はデータベースが配置されているリージョンです。Logstore: データベースタイプによって決定されます。詳細は以下の表のとおりです。
| カテゴリ | データベース | Logstore |
|---|---|---|
| リレーショナルデータベース | RDS | rds_log |
| リレーショナルデータベース | PolarDB | dsc_polardb_log |
| リレーショナルデータベース | PolarDB-X | dsc_drds_log |
| リレーショナルデータベース | OceanBase | dsc_oceanbase_log |
| 非リレーショナルデータベース | Redis | dsc_redis_log |
| 非リレーショナルデータベース | MongoDB | dsc_mongodb_log |
| 非構造化データベース | OSS | dsc_oss_log |
| ビッグデータ | TableStore | dsc_ots_log |
| ビッグデータ | MaxCompute | dsc_odps_tunnel_log |
| ビッグデータ | AnalyticDB for MySQL | dsc_ads_log |
| ビッグデータ | AnalyticDB for PostgreSQL | dsc_gpdb_log |
| 自己管理データベース | MySQL, SQLServer, PostgreSQL, Oracle | dsc_self_built_db_log |
ログフィールド
各監査ログエントリには、次のフィールドが含まれます。
| フィールド | 説明 |
|---|---|
client_ip | リクエストを開始したクライアントの IP アドレス。このフィールドを使用して、不審なアクセスの発信元をトレースしたり、予期されるホストのみが接続していることを確認したりします。 |
clusterId | クラスター ID。 |
collector_type | ログ収集タイプ。 |
db | データベース名。 |
db_type | データベースエンジンタイプ。 |
effect_row | 操作によって影響を受けた行数。このフィールドを使用して、INSERT、UPDATE、DELETE などの書き込み操作の影響を評価します。 |
execute_time | 実行時間。 |
fail | 実行結果: 成功または失敗。 |
hash | SQL ステートメントのハッシュ値。このフィールドを使用して、異なるセッション間で同一のクエリをグループ化します。 |
instance_id | インスタンス ID。 |
latency | 実行時間 (マイクロ秒単位)。高い値は、最適化が必要な低速なクエリを示します。 |
node_name | ノード名。 |
operate_type | SELECT、INSERT、DELETE などの操作タイプ。 |
origin_time | ソースでの SQL ステートメントの元の実行時間。 |
region_id | リージョン ID。 |
return_rows | 結果セットで返された行数。このフィールドを effect_row とともに使用して、操作の読み取りと書き込みの影響を理解します。 |
sql | 完全な SQL ステートメントテキスト。 |
thread_id | クライアント接続のスレッド ID。このフィールドを使用して、単一のクライアントセッションからのすべての操作をトレースします。 |
uid | ユーザー ID。 |
update_rows | 操作によって更新された行数。 |
user | ログインユーザー名。 |
監査ログの表示 (新バージョン)
Data Security Center コンソールにログインします。
左側のナビゲーションウィンドウで、[ログ分析] をクリックします。
[ログ分析] ページの右上隅で、[新バージョン] をクリックします。右上隅にすでに [旧バージョン] が表示されている場合は、このステップをスキップします。
左側の製品タイプナビゲーションバーで、製品タイプをクリックしてログ保存場所を表示します。

右側のログエリアで、リージョン、インスタンス、アカウント、操作タイプのパラメーターを使用して操作ログをフィルタリングして表示します。高度な分析を行うには、SLS の「クエリ構文」と「分析構文」を使用してクエリ文を入力します。はじめにについては、「クエリと分析のクイックガイド」をご参照ください。

クエリ例
以下に、一般的な監査分析クエリの例を示します。
RDS インスタンス内の特定のテーブルのアクセス詳細を表示
テーブルにアクセスしたユーザー、実行した操作、および操作が成功したかどうかを取得します。
* and instance_id: rm-bp1******5u5w and db: s****p and table_name : sys_d*****it
RDS インスタンス内の特定のテーブルの IP アドレス分布を表示
テーブルにアクセスしたすべてのユーザーとクライアント IP アドレスを、アクセス数とともに特定します。
* and instance_id: rm-bp1*****5u5w and db: s****p and table_name : sys_d*****it | select user,client_ip,count(*) group by user,client_ip
OSS ディレクトリのアウトバウンドインターネットトラフィックを計算
特定のディレクトリ内のすべてのオブジェクトのアウトバウンドトラフィックの合計を、CDN リクエストを除外して計算します。
* and __topic__ : oss_access_log and bucket: examplebucket and host : "examplebucket.oss-cn-hangzhou.aliyuncs.com" not sync_request : cdn | select
SUM(content_length_out) AS total_traffic_out_byte
WHERE
url_decode(object) LIKE 'exampledir/%'
ログのダウンロード
DSC は、SLS コンソールからのログダウンロード機能を統合しています。SLS と同じ手順で、DSC コンソールから直接ログまたはクエリと分析結果をダウンロードします。詳細については、「SLS コンソールからログをダウンロード」をご参照ください。
監査ログの表示 (旧バージョン)
次のステップ
監査ログがオンラインで保存される期間とアーカイブされるタイミングを管理するには、「ログストレージの管理」をご参照ください。
異常な操作、データ漏えい、脆弱性、SQLインジェクション攻撃などのリスクを自動的に検出するには、「監査アラートルールの設定と有効化」をご参照ください。
これらのルールによってトリガーされる監査アラートを確認して処理するには、「監査アラートの表示と処理」をご参照ください。


