Microsoft Entra オンプレミス アプリケーション ID プロビジョニングのアーキテクチャ

概要

次の図は、オンプレミス アプリケーション プロビジョニングのしくみを示しています。

オンプレミスのアプリケーション プロビジョニングのアーキテクチャを示す図。

オンプレミス アプリケーションへのユーザー プロビジョニングには、主要なコンポーネントが 3 つあります。

  • プロビジョニング エージェントは、Microsoft Entra ID とオンプレミス環境とを接続する役割を担います。
  • Extensible Connectivity (ECMA) コネクタ ホストは、Microsoft Entra ID からのプロビジョニング要求を、ターゲット アプリケーションへの要求に変換します。 Microsoft Entra ID とアプリケーションとの間のゲートウェイとして機能します。 これを使用して、Microsoft Identity Manager で使用される既存の ECMA2 コネクタをインポートすることができます。 SCIM アプリケーションまたは SCIM ゲートウェイを構築済みである場合、ECMA ホストは必要ありません。
  • Microsoft Entra プロビジョニング サービスは同期エンジンとして機能します。

Microsoft Identity Manager の同期は必要ありません。 ただし、ECMA ホストに ECMA2 コネクタをインポートする前の構築とテストに使用することができます。 ECMA2 コネクタは MIM に固有のもので、ECMA ホストはプロビジョニング エージェントでの使用に固有のものです。

ファイアウォールの要件

企業ネットワークへの受信接続を開く必要がありません。 プロビジョニング エージェントは、プロビジョニング サービスへのアウトバウンド接続のみを使用します。つまり、受信接続用のファイアウォール ポートを開放する必要はありません。 接続はすべてアウトバウンドであり、セキュリティで保護されたチャネル上で行われるため、境界 (DMZ) ネットワークは不要です。

プロビジョニング エージェントに必要な送信エンドポイントについて詳しく 説明します

ECMA Connector Host のアーキテクチャ

ECMA Connector Host には、オンプレミスのプロビジョニングを実現するために使用されるいくつかの領域があります。 次の図は、これらの個々の領域を示す概念図です。 下の表で、各領域について詳細に説明しています。

ECMA コネクタ ホスト

Area 説明
エンドポイント Microsoft Entra プロビジョニング サービスとの通信およびデータ転送を実行します
メモリ内キャッシュ オンプレミスのデータ ソースからインポートしたデータを格納するために使用されます
自動同期 ECMA Connector Host とオンプレミスのデータソース間の非同期データ同期を提供します
ビジネス ロジック ECMA Connector Host のすべてのアクティビティを調整するために使用されます。 自動同期の時刻は、ECMA ホストで構成できます。 これはプロパティ ページにあります。

アンカー属性と識別名について

次の情報は、アンカー属性と、genericSQL コネクタで使用される識別名について説明するために提供されています。

アンカー属性は、変更されないオブジェクトの種類の一意の属性であり、ECMA Connector Host のメモリ内キャッシュ内でそのオブジェクトを表します。

識別名 (DN) は、ディレクトリ階層内のオブジェクトの現在の場所を示すことによって、それを一意に識別する名前です。 または、パーティション内の SQL を使用します。 名前は、アンカー属性をディレクトリ パーティションのルートに連結して形成されます。

Active Directory や LDAP などのための従来の形式の DN では、以下のようなものが想定されます。

CN=Lola Jacobson,CN=Users,DC=contoso,DC=com

ただし、階層型ではなくフラットである SQL などのデータ ソースでは、DN がテーブルのいずれかに既に存在している必要があります。または、ECMA Connector Host に提供する情報から DN を作成する必要があります。

これは、genericSQL コネクタを構成するときにチェックボックスで [ 自動生成 ] をオンにすることで実現できます。 DN を自動生成することを選択すると、ECMA ホストによって LDAP 形式 (CN=<anchorvalue>,OBJECT=<type>) で DN が生成されます。 この場合、[接続] ページで [DN is Anchor] (DN はアンカー) がオフになっていることも前提としています。

[DN is Anchor]\(DN はアンカー\) がオフになっている

genericSQL コネクタでは、LDAP 形式を使用して DN を設定することが想定されています。 汎用 SQL コネクタでは、コンポーネント名が "OBJECT=" の LDAP スタイルを使用しています。 これにより、パーティションを使用できるようになります (各オブジェクトの種類はパーティションです)。

ECMA Connector Host は現在、USER オブジェクトの種類のみをサポートしているため、OBJECT=<type> は OBJECT=USER になります。 したがって、アンカー値が ljacobson のユーザーの DN は次のようになります。

CN=ljacobson,OBJECT=USER

