重要
2025 年 5 月 1 日より、Azure AD B2C は新規のお客様向けに購入できなくなります。 詳細については、FAQ を参照してください。
このサンプル チュートリアルでは、ヘッダーベースの認証を使用してレガシ アプリケーションを Grit のアプリ プロキシを使用して Azure Active Directory B2C (Azure AD B2C) に移行する方法について説明します。
Grit のアプリ プロキシを使用する利点は次のとおりです。
アプリケーション コードの変更がなく、デプロイが簡単で、ROI が向上する
ユーザーは、多要素認証、生体認証、パスワードレスなどの最新の認証エクスペリエンスを使用できるため、セキュリティが強化されます。
レガシ認証ソリューションのライセンス コストを大幅に削減
[前提条件]
作業を開始するには、以下が必要です。
Grit のアプリ プロキシへのライセンス。 ライセンスの詳細については 、Grit サポート にお問い合わせください。 このチュートリアルでは、ライセンスは必要ありません。
Azure サブスクリプション。 お持ちでない場合は、 無料アカウントを入手してください。
Azure サブスクリプションにリンクされている Azure AD B2C テナント 。
シナリオの説明
Grit 統合には、次のコンポーネントが含まれています。
Azure AD B2C: ユーザー資格情報を検証するための承認サーバー - 認証されたユーザーは、Azure AD B2C ディレクトリに格納されているローカル アカウントを使用してオンプレミス アプリケーションにアクセスします。
Grit アプリ プロキシ: HTTP ヘッダーを介してアプリケーションに ID を渡すサービス。
Web アプリケーション: ユーザーがアクセスを要求するレガシ アプリケーション。
次のアーキテクチャ図は、実装を示しています。
ユーザーは、オンプレミス アプリケーションへのアクセスを要求します。
Grit アプリ プロキシは、 Azure Web Application Firewall (WAF) を介して要求を受信し、アプリケーションに送信します。
Grit アプリ プロキシは、ユーザー認証の状態を確認します。 セッション トークンまたは無効なトークンがない場合、ユーザーは認証のために Azure AD B2C にアクセスします。
Azure AD B2C は、Azure AD B2C テナントでの Grit アプリ プロキシの登録中に指定されたエンドポイントにユーザー要求を送信します。
Grit アプリ プロキシは、アクセス ポリシーを評価し、アプリケーションに転送される HTTP ヘッダーの属性値を計算します。 Grit アプリ プロキシは、ヘッダー値を設定し、アプリケーションに要求を送信します。
ユーザーは、アプリケーションに対するアクセスが許可または拒否された状態で認証されます。
Grit アプリ プロキシを使用してオンボードする
オンボードの詳細については、 Grit サポート にお問い合わせください。
Azure AD B2C を使用して Grit のアプリ プロキシ ソリューションを構成する
このチュートリアルでは、Grit にはバックエンド アプリケーションと Azure AD B2C ポリシーが既に用意されています。 このチュートリアルでは、バックエンド アプリケーションにアクセスするようにプロキシを構成する方法について説明します。
UX を使用して、セキュリティのためにバックエンド アプリケーションの各ページを構成できます。 各ページで必要な認証の種類と、必要なヘッダー値を構成できます。
ユーザーがグループ メンバーシップまたはその他の条件に基づいて特定のページへのアクセス許可を拒否する必要がある場合は、認証ユーザー体験によって処理されます。
ドロップダウンが表示されたら、ドロップダウンを選択し、[ 新規作成] を選択します。
文字と数字のみを含むページの名前を入力します。
[B2C ポリシー] ボックスに 「B2C_1A_SIGNUP_SIGNIN 」と入力します。
HTTP メソッドで GET を選択します。
エンドポイント フィールドに「https://anj-grit-legacy-backend.azurewebsites.net/Home/Page」と入力すると、レガシ アプリケーションのエンドポイントになります。
注
このデモは一般公開されており、入力した値はパブリックに表示されます。 このデモでは、セキュリティで保護されたアプリケーションを構成しないでください。
[ ヘッダーの追加] を選択します。
宛先ヘッダー フィールドに 「x-iss 」と入力して、アプリケーションに送信する必要がある有効な HTTP ヘッダーを構成します。
B2C ポリシーの要求の名前である [値] フィールドに「 given_name 」と入力します。 要求の値がヘッダーに渡されます。
ソースとして [トークン ] を選択します。
[ 設定の保存] を選択します。
ポップアップでリンクを選択します。 サインイン ページに移動します。 サインアップ リンクを選択し、必要な情報を入力します。 サインアップ プロセスが完了すると、レガシ アプリケーションにリダイレクトされます。 アプリケーションには、サインアップ時に [ 指定された名前 ] フィールドに指定した名前が表示されます。
フローをテストする
オンプレミスのアプリケーション URL に移動します。
Grit アプリ プロキシは、ユーザー フローで構成したページにリダイレクトされます。 一覧から IdP を選択します。
プロンプトで、資格情報を入力します。 必要に応じて、Microsoft Entra 多要素認証トークンを含めます。
Azure AD B2C にリダイレクトされ、アプリケーション要求が Grit のアプリ プロキシ リダイレクト URI に転送されます。
Grit のアプリ プロキシは、ポリシーを評価し、ヘッダーを計算して、アップストリーム アプリケーションにユーザーを送信します。
要求されたアプリケーションが表示されます。