☁️ クラウドサービス管理 第2章-2節

条件付きアクセスとセキュリティ

条件付きアクセスとは

条件付きアクセス(Conditional Access)は、Microsoft Entra IDの中核的なセキュリティ機能で、「誰が」「どこから」「どのデバイスで」「何にアクセスするか」という条件に基づいて、アクセスを許可・拒否・追加認証を要求する仕組みです。ゼロトラストセキュリティモデルの実装手段として極めて重要です。

条件付きアクセスポリシーは「if-then」のロジックで構成されます。

  • Assignments(条件):どのユーザー/グループが、どのアプリに、どの条件でアクセスするか
  • Access Controls(制御):条件に該当した場合に適用するアクション

条件付きアクセスの構成要素

カテゴリ条件(シグナル)説明
ユーザーユーザー/グループ特定のユーザーやグループに適用
アプリクラウドアプリExchange Online、SharePoint、Teams等
場所ネームドロケーション信頼できるIP範囲(オフィスIP等)
デバイスデバイスプラットフォームWindows、iOS、Android、macOS等
デバイスデバイスの状態Intune準拠デバイス、Entra ID参加デバイス
リスクサインインリスク低/中/高のリスクレベル(P2のみ)
リスクユーザーリスクユーザーアカウント侵害リスク(P2のみ)
クライアントクライアントアプリブラウザ、モバイルアプリ、デスクトップアプリ等

制御アクション

制御説明
アクセスのブロック条件に該当するアクセスを完全に拒否
アクセスの許可(MFA要求)多要素認証を完了した場合のみ許可
アクセスの許可(準拠デバイス要求)Intune準拠デバイスからのみ許可
アクセスの許可(Entra ID参加デバイス要求)Entra IDに参加済みのデバイスからのみ許可
セッション制御アプリの機能制限(ダウンロード禁止等)

📋 具体例

中小企業向け条件付きアクセスポリシーの推奨構成:

  1. ポリシー1:全ユーザーにMFA必須 → 全ユーザー × 全クラウドアプリ × MFA要求
  2. ポリシー2:社外からのアクセスにMFA強制 → 全ユーザー × 全クラウドアプリ × 信頼できる場所以外 × MFA要求
  3. ポリシー3:レガシー認証のブロック → 全ユーザー × 全クラウドアプリ × レガシー認証クライアント × アクセスブロック
  4. ポリシー4:管理者は常にMFA → 管理者ロール × 全クラウドアプリ × MFA要求(場所の除外なし)
  5. ポリシー5:緊急アクセスアカウントの除外 → Break Glassアカウントをすべてのポリシーから除外

⚠️ 注意

条件付きアクセスポリシーの設定ミスは全ユーザーがログインできなくなる事態を引き起こす可能性があります。新しいポリシーは必ず「レポート専用」モードで作成し、影響範囲を確認してから「有効」に切り替えてください。また、緊急アクセス用アカウント(Break Glass Account)はすべてのポリシーから除外し、最悪の場合でも管理者がアクセスできる状態を維持してください。

MFA(多要素認証)の強制

MFAは、パスワードに加えて追加の認証要素を要求することで、アカウント侵害のリスクを99.9%削減できるとMicrosoftは報告しています。

MFAの認証方法

認証方法セキュリティ強度利便性備考
Microsoft Authenticator(プッシュ通知)推奨。番号一致機能でフィッシング耐性向上
FIDO2セキュリティキー最高フィッシング耐性あり。物理キー(YubiKey等)が必要
Windows Hello for Business最高生体認証/PIN。デバイスに紐づくためフィッシング耐性あり
SMS認証SIMスワッピングリスクあり。非推奨だが無いよりはまし
音声通話SMS同様のリスク。フィーチャーフォンユーザー向け
ソフトウェアTOTPGoogle Authenticator等のワンタイムパスワード

ひとり情シスの視点:全社展開時はMicrosoft Authenticatorアプリの利用を推奨し、スマートフォンを持たない従業員にはFIDO2セキュリティキーを配布します。MFA展開前に、全従業員に設定手順書(スクリーンショット付き)を配布し、ヘルプデスク問い合わせの増加に備えましょう。