ユーザー作成ワークフロー

  1. Microsoft Entra プロビジョニング サービスは、ユーザーが存在するかどうかを確認するために ECMA Connector Host に対してクエリを実行します。 一致する属性をフィルターとして使用します。 この属性は、Microsoft Entra 管理センターのエンタープライズ アプリケーション -> オンプレミス プロビジョニング -> プロビジョニング -> 属性照合で定義されます。 照合の優先順位 1 によって示されています。 1 つ以上の一致する属性を定義し、優先順位に基づいて優先順位を付けることができます。 一致属性を変更する必要がある場合は、これを行うこともできます。 一致する属性

  2. ECMA Connector Host は GET 要求を受け取り、その内部キャッシュでクエリを実行して、ユーザーが存在し、インポート済みかどうかを確認します。 これは、上記の一致する属性を使用して行われます。 複数の一致する属性を定義した場合、Microsoft Entra プロビジョニング サービスによって各属性に対する GET 要求が送信され、ECMA ホストによって、その属性が発見されるまで、キャッシュが一致しているかどうかの確認が行われます。

  3. ユーザーが存在しない場合、Microsoft Entra ID ではユーザーを作成するために POST 要求が行われます。 ECMA Connector Host は、HTTP 201 を使用して Microsoft Entra ID に応答を送り返し、ユーザーに ID を提供します。 この ID は、[object types](オブジェクトの種類) ページで定義されているアンカー値から派生します。 このアンカーは、今後および後続の要求のために ECMA Connector Host に対してクエリを実行するために Microsoft Entra ID によって使用されます。

  4. Microsoft Entra ID でユーザーに変更が加えられた場合、Microsoft Entra ID は、手順 1 の一致する属性ではなく、前の手順のアンカーを使用してユーザーを取得する GET 要求を行います。 これにより、たとえば、Microsoft Entra ID のユーザーとアプリの間のリンクを壊さずに UPN を変更することができます。

エージェントのベスト プラクティス

    • エージェントと Azure との間のアウトバウンド TLS 通信に対しては、どのような形式のインライン検査も行わないでください。 この種のインライン検査では、通信フローが低下します。
  • エージェントは Azure とアプリケーションの両方と通信を行う必要があるため、エージェントの配置場所はこの 2 つの接続の待ち時間に影響します。 各ネットワーク接続を最適化することによって、エンド ツー エンドのトラフィック待機時間を最小化することができます。 各接続を最適化する方法は次のとおりです。
  • ホップの両端間の距離を短縮します。
  • 経由する適切なネットワークを選択します。 たとえば、パブリック インターネットではなく、プライベート ネットワークを経由した方が、専用リンクのため高速である可能性があります。
  • エージェントは、セキュリティで保護された通信に証明書を使用します。 有効期限の動作や運用環境での推奨事項など、システムが使用する 2 つの証明書の詳細については、「 証明書の管理」を参照してください。

証明書の管理

オンプレミスのアプリケーション プロビジョニングは、2 つの異なる証明書に依存します。 両方の証明書を理解することは、運用環境のデプロイを計画し、エージェントの正常性を監視し、サービスの中断を防ぐのに役立ちます。

ECMA コネクタ ホスト証明書

