Database Autonomy Service (DAS) は、リスクの高いSQL文、SQLインジェクション、新しいアクセスソースなどのリスクを自動的に特定するセキュリティ監査機能を提供します。 このトピックでは、セキュリティ監査機能の使用方法について説明します。
前提条件
管理するデータベースインスタンスは、次のいずれかのタイプです。
ApsaraDB RDS for MySQL
PolarDB for MySQL
データベースインスタンスがDASに接続され、正常なアクセス 状態になっています。
データベースインスタンスのSQL Explorerおよび監査機能が有効になっています。 詳細については、「概要」トピックの [SQLエクスプローラーと監査の有効化] セクションを参照してください。
ストレージ期間:
セキュリティ監査機能を使用してリアルタイムで生成された監査データは、最大30日間保存できます。
制限事項
セキュリティ監査機能は、技術的な制限により、すべてのSQLインジェクション攻撃を特定できません。
大量の監査データが短期間に保存されるのを防ぐために、DASはセキュリティ監査結果の出力を抑制します。
手順
DASコンソールにログインします。
左側のナビゲーションウィンドウで、インスタンスモニターをクリックします。
表示されるページで、管理するデータベースインスタンスを見つけ、インスタンスIDをクリックします。 インスタンス詳細ページが表示されます。
左側のナビゲーションウィンドウで、リクエスト分析 > SQL Explorer and Audit を選択します。 表示されるページで、セキュリティ監査 をクリックします。
DAS Enterprise Edition V3を有効にしている場合は、[SQL Explorerと監査] ページの [SQL Explorer] タブをクリックします。 [SQL Explorer] タブで、[セキュリティ監査] タブをクリックします。
セキュリティ監査の期間を指定し、検索 をクリックします。 指定された時間範囲内の1時間ごとのセキュリティ監査結果が表示されます。
時間範囲を選択するときは、終了時刻が開始時刻よりも遅く、開始時刻と終了時刻の間隔が30日を超えないようにしてください。 データをクエリする時間範囲は、DAS Enterprise Editionが有効になっている時間よりも後で、SQL Explorerのデータストレージ期間内に収まる必要があります。
トレンドチャートのある時点をクリックすると、その時点から1時間後のセキュリティ監査の詳細が表示されます。
項目
説明
リスクレベル
高リスクバージョン
DASは、事前設定されたルールに基づいて、次のタイプの高リスクバージョンを自動的に識別します。
テーブルの作成、テーブルのスキーマの変更、インデックスの変更、テーブルの名前変更などのDDLステートメント
テーブル全体の更新または削除に使用するステートメント
次の既定の条件のいずれかを満たす大きなクエリの実行に使用されるステートメント:
スキャンされた行の数は1,000,000以上です。
返される行の数が100,000以上です。
更新された行の数は100,000以上です。
DDLステートメント: 低リスク
テーブル全体の更新に使用されるステートメント: 高リスク
大規模なクエリの実行に使用されるステートメント: 中リスク
SQL インジェクション
SQLインジェクションは、悪意のあるSQL文がwebフォーム、ドメイン名、またはページリクエストに挿入され、サーバーをだましてこれらのSQL文を実行させる攻撃です。 この種の攻撃は、データベースのセキュリティを損なう。
説明DASは、データベース内のSQLインジェクションを継続的に監視し、アクセスソースを識別します。
リスクが高い
アクセスを追加
DASは、新しいアクセスソースをアクセスソースレコードと比較して、アクセス要求が未知のサーバーから送信されているかどうかを判断することで、自動的に識別します。
説明過去7日以内にデータベースにアクセスしなかったアクセスソースは、新しいアクセスソースと見なされます。
新しいデータベースインスタンスに対してセキュリティ監査機能を有効にすると、最初の7日間は新しいアクセスソースのデータは提供されません。
既存のデータベースインスタンスに対してセキュリティ監査機能が有効化されていない場合、この機能が有効化されてから最初の7日間は、新しいアクセスソースのデータは提供されません。
中リスク