
- サインインログでできることは?
- ログの種類は?
- サインインログの確認方法
- サインインログの活用例
- ログの保存期間とエクスポート
- ログの自動監視
- Identity Protectionによる自動リスク検出
- Azure Monitor / Log Analyticsによる継続的な監視
- Power Automate / Logic Appsによる自動通知と処理
Microsoft Entra ID(旧Azure Active Directory)のサインインログは、ユーザーのサインイン(ログイン)に関する詳細な情報を記録する機能です。
セキュリティ監視やトラブルシューティング、条件付きアクセスの検証など、管理者にとって欠かせないツールとなっています。
今回はサインインログについてご紹介したいと思います。
サインインログでできることは?
Entra IDのサインインログでは、次のような情報を確認できます。
- サインイン日時:ユーザーがいつログインを試みたか
- アプリケーション名:ログイン先のアプリ(例:Outlook、Teamsなど)
- IPアドレスと場所:アクセス元の地域やネットワーク情報
- デバイス情報:OSやブラウザーの種類
- 結果:成功・失敗・ブロックなどのステータス
- 失敗理由:パスワード誤りや条件付きアクセスの影響など
- 条件付きアクセス適用結果:どのポリシーが適用されたか
- MFA(多要素認証)の使用状況:多要素認証が利用されているか
- アクセス方法:対話型/非対話型/サービスプリンシパルなどの区別
- リスク評価:Entra ID Protectionによるリスクの有無(例:リアルタイムで検出されたリスクサインイン)
これらを確認することで、不正アクセスの兆候を早期に発見したり、ユーザーがサインインできない原因を特定したりすることが可能です。
ログの種類は?
Entra IDでは以下のようなログが取得可能です
- SignInLogs:ユーザーやアプリのサインイン履歴
- AuditLogs:管理者やシステムによる構成変更や操作履歴
- NonInteractiveUserSignInLogs:非対話型(アプリやOSによる自動ログイン)
- ServicePrincipalSignInLogs:サービスプリンシパル(アプリ)によるログイン
- RiskySignInLogs:リスクのあるサインイン(Entra ID Protection)
サインインログの確認方法
例として、SMTP接続の基本認証を利用しているログを取得する手順をご紹介します。
1. 全体管理者にて Microsoft 365 管理センター (https://admin.microsoft.com/) にアクセスします。
2. サイド リンクバーの [… すべてを表示] - [ID] をクリックします。
3. Microsoft Entra 管理センターに遷移したのち、画面上部の検索バーに [サインイン] と入力し [サインイン ログ] を選択します。
4. 日付の基準や期間を任意に指定します。
5. [フィルターの追加] - "フィルター" - [クライアントアプリ] にチェックを入れて [適用] をクリックします。
6. [クライアントアプリ : すべて] をクリックします。
7. "値" のプルダウンより [SMTP] にチェックを入れ [適用] をクリックします。
8. SMTP 基本認証で接続されていたサインイン ログが表示されます。
サインインログの活用例
- 不審なログインの検知:海外からのアクセスや深夜のサインインを確認
- 条件付きアクセスの検証:適用ポリシーが正しく動作しているか確認
- ユーザーからの問い合わせ対応:「ログインできない」などのトラブル対応に役立つ
- 監査・コンプライアンス対策:アクセス履歴を定期的に確認・エクスポート
ログの保存期間とエクスポート
Entra IDの無料プランではサインインログの保持期間は7日間です。 有料プラン(P1 / P2、またはMicrosoft 365 E3/E5など)では30日間保存されます。
また、ログは以下の方法でエクスポート可能です。
ログの自動監視
Entra ID P2プランを利用している場合、リスク検出やIdentity Protectionの機能と連携できます。 これにより、危険なサインインを自動的に検出・ブロックすることも可能です。
さらに、Power BIと連携させてダッシュボードを作成すれば、組織全体のサインイン傾向を可視化できます。
| 監視方法 | 主な機能 | 対応プラン |
|---|---|---|
| ① Entra ID Identity Protection | リスク検出・自動対応 | P2 |
| ② Azure Monitor / Log Analytics | カスタムアラート・レポート | P1以上 |
| ③ Power Automate / Logic Apps | 通知・自動処理 | Freeでも一部可 |
以下にそれぞれの内容についてもご紹介したいと思います。
Identity Protectionによる自動リスク検出
Identity Protectionは、MicrosoftのAIがサインインログを分析し、 危険なサインインを自動的に検出・ブロックする機能です。
主な検出内容
自動対応例
- 高リスクユーザーをブロック
- MFA(多要素認証)を強制要求
- パスワード変更を促す
設定手順
- Entra 管理センターにアクセス:https://entra.microsoft.com
- 左メニューから「保護」→「Identity Protection」を選択
- 「サインインリスクポリシー」または「ユーザーリスクポリシー」を有効化
- リスクレベルに応じて自動対応を設定
例:「中リスク以上のユーザーはサインインをブロック」などのルールを自動化できます。
Azure Monitor / Log Analyticsによる継続的な監視
より柔軟に監視したい場合は、サインインログをAzure Monitor(Log Analytics)へ転送する方法が効果的です。
主な機能
- リアルタイムにログを収集・検索
- 特定条件でアラートを自動通知
- 長期保存(最大2年間)
- KQL(クエリ言語)で詳細分析
不審なサインインを検知するKQL例
SigninLogs
| where ResultType != 0
| summarize FailedCount = count() by UserPrincipalName, bin(TimeGenerated, 1h)
| where FailedCount > 5
このクエリは「1時間以内に5回以上ログイン失敗したユーザー」を抽出します。 アラート設定をすれば、失敗の連続を自動的に通知可能です。
アラート作成手順
- Azureポータル → Log Analytics ワークスペース
- 「ログ」からクエリを作成
- 「新しいアラートルールを作成」を選択
- 通知先(メール・Teams・Webhookなど)を指定
TeamsやSlackと連携してリアルタイム通知も可能です。
Power Automate / Logic Appsによる自動通知と処理
ノーコードで通知や処理を自動化したい場合は、Power AutomateやLogic Appsを活用します。
自動通知フローの例
- トリガー:Entra IDの新しいサインインログが追加されたとき
- 条件:海外IPまたは特定ユーザーのアクセス
- アクション:Teamsへメッセージ送信、または管理者にメール通知
メリット
- コーディング不要で簡単に構築可能
- Microsoft 365と連携しやすい
- 即時通知で対応がスピーディ