Azure Active Directory B2C を使用して Onfido を構成するためのチュートリアル

このチュートリアルでは、Azure Active Directory B2C (Azure AD B2C) と Onfido (ドキュメント ID と顔による生体認証の検証アプリ) を統合する方法について説明します。 これを使用して、Know Your Customer (顧客確認) と ID の要件を満たします。 Onfido では、写真 ID と顔による生体認証を照合して ID を検証する人工知能 (AI) テクノロジを使用します。 このソリューションは、デジタル ID を人につなげ、信頼性の高いオンボーディング エクスペリエンスを提供し、不正行為を減らすのに役立ちます。

このチュートリアルでは、Onfido サービスを有効にして、サインアップまたはサインイン フローで ID を確認します。 Onfido の結果により、ユーザーがアクセスする製品またはサービスに関する決定が通知されます。

前提条件

作業を開始するには、以下が必要です。

  • お使いの Azure サブスクリプションにリンクされている Azure AD B2C テナント
  • Onfido の試用版アカウント
    • onfido.com の [Contact us] に移動してフォームに記入してください

シナリオの説明

Onfido 統合には、次のコンポーネントが含まれています。

  • Azure AD B2C テナント - テナントで定義されているカスタム ポリシーに基づいてユーザーの資格情報を検証する承認サーバー。 ID プロバイダー (IdP) とも呼ばれます。 これは Onfido クライアント アプリ (ユーザー ドキュメントを収集して Onfido API サービスに送信する) をホストします。
  • Onfido クライアント – Web ページ内にデプロイされた、構成可能な JavaScript クライアント ドキュメント収集ユーティリティ。 ドキュメントのサイズや品質などの詳細を確認します。
  • Intermediate REST API – Onfido API サービスと通信するための Azure AD B2C テナントのエンドポイントを提供します。 これは、データ処理を行い、双方のセキュリティ要件に準拠します。
  • Onfido API サービス – ユーザー ドキュメントを保存して検証するバックエンド サービス。

次のアーキテクチャの図に、この実装を示します。

Onfido アーキテクチャの図。

  1. ユーザーはサインアップして新しいアカウントを作成し、属性を入力します。 Azure AD B2C で属性が収集されます。 Azure AD B2C でホストされている Onfido クライアント アプリがユーザー情報をチェックします。
  2. Azure AD B2C で中間層 API が呼び出され、属性が渡されます。
  3. 中間層 API は属性を収集し、Onfido API 形式に変換します。
  4. Onfido は属性を処理してユーザー識別を検証し、結果を中間層 API に送信します。
  5. 中間層 API は結果を処理し、JavaScript Object Notation (JSON) 形式で Azure AD B2C に関連情報を送信します。
  6. Azure AD B2C は情報を受け取ります。 応答が失敗した場合は、エラー メッセージが表示されます。 応答が成功すると、ユーザーは認証され、ディレクトリに書き込まれます。

Onfido アカウントを作成する

  1. Onfido アカウントを作成します。onfido.com の [Contact us] に移動し、フォームに入力します。
  2. API キーを作成します。[Get started (API v3.5)] に移動します。

Note

このキーは、後で必要になります。

Onfido のドキュメント

ライブ キーは課金対象ですが、テスト用のサンドボックス キーを使用できます。 onfido.com の「Sandbox and live differences」を参照してください。 サンドボックス キーはライブ キーと同じ結果構造を生成しますが、結果は事前に決定されます。 ドキュメントは処理も保存もされません。

Onfido のその他のドキュメントについては、次を参照してください。

Onfido で Azure AD B2C を構成する

API をデプロイする

  1. API コードを Azure サービスにデプロイします。 samples/OnFido-Combined/API/Onfido.Api/ に移動します。 Visual Studio からコードを発行できます。
  2. クロスオリジン リソース共有 (CORS) を設定します。
  3. [Allowed Origin] (許可されたオリジン) として https://{your_tenant_name}.b2clogin.com を追加します。

Note

Microsoft Entra ID を構成するには、デプロイされたサービス URL が必要です。

重要な構成設定の追加

リポジトリにチェックインせずに、Azure アプリ サービスでアプリ設定を構成します。

REST API の設定:

  • アプリケーション設定名: OnfidoSettings:AuthToken
  • 接続元: Onfido アカウント

UI をデプロイする

ストレージの場所を構成する

  1. Azure portal で、コンテナーを作成します。
  2. BLOB コンテナー内の /samples/OnFido-Combined/UI に UI ファイルを格納します。
  3. 作成したストレージ コンテナーへの CORS アクセスを許可します。[設定]>[Allowed Origin] (許可されたオリジン) に移動します。
  4. https://{your_tenant_name}.b2clogin.com」と入力します。
  5. テナント名を、小文字を使用して Azure AD B2C テナント名に置き換えます。 たとえば、「 https://fabrikam.b2clogin.com 」のように入力します。
  6. [許可されたメソッド] で、GET および PUT を選択します。
  7. [保存] を選択します。

UI ファイルを更新する

  1. UI ファイル内の samples/OnFido-Combined/UI/ocean_blue に移動します。
  2. 各 html ファイルを開きます。
  3. {your-ui-blob-container-url} を見つけて、ご自分の UI の ocean_bluedistassets フォルダーの URL に置き換えます。
  4. {your-intermediate-api-url} を見つけて、中間 API App Service の URL に置き換えます。

ファイルをアップロードする

  1. UI フォルダーのファイルを BLOB コンテナーに格納します。
  2. Azure Storage Explorer を使用して Azure マネージド ディスクとアクセス許可を管理します。

Azure AD B2C を構成する

構成値を置き換える

/samples/OnFido-Combined/Policies で次のプレースホルダーを見つけて、ご自分のインスタンスの対応する値に置き換えます。

プレースホルダー 値で置換
{your_tenant_name} テナントの短い名前 yourtenant.onmicrosoft.com の "your tenant"
{your_tenantID} Azure AD B2C の TenantID 01234567-89ab-cdef-0123-456789abcdef
{your_tenant_IdentityExperienceFramework_appid} Azure AD B2C テナントに構成されている IdentityExperienceFramework アプリのアプリ ID 01234567-89ab-cdef-0123-456789abcdef
{your_tenant_ ProxyIdentityExperienceFramework_appid} Azure AD B2C テナントに構成されている ProxyIdentityExperienceFramework アプリのアプリ ID 01234567-89ab-cdef-0123-456789abcdef
{your_tenant_extensions_appid} テナントのストレージ アプリケーションのアプリ ID 01234567-89ab-cdef-0123-456789abcdef
{your_tenant_extensions_app_objectid} テナントのストレージ アプリケーションのオブジェクト ID 01234567-89ab-cdef-0123-456789abcdef
{your_app_insights_instrumentation_key} App Insights インスタンス * のインストルメンテーション キー 01234567-89ab-cdef-0123-456789abcdef
{your_ui_file_base_url} UI フォルダー ocean_bluedistassets の場所の URL https://yourstorage.blob.core.windows.net/UI/
{your_app_service_URL} 設定した App Service URL https://yourapp.azurewebsites.net

\* App Insights は別のテナントに配置できます。 この手順は省略可能です。 必要でない場合は、対応する TechnicalProfiles および OrchestrationSteps を削除します。

Azure AD B2C ポリシーを構成する

Azure AD B2C テナントを設定してポリシーを構成する手順については、「カスタム ポリシー スターター パック」を参照してください。 カスタム ポリシーは、技術プロファイルとユーザー体験を定義するために Azure AD B2C テナントにアップロードされる XML ファイルのセットです。

Note

属性コレクション ページで同意通知を追加することをお勧めします。 本人確認のために情報がサード パーティのサービスに送信されることをユーザーに通知します。

ユーザー フローをテストする

  1. Azure AD B2C テナントを開きます。
  2. [ポリシー][Identity Experience Framework] を選択します。
  3. 以前に作成した SignUpSignIn を選択します。
  4. [ユーザー フローを実行します] を選択します。
  5. [アプリケーション] に対して、登録済みのアプリ (JWT など) を選択します。
  6. [応答 URL] の場合は、リダイレクト URL を選択します。
  7. [ユーザー フローを実行します] を選択します。
  8. サインアップ フローを完了します。
  9. アカウントを作成します。
  10. ユーザー属性が作成されるときに、フロー中に Onfido が呼び出されます。

Note

フローが不完全な場合は、ユーザーがディレクトリに保存されていることを確認してください。

次のステップ