多要素オプションを使用した Azure AD B2C の実装

XML Configuration

Azure AD B2C カスタム ポリシーの実装の探索

複数の認証方法を Azure AD B2C に統合することで、セキュリティとユーザーの柔軟性が強化されます。ユーザーが多要素認証 (MFA) のために電子メール、電話、または認証アプリのいずれかを選択する必要があるシナリオでは、カスタム ポリシーが重要になります。これらのポリシーにより、さまざまな認証設定に対応したカスタマイズされたユーザー ジャーニーが可能になり、シームレスで安全なユーザー エクスペリエンスが保証されます。

多くの場合、課題は、特に時間ベースのワンタイム パスワード (TOTP) を他の方法と統合する場合、Azure のフレームワーク内での技術的な実行にあります。これらのオプションをユーザー フローに適切に結合するには、ユーザー ジャーニーの正確な構成と管理が必要です。これにより、セットアップ後に永続的な MFA 選択プロンプトが表示されるなどの問題が発生する可能性があります。

指示 説明
<ClaimType> ポリシーでクレームの種類を定義し、データの種類、表示プロパティ、および制限を指定します。
<UserJourney> ユーザーがカスタム ポリシーで実行する一連の手順について説明します。
<OrchestrationStep> ユーザー ジャーニー内の個々のステップを、その種類や順序を含めて指定します。
<Precondition> オーケストレーション ステップを実行するために満たす必要がある条件を定義します。これは、ユーザー データまたは以前の入力に基づいてフローを制御するために使用されます。
<ClaimsProviderSelections> ユーザー ジャーニーのステップ中に選択できるクレーム プロバイダーを指定します。
<ClaimsExchange> クレーム プロバイダーとのクレームの交換を定義し、どのクレームがどのプロバイダーから要求されるかを指定します。

Azure AD B2C カスタム ポリシーの統合の説明

上記で詳しく説明したスクリプトは、Azure AD B2C 内でカスタムの多要素認証 (MFA) オプションを実装するために不可欠です。の使用 タグは、電話、電子メール、TOTP (時間ベースのワンタイム パスワード) など、ユーザーが選択できるクレームの種類を定義するため、非常に重要です。このクレーム タイプは、ユーザーが使用できる入力オプションも決定し、動的でユーザー固有の認証エクスペリエンスを作成するための基礎となります。ユーザーがここで行う選択は認証プロセスのフローに影響を与え、パーソナライズされたセキュリティ対策を可能にします。

の そして タグは、ログインまたはサインアップのプロセス全体を構造化します。各オーケストレーション ステップには、以前の入力またはユーザー ステータスに基づいてフローをガイドするために使用される前提条件を含めることができます。たとえば、 タグは、選択された MFA メソッドなどの特定のクレームが設定されているかどうかを評価し、この評価に基づいて、プロセスを合理化するために特定の手順をスキップできます。このカスタマイズ機能により、Azure AD B2C はさまざまなユーザー シナリオや設定に適応し、セキュリティとユーザー エクスペリエンスの両方を向上させることができます。

Azure AD B2C での多要素認証の統合

カスタム ポリシーの XML 構成

<ClaimType Id="extension_mfaByPhoneOrEmail">
    <DisplayName>Please select your preferred MFA method</DisplayName>
    <DataType>string</DataType>
    <UserInputType>RadioSingleSelect</UserInputType>
    <Restriction>
        <Enumeration Text="Phone" Value="phone" SelectByDefault="true" />
        <Enumeration Text="Email" Value="email" SelectByDefault="false" />
        <Enumeration Text="Authenticator App" Value="TOTP" SelectByDefault="false" />
    </Restriction>
</ClaimType>
<UserJourney Id="SignUpOrSignInMFAOption">
    <OrchestrationSteps>
        <OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
            <ClaimsProviderSelections>
                <ClaimsProviderSelection ValidationClaimsExchangeId="LocalAccountSigninEmailExchange" />
            </ClaimsProviderSelections>
            <ClaimsExchanges>
                <ClaimsExchange Id="LocalAccountSigninEmailExchange" TechnicalProfileReferenceId="SelfAsserted-LocalAccountSignin-Email" />
            </ClaimsExchanges>
        </OrchestrationStep>
    </OrchestrationSteps>
