Azure Active Directoryのサインインログを監視
Azure Active DirectoryのPremium P1を使える機会があったので、Azure Active Directoryのサインインログについて確認からAzure Monitorで監視設定まで試してみました。
Azure PortalでAzure Active Directoryのサインインログを見る
まず最初にAzure Active Directoryのサインインログを確認してみます。
サインインアクティビティの確認については全エディションで可能だそうです。
実際にAzure Portal上でAzure Active Directoryのサインインのメニューを選択してみます。
ログイン日時やユーザー名、アプリケーション、ログインに成功したのかどうか、アクセス元のIPアドレス等を確認出来ます。
Azure Active Directoryの診断設定でサインインログをLog Analyticsへ転送する
Azure Active DirectoryのサインインログをLog Analyticsへ転送してみます。
1)Azure Active Directoryのメニューで診断設定を選択します。下記画面が表示されますので、診断設定を追加するをクリックします。
2)診断設定の画面が表示されます。
サインインログ(SignInLogs)をLog Analyticsへ転送する為には、Azure Active Directory Premium P1以上のライセンスが必要とのメッセージが表示されます。
今回はP1を使っても良いとの事でしたので、診断設定の名前、Log Analyticsワークスペース名を設定し、LogのSignInLogsへチェックを入れて保存します。
これでAzure Active Directory サインインログのLog Analyticsワークスペースへの転送設定が完了です。
Azure Active DirectoryのサインインログをAzure Monitorで監視設定してみる
Azure Active Directory サインインログをLog Analyticsへ転送できたかを確認してみます。
Azure Active Directoryの診断設定で指定した、Log Analyticsのワークスペースのログで以下のクエリを実行します。
SigninLogs
| where TimeGenerated > ago(24h)
|
過去24時間のサインインログが表示されます。
ユーザー単位に24時間のログイン回数を調べてみる場合は、こんな感じになりそうです。
SigninLogs
| where TimeGenerated > ago(24h)
|
サインインログのスキーマについてマイクロソフト公式サイトで確認してみます。
ログイン成功、失敗については、ResultTypeで確認出来るようです。
実際に出力されたログ等を確認してみると、成功した場合は0になるようです。
ユーザー単位に24時間ログイン失敗回数を調べてみる場合は、こんな感じになります。
SigninLogs
| where TimeGenerated > ago(24h) | where ResultType != “0" | summarize count() by Identity |
実行してみると、ユーザー単位に失敗回数が表示されました。
今回は以下の内容での監視設定を試してみました。
-
- 監視内容
- 監視条件;ユーザー別に2回以上ログイン失敗したログが検出された場合にアラート
- 監視間隔:15分間隔
- 監視内容
実際にAzure Monitorの設定を行います。
1)LogAnalytics ワークスペースのメニューで警告を選択します。下記画面が表示されますので、新しいアラートルールをクリックします。
2)アラートルールの作成画面が表示されます。条件の選択をクリックします。
3)シグナルロジックの構成画面が表示されますので、Custom Log Searchを選択します。
4)シグナルロジックの構成の設定画面が表示されます。
シグナルロジックを以下の内容で構成します。
-
-
- シグナルロジック構成内容
- 検索クエリ;
SigninLogs
| where TimeGenerated > ago(24h)
| where ResultType != “0"
| summarize count() by Identity
| where count_ >1 - アラートロジック
- 基準:結果の数
- 演算子:次の値以上
- しきい値;1
- 下記クエリの内容
- 評価基準
- 期間:15分
- 頻度:15分
- 検索クエリ;
- シグナルロジック構成内容
-
5)アクションルールの設定を行います。利用するアラートルールを選択します。
6)アラートルールの詳細を設定します。アラートルール名等の設定を行います。
これでAzure Monitorの設定は完了です。
実際の環境に合わせて、クエリ内容等を変更する必要があるかとは思いますが、Azure Active Directoryのサインインログを使った監視が出来る事が確認出来ました。