Microsoft Entra ECMA コネクタ ホストは、プロビジョニング エージェントが呼び出すポート 8585 (https://localhost:8585/ecma2host_<connectorName>/scim) で HTTPS エンドポイントを公開します。 ECMA コネクタ ホストが使用する TLS 証明書は、そのエンドポイントをセキュリティで保護します。 Microsoft ECMA2Host 構成ウィザードを初めて実行すると、証明書の作成を求めるメッセージが表示されます。そのためには、Generate certificate を選択します。 自動生成された証明書は自己署名され、証明書のサブジェクト別名 (SAN) はホスト名と一致します。

ECMA コネクタ ホスト証明書に関する重要な事実:

  • 自己署名証明書はテスト専用です。 既定では 2 年で期限切れになり、取り消すことはできません。 Microsoftでは、運用環境で使用するために、信頼された証明機関 (CA) によって発行された証明書を使用することをお勧めします。
  • 証明書のサブジェクトは、ECMA コネクタ ホストがインストールされているWindows サーバーのホスト名と一致する必要があります。 詳細については、 SSL 証明書を参照してください。
  • 期限切れの証明書を手動で置き換えます。 ECMA ホストの [設定] タブに移動して、証明書の有効期限を表示します。 証明書の有効期限が切れている場合は、[ 証明書の生成 ] を選択して新しい証明書を作成します。 詳細なガイダンスについては、「 テスト接続の問題のトラブルシューティング」を参照してください。

プロビジョニング エージェント登録証明書

プロビジョニング エージェントは、インストール時に個別の証明書を使用して、Microsoft ハイブリッド ID サービス (HIS) に自身を登録します。 エージェントはセットアップ中にこの証明書を作成し、Microsoft Entra トークンを使用して、エージェントと証明書の両方を HIS 登録サービスに登録します。 エージェントを HIS に登録する方法の詳細については、エージェントの インストールを参照してください。

Important

クラウド同期は、関連するクリーンアップ シナリオを文書化します。クラウド同期エージェントがアンインストールまたは停止され、その証明書の有効期限が切れると、エージェントは完全に削除され、Microsoft サービスと対話できなくなります。 詳細については、「 アンインストール後のポータルからのエージェントの削除」を参照してください。 オンプレミスアプリケーションのプロビジョニングについては、登録証明書の有効期間または復旧手順に関するガイダンスが必要な場合は、Microsoftサポートにお問い合わせください。

サービス中断のリスクを最小限に抑えるには:

  • Microsoft Entra 管理センターを使用してエージェントの正常性を定期的に監視します。
  • 2 年間の自己署名有効期限が切れる前に、ECMA コネクタ ホスト証明書の交換を計画します。
  • 運用環境のデプロイでは、自己署名 ECMA コネクタ ホスト証明書を、信頼された CA によって発行された証明書に置き換えます。

高可用性

高可用性/フェールオーバーのシナリオについては、次の情報を提供します。

ECMA コネクタを使用するオンプレミス アプリの場合: 推奨されるのは、データ センターごとに 1 つのアクティブ なエージェントと 1 つのパッシブ エージェント (構成済み、ただし停止済み、Microsoft Entra のエンタープライズ アプリには割り当てられない) です。

フェールオーバーを実行するときは、次の操作を行うことをお勧めします。

  1. アクティブ エージェント (A) を停止します。
  2. エンタープライズ アプリケーションからエージェント A の割り当てを解除します。
  3. パッシブ エージェント (B) を再起動します。
  4. エージェント B をエンタープライズ アプリケーションに割り当てます。

ECMA コネクタを使用した高可用性の図。

SCIM コネクタを使用するオンプレミス アプリの場合: アプリケーションごとに 2 つのアクティブなエージェントを使用することをお勧めします。

SCIM コネクタを使用した高可用性の図。

プロビジョニング エージェントに関する質問

ここでは、いくつかの一般的な質問に回答します。

プロビジョニング エージェントのバージョンを確認する方法を教えてください。

  1. プロビジョニング エージェントがインストールされている Windows サーバーにサインインします。
  2. コントロール パネルに移動>プログラムのインストールまたは変更を行います。
  3. Microsoft Entra Connect プロビジョニング エージェントのエントリに対応するバージョンを探します。

Microsoft Entra Connect や Microsoft Identity Manager を実行しているのと同じサーバーにプロビジョニング エージェントをインストールできますか?

はい。 Microsoft Entra Connect や Microsoft Identity Manager を実行しているのと同じサーバーにプロビジョニング エージェントをインストールすることができます。ただし、それらは必須ではありません。

送信 HTTP 通信にプロキシ サーバーを使用するようにプロビジョニング エージェントを構成するにはどうすればよいですか?

プロビジョニング エージェントは送信プロキシの使用をサポートしています。 エージェント 構成ファイルC:\Program Files\Microsoft Azure AD Connect Provisioning Agent\AADConnectProvisioningAgent.exe.configを編集して構成できます。終了 </configuration> タグの直前に、ファイルの末尾に次の行を追加します。 [proxy-server] 変数と [proxy-port] 変数をお使いのプロキシ サーバー名とポート値に置き換えてください。

 <system.net>
  <defaultProxy enabled="true" useDefaultCredentials="true">
    <proxy
     usesystemdefault="true"
     proxyaddress="http://[proxy-server]:[proxy-port]"
     bypassonlocal="true"
    />
   </defaultProxy>
 </system.net>

プロビジョニング エージェントが Microsoft Entra テナントと通信できること、ファイアウォールがエージェントに必要なポートをブロックしていないことを確認するにはどうすればよいですか?

必要なポートがすべて開いているかどうかを確認することもできます。

プロビジョニング エージェントをアンインストールするにはどうすればよいですか?

  1. プロビジョニング エージェントがインストールされている Windows サーバーにサインインします。
  2. コントロール パネルに移動>プログラムのインストールまたは変更を行います。
  3. 次のプログラムをアンインストールします。
  • Microsoft Entra Connect プロビジョニング エージェント
  • Microsoft Entra Connect エージェント アップデーター
  • Microsoft Entra Connect プロビジョニング エージェント パッケージ

エージェントの更新

Microsoft、機能、修正プログラム、および更新プログラムを使用して、プロビジョニング エージェントの新しいバージョンを定期的にリリースします。 現在のバージョン履歴とリリース ノートについては、「Microsoft Entra Connect Provisioning Agent: Version release history」を参照してください。

Important

現在、プロビジョニング エージェントでは、オンプレミスのアプリケーション プロビジョニング シナリオの自動更新はサポートされていません。 新しいバージョンがリリースされたら、エージェントを手動で更新する必要があります。 詳細については、既知の問題に関する記事の 「プロビジョニング エージェント 」を参照してください。

エージェントを最新の状態に保つには、

  • Microsoft Entra 管理センターまたは プロビジョニング エージェントのリリース履歴を使用して、新しいバージョンを定期的に確認します。
  • スケジュールされたメンテナンス期間中にエージェントの更新を計画して、プロビジョニングへの影響を最小限に抑えます。
  • Microsoft では、エージェントの最新バージョンと 1 つ前のバージョンを直接サポートしています。 サポートされているこれらのバージョン内に留まり、必要なときにサポートを受けることができます。

次のステップ