</UserJourney>

MFA 選択を永続化するためのスクリプト

XML でのカスタム ポリシー構成

<OrchestrationStep Order="5" Type="ClaimsExchange">
    <Preconditions>
        <Precondition Type="ClaimEquals" ExecuteActionsIf="true">
            <Value>extension_mfaByPhoneOrEmail</Value>
            <Value>email</Value>
            <Action>SkipThisOrchestrationStep</Action>
        </Precondition>
        <Precondition Type="ClaimEquals" ExecuteActionsIf="true">
            <Value>extension_mfaByPhoneOrEmail</Value>
            <Value>phone</Value>
            <Action>SkipThisOrchestrationStep</Action>
        </Precondition>
        <Precondition Type="ClaimEquals" ExecuteActionsIf="true">
            <Value>extension_mfaByPhoneOrEmail</Value>
            <Value>TOTP</Value>
            <Action>SkipThisOrchestrationStep</Action>
        </Precondition>
    </Preconditions>
</OrchestrationStep>

Azure AD B2C カスタム ポリシーの高度な統合テクニック

Azure AD B2C カスタム ポリシーのより深い複雑さを理解するには、これらのポリシーが外部システムや API とどのように対話するかを調べる必要があります。 Azure AD B2C のカスタム ポリシーは、ユーザー認証を処理するだけでなく、外部 API と対話して検証プロセスを強化したり、認証過程で追加のユーザー データを取得したりするように構成することもできます。この機能により、組織は一般的な MFA 設定を超える複雑なセキュリティ要件と条件付きアクセス シナリオを実装できるようになります。

たとえば、システムがユーザーの行動と外部の脅威インテリジェンス サービスによって提供される追加のコンテキストに基づいて、ログイン試行に関連するリスクを評価するリスクベースの認証を統合します。この高度な技術を活用することで、 外部 API を呼び出して使用する APIの応答に基づいてフローを決定し、リアルタイムの評価に応じて動的にセキュリティを強化します。

  1. の目的は何ですか Azure AD B2C カスタム ポリシーでは?
  2. の ID プラットフォームでのユーザー対話中に収集、保存、操作できるデータ要素を定義します。
  3. 特定の条件下でのみ MFA を強制するにはどうすればよいですか?
  4. 条件付き MFA は次を使用して強制できます。 内のタグ ■ MFA を求める前に特定の条件を確認します。
  5. Azure AD B2C カスタム ポリシーは外部 API を呼び出すことができますか?
  6. はい、次を使用して外部 API と対話できます。 これにより、ポリシーがサードパーティのサービスから情報を送受信できるようになります。
  7. 使用するメリットは何ですか Azure AD B2C にありますか?
  8. ■ さまざまなユーザーのケースや条件に合わせて、ユーザーが認証プロセスを通じて通過できるカスタム パスを定義できます。
  9. Azure AD B2C でカスタム ポリシーをデバッグするにはどうすればよいですか?
  10. デバッグは、「開発」モードでポリシーをアップロードすることで実行でき、ポリシー実行の問題の特定に役立つ詳細なエラー ログが有効になります。

電子メール、電話、TOTP 認証オプションを使用して Azure AD B2C を実装すると、柔軟性が提供されるだけでなく、ユーザーが好みの方法を選択できるため、セキュリティも強化されます。これらのオプションを構成する過程を通じて、複雑な認証シナリオを効果的に管理する際のカスタム ポリシーの力が明らかになります。これらのシステムを統合する際の課題は、堅牢なセキュリティを確保しながらユーザーの使いやすさを維持することであり、これは、スケーラブルな方法で多様なニーズに応える Azure AD B2C の機能を実証するものです。