準拠デバイス要件

条件付きアクセスの「準拠デバイスの要求」は、Microsoft Intuneで定義したコンプライアンスポリシーに準拠したデバイスからのみアクセスを許可する機能です。

コンプライアンスポリシーの主な要件:

  • OSバージョンが最新であること
  • BitLockerによるディスク暗号化が有効であること
  • ウイルス対策ソフトが有効かつ最新であること
  • ファイアウォールが有効であること
  • パスワードの複雑さ要件を満たしていること
  • 脱獄/ルート化されていないこと(モバイルデバイス)

リスクベース認証(Entra ID P2)

Entra ID Identity Protectionは、Microsoftの膨大なサインインデータに基づいて、リスクの高いサインインやユーザーアカウントの侵害兆候を自動検出します。

サインインリスクの検出例

  • 匿名IPアドレスからのサインイン(Tor, VPN等)
  • あり得ない移動(短時間に地理的に離れた場所からのサインイン)
  • マルウェアにリンクしたIPアドレス
  • パスワードスプレー攻撃の検出
  • 漏洩した資格情報(ダークウェブに流出したパスワード)

📋 具体例

リスクベース条件付きアクセスの設定例:

  • サインインリスク「中」以上→ MFAを要求
  • サインインリスク「高」→ アクセスをブロック
  • ユーザーリスク「高」→ パスワード変更を強制

これにより、通常のサインインはスムーズに処理しつつ、不審なサインインのみ追加認証やブロックが自動的に適用されます。

SSO(シングルサインオン)設定

SSOは、1回の認証で複数のアプリケーションにアクセスできる機能です。Entra IDでは、エンタープライズアプリケーションとして外部SaaSアプリを登録し、SAML 2.0やOpenID Connectプロトコルを使用してSSOを構成します。

SSOの主なメリット:

  • ユーザーの利便性向上(パスワード入力回数の削減)
  • セキュリティ向上(各SaaSの個別パスワード管理が不要)
  • 管理者の負担軽減(アカウント管理の一元化)
  • 退職時の即時アクセス無効化が可能

Entra IDのアプリギャラリーには数千のSaaSアプリが事前登録されており、Salesforce、Box、ServiceNow、Zoom、Slackなど主要なSaaSアプリはガイド付きで簡単にSSO設定が可能です。

アプリ登録

Entra IDのアプリ登録は、自社開発アプリケーションやAPIをEntra IDと統合するための機能です。アプリギャラリーにないカスタムアプリケーションも、アプリ登録を通じてEntra IDの認証基盤を利用できます。

アプリ登録の主な用途:

  • 社内WebアプリへのEntra ID認証の実装
  • Microsoft Graph APIへのアクセス(自動化スクリプト等)
  • サードパーティアプリとのAPI連携

⚠️ 注意

アプリ登録で発行したクライアントシークレットやクライアント証明書は、アプリケーションとしてEntra IDのリソースにアクセスする鍵です。シークレットの漏洩は重大なセキュリティインシデントにつながるため、有効期限の設定(最大2年)、Azure Key Vaultでの保管、定期的なローテーションを徹底してください。可能な限りクライアント証明書を使用しましょう。

Entra ID Identity Protection

Entra ID Identity Protection(P2ライセンス)は、組織のIDに対する脅威を自動的に検出・調査・修復するサービスです。

主な機能:

  • リスク検出:サインインリスクとユーザーリスクの自動検出
  • リスクポリシー:リスクレベルに応じた自動対応(MFA要求、パスワード変更強制)
  • 調査:リスクの高いユーザーとサインインのダッシュボード
  • レポート:リスク検出履歴、セキュリティ概要レポート

ひとり情シスの視点:Identity ProtectionはP2ライセンスが必要ですが、組織のセキュリティを大幅に強化します。導入が難しい場合は、最低限、パスワードハッシュ同期(PHS)を有効にしておくことで、Entra IDの「漏洩した資格情報」の検出機能(P1不要)を利用できます。漏洩したパスワードが検出された場合は速やかにパスワード変更を強制しましょう。