次の方法で共有


チュートリアル: Datawiza を使用して Azure Active Directory B2C を構成し、セキュリティで保護されたハイブリッド アクセスを提供する

重要

2025 年 5 月 1 日より、Azure AD B2C は新規のお客様向けに購入できなくなります。 詳細については、FAQ を参照してください

このチュートリアルでは、Azure Active Directory B2C (Azure AD B2C) と Datawiza アクセス プロキシ (DAP) を統合する方法について説明します。これにより、シングル サインオン (SSO) ときめ細かいアクセス制御が可能になり、Azure AD B2C がオンプレミスのレガシ アプリケーションを保護できるようになります。 このソリューションを使用すると、企業はアプリケーションを書き換えることなく、レガシから Azure AD B2C に移行できます。

[前提条件]

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

  • Microsoft Entra サブスクリプション
  • Azure サブスクリプションにリンクされた Azure AD B2C テナント
  • DAB を実行するには、アプリケーションを開発、出荷、実行するためのオープン プラットフォームである Docker が必要です
    • アプリケーションは、仮想マシンやベア メタルなどのプラットフォームで実行できます
  • レガシ ID システムから Azure AD B2C に移行するオンプレミス アプリケーション
    • このチュートリアルでは、DAB はアプリケーションと同じサーバーにデプロイされます。
    • アプリケーションは localhost: 3001 で実行され、DAP は localhost を介してアプリケーションへのトラフィックをプロキシします: 9772
    • アプリケーション トラフィックが最初に DAB に到達し、次にアプリケーションにプロキシされます

シナリオの説明

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

  • Azure AD B2C: ユーザー資格情報を確認する承認サーバー
    • 認証されたユーザーは、Azure AD B2C ディレクトリに格納されているローカル アカウントを使用してオンプレミス アプリケーションにアクセスします
  • Datawiza アクセス プロキシ (DAP):HTTP ヘッダーを介してアプリケーションに ID を渡すサービス
  • Datawiza Cloud Management Console (DCMC):DAB 用の管理コンソール。 DCMC UI と RESTful API は、DAB 構成とアクセス制御ポリシーの管理に役立ちます

次のアーキテクチャ図は、実装を示しています。

ハイブリッド アプリケーションに安全にアクセスするための Azure AD B2C と Datawiza の統合のアーキテクチャの図。

  1. ユーザーは、オンプレミス アプリケーションへのアクセスを要求します。 DAB は要求をアプリケーションにプロキシします。
  2. DAP によって、ユーザーの認証状態がチェックされます。 セッション トークンまたは無効なトークンがない場合、ユーザーは認証のために Azure AD B2C にアクセスします。
  3. Azure AD B2C は、Azure AD B2C テナントでの DAP 登録中に指定されたエンドポイントにユーザー要求を送信します。
  4. DAP はアクセス ポリシーを評価し、アプリケーションに転送される HTTP ヘッダーの属性値を計算します。 DAP は、ID プロバイダー (IdP) を呼び出して、ヘッダー値を設定する情報を取得する場合があります。 DAP はヘッダー値を設定し、要求をアプリケーションに送信します。
  5. ユーザーは、アプリケーションにアクセスして認証されます。

Datawiza にオンボードする

従来のオンプレミス アプリを Azure AD B2C と統合するには、 Datawiza にお問い合わせください。

Azure AD B2C テナントを構成する

docs.datawiza.com に移動して次の手順を実行します。

  1. Azure AD B2C テナントに Web アプリケーションを登録し、サインアップとサインインのユーザー フローを構成する方法について説明します。 詳細については、 Azure AD B2C に関するページを参照してください。

  2. Azure portal でユーザー フローを構成します。

DCM で DAB を設定する場合は、テナント名、ユーザー フロー名、クライアント ID、クライアント シークレットが必要です。

DCMC でアプリケーションを作成する

  1. DCMC で、アプリケーションを作成し、このアプリケーションの PROVISIONING_KEYPROVISIONING_SECRET のキー ペアを生成します。 Datawiza Cloud Management Console を参照してください。

  2. Azure AD B2C を使用して IdP を構成します。 パート 1: Azure AD B2C の構成を参照してください。

    IdP 構成値のスクリーンショット。

ヘッダー ベースのアプリケーションで DAB を実行する

Docker または Kubernetes を使用して DAP を実行できます。 ユーザーがヘッダーベースのサンプル アプリケーションを作成するには、Docker イメージを使用します。

詳細情報: DAP と SSO の統合を構成するには、「アプリを使用して Datawiza アクセス プロキシをデプロイする」を参照してください

サンプルの Docker イメージ docker-compose.yml file が提供されています。 コンテナー レジストリにサインインして、DAP イメージとヘッダー ベースのアプリケーションをダウンロードします。

  1. アプリを使用して Datawiza アクセス プロキシをデプロイします

    version: '3'
    
    services:
    datawiza-access-broker:
    image: registry.gitlab.com/datawiza/access-broker
    container_name: datawiza-access-broker
    restart: always
    ports:
      - "9772:9772"
    environment:
      PROVISIONING_KEY: #############################
      PROVISIONING_SECRET: #############################
    
    header-based-app:
    image: registry.gitlab.com/datawiza/header-based-app
    container_name: ab-demo-header-app
    restart: always
    environment:
      CONNECTOR: B2C
    ports:
      - "3001:3001"
    
  2. ヘッダーベースのアプリケーションでは、Azure AD B2C で SSO が有効になっています。

  3. ブラウザーを開き、「 http://localhost:9772/」と入力します。

  4. Azure AD B2C サインイン ページが表示されます。

ヘッダー ベースのアプリケーションにユーザー属性を渡す

DAB は IdP からユーザー属性を取得し、ヘッダーまたは Cookie を使用してアプリケーションに渡します。 ユーザー属性を構成すると、ユーザー属性の緑色のチェック マークが表示されます。

渡されたユーザー属性のスクリーンショット。

詳細情報: 電子メール アドレス、名、姓などのユーザー属性をヘッダー ベースのアプリケーションに 渡します

フローをテストする

  1. オンプレミスのアプリケーション URL に移動します。
  2. DAP は、ユーザー フローで構成したページにリダイレクトされます。
  3. 一覧から IdP を選択します。
  4. プロンプトで、資格情報を入力します。 必要に応じて、Microsoft Entra 多要素認証トークンを含めます。
  5. Azure AD B2C にリダイレクトされ、アプリケーション要求が DAP リダイレクト URI に転送されます。
  6. DAB はポリシーを評価し、ヘッダーを計算し、アップストリーム アプリケーションにユーザーを送信します。
  7. 要求されたアプリケーションが表示されます。

次のステップ