Jumio と Azure Active Directory B2C を構成するチュートリアル

このチュートリアルでは、Azure Active Directory B2C (Azure AD B2C) と、顧客データの保護に役立つリアルタイムの自動 ID 検証を可能にする ID 検証サービスである Jumio を統合する方法について説明します。これは、す。

前提条件

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

シナリオの説明

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

  • Azure AD B2C: ユーザー資格情報を検証する承認サーバー (ID プロバイダー (IdP) とも呼ばれます)
  • Jumio - ユーザー ID の詳細を確認します
  • 中間 REST API - Azure AD B2C と Jumio の統合を実装するために使用します
  • Azure Blob ストレージ - Azure AD B2C ポリシーのカスタム UI ファイルを取得するために使用します

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

Jumio と統合された Azure AD B2C のアーキテクチャの図

  1. ユーザーがサインインまたはサインアップし、アカウントを作成します。 Azure AD B2C でユーザー属性が収集されます。
  2. Azure AD B2C で中間層 API が呼び出され、ユーザー属性が渡されます。
  3. 中間層 API でユーザー属性が Jumio API 形式に変換され、その属性が Jumio に送信されます。
  4. Jumio で属性が処理され、結果が中間層 API に返されます。
  5. 中間層 API により結果が処理され、関連情報が Azure AD B2C に送信されます。
  6. Azure AD B2C で情報が受信されます。 応答が失敗した場合は、エラー メッセージが表示されます。 応答が成功すると、ユーザーは認証され、ディレクトリに書き込まれます。

Jumio アカウントを作成する

Jumio アカウントを作成するには、jumio.com の [Contact] ページに移動します。

Azure AD B2C と Jumio を構成する

Jumio アカウントを作成したら、それを使用して Azure AD B2C を構成します。

API をデプロイする

samples/Jumio/API/Jumio.Api/ から、Azure サービスにコードをデプロイします。 Visual Studio からコードを発行できます。

Note

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

クライアント証明書をデプロイする

クライアント証明書は Jumio API 呼び出しの保護に役立ちます。

  1. 次の PowerShell サンプル コードを使用して、自己署名証明書を作成します。

    $cert = New-SelfSignedCertificate -Type Custom -Subject "CN=Demo-SigningCertificate" -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.3") -KeyUsage DigitalSignature -KeyAlgorithm RSA -KeyLength 2048 -NotAfter (Get-Date).AddYears(2) -CertStoreLocation "Cert:\CurrentUser\My"
    $cert.Thumbprint
    $pwdText = "Your password"
    $pwd = ConvertTo-SecureString -String $pwdText -Force -AsPlainText
    Export-PfxCertificate -Cert $Cert -FilePath "{your-local-path}\Demo-SigningCertificate.pfx" -Password $pwd.
    
    
  2. 証明書は {your-local-path} に指定された場所にエクスポートされます。

  3. 証明書を Azure App Service にインポートするには、「プライベート証明書のアップロード」を参照してください。

署名キーと暗号化キーを作成する

  1. 64 文字を超える長さのランダムな文字列を作成します (文字と数字のみ)。

    例: C9CB44D98642A7062A0D39B94B6CDC1E54276F2E7CFFBF44288CEE73C08A8A65

  2. 次の PowerShell スクリプトを使用して、文字列を作成します。

-join ((0x30..0x39) + ( 0x41..0x5A) + ( 0x61..0x7A) + ( 65..90 ) | Get-Random -Count 64  | % {[char]$_})

API を構成する

リポジトリにチェックインせずに、Azure App Service でアプリケーション設定を構成できます。 REST API に次の設定を指定する必要があります。

アプリケーションの設定 source Notes
JumioSettings:AuthUsername Jumio アカウントの構成 該当なし
JumioSettings:AuthPassword Jumio アカウントの構成 該当なし
AppSettings:SigningCertThumbprint 作成された自己署名証明書の拇印 該当なし
AppSettings:IdTokenSigningKey PowerShell を使用して作成された署名キー 該当なし
AppSettings:IdTokenEncryptionKey PowerShell を使用して作成された暗号化キー 該当なし
AppSettings:IdTokenIssuer JWT トークンの発行者 (GUID 値が優先されます) 該当なし
AppSettings:IdTokenAudience JWT トークンの対象ユーザー (GUID 値が優先されます) 該当なし
AppSettings:BaseRedirectUrl Azure AD B2C ポリシー ベース URL https://{your-tenant-name}.b2clogin.com/{your-application-id}
WEBSITE_LOAD_CERTIFICATES 作成された自己署名証明書の拇印 該当なし

UI をデプロイする

  1. ストレージ アカウントで BLOB ストレージ コンテナーを設定します。
  2. UI ファイルを /samples/Jumio/UI/ からお使いの BLOB コンテナーに格納します。

UI ファイルを更新する

  1. UI ファイル内の /samples/Jumio/UI/ocean_blue/ に移動します。
  2. 各 HTML ファイルを開きます。
  3. {your-ui-blob-container-url} を見つけて、お使いの BLOB コンテナー URL に置き換えます。
  4. {your-intermediate-api-url} を見つけて、中間 API App Service の URL に置き換えます。

Note

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

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

  1. /samples/Jumio/Policies/ の Azure AD B2C ポリシーに移動します。
  2. カスタム ポリシー スターター パックの手順を使用して、LocalAccounts スターター パックをダウンロードします。
  3. Azure AD B2C テナントのポリシーを構成します。

注意

ポリシーを更新して、お使いのテナントに関連付けてください。

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

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

ヒント

フローが不完全な場合は、ユーザーがディレクトリに保存されているか、またはそうでないか確認してください。

次のステップ