Azure SQL Databaseの監査設定有効化手順
このブログシリーズ 「クラウドセキュリティ 実践集」 では、一般的なセキュリティ課題を取り上げ、「なぜ危険なのか?」 というリスクの解説から、 「どうやって直すのか?」 という具体的な修復手順(コンソール、Azure CLI、Terraformなど)まで、分かりやすく解説します。
この記事では、Azure SQL Databaseで監査設定が無効になっている場合のリスクと対策を解説します。
ポリシーの説明
Azure SQL Databaseの監査機能は、データベースイベントを追跡し、Azure Storage、Log Analytics、またはEvent Hubの監査ログに記録します。この機能により、規制コンプライアンスの維持、データベースアクティビティの把握、セキュリティ違反の可能性がある異常の検出が可能になります。
監査は準リアルタイムで取り込まれます。既定で認証関連等が含まれる場合がありますが、BATCH_COMPLETED_GROUP はログ量が非常に大きいため用途に応じて選択的に有効化することを推奨します。
修復方法
コンソールでの修復手順
Azure コンソールを使用して、SQL Databaseの監査を有効化する手順:
- Azure Portalにログイン
- Azure Portal にアクセス
- 所有者またはコントリビューター権限を持つアカウントでログインします。
- SQL Serverリソースへの移動
- ポータルの検索バーで「SQL servers」を検索
- 監査を設定したいSQL Serverを選択します。
- 監査設定画面へアクセス
- SQL Serverのメニューから「セキュリティ」セクションを確認
- 「監査」をクリックします。
- 監査の有効化
- 「Azure SQL 監査を有効にする」トグルをONに切り替えます。
- 監査ログの保存先設定(複数選択推奨) ストレージアカウントへの保存:

- 「ストレージ」チェックボックスを選択
- 「ストレージの詳細」をクリック
- ストレージアカウントを選択または新規作成
- 保持は宛先によって異なります。Storage は監査設定やライフサイクル管理で調整、Log Analytics はワークスペース保持に従います。要件に応じて日数を設定してください。
- ストレージ アカウントでネットワーク制限を有効化している場合は、‘Allow trusted Microsoft services…’ の許可や必要なネットワーク許可を設定して、監査の書き込みが行えるようにします。
Log Analyticsへの送信:
- 「Log Analytics」チェックボックスを選択
- ワークスペースをドロップダウンから選択
- 適切な保持期間が設定されていることを確認
Event Hubへの送信(SIEM連携の場合):
- 「Event Hub」チェックボックスを選択
- 名前空間とハブ名を選択
- 承認規則を構成
- 監査設定の保存
- 「保存」をクリックして設定を適用
- 監査ログが正常に記録されていることを「監査ログの表示」で確認
- アラートの設定(推奨)
- Log Analytics 宛先の場合は SQLSecurityAuditEvents テーブルを対象に KQL ベースのアラート ルールを作成します。例:一定時間内の連続失敗認証回数しきい値、権限変更イベントの検知など。
- 複数回のログイン失敗、権限変更などのイベントを監視
最後に
この記事では、Azure SQL Databaseの監査設定の有効化について、リスクと対策を解説しました。
監査を有効化することで、セキュリティ脅威の早期発見、コンプライアンス要件の充足、インシデント発生時の迅速な原因究明が可能になります。特に規制対象となるデータを扱うデータベースでは、監査設定は必須のセキュリティ対策です。
既定はサーバーレベル監査を推奨します。特別な要件がある場合に限り、データベース レベルで上書きを検討してください。
この問題の検出は弊社が提供するSecurifyのCSPM機能で簡単に検出及び管理する事が可能です。 運用が非常に楽に出来る製品になっていますので、ぜひ興味がある方はお問い合わせお待ちしております。 最後までお読みいただきありがとうございました。この記事が皆さんの役に立てば幸いです。