Entra 同期(ソフトマッチ、ドメイン名/テナント名の不一致など)

2024年1月15日

よくEntra同期周りの話をしていると

①オンプレADユーザとEntraIDユーザをどのように紐づけるか

②オンプレADユーザのUPN属性のUPNサフィックスと、EntraIDユーザのUPN属性のUPNサフィックスが異なる場合どうすればよいか

が混在して話されているように思う(自分も混在していた)ので、整理しておく

①オンプレADユーザとEntraIDユーザをどのように紐づけるか

「UPN属性(ログイン時にユーザ名として利用される値)」「proxyAddresses属性」「mail属性」のいづれかを、

オンプレADユーザとEntraIDユーザで合わせて設定しておく(同じ値を設定しておく)

https://jpazureid.github.io/blog/azure-active-directory-connect/aboutSoftMatching/

これにより紐づけがされる(ソフトマッチ)。

紐づけがされた後は、オンプレADユーザの各種属性(上述のUPN属性など)によって、EntraIDユーザの各種属性が上書きされる(一部例外として、オンプレADユーザの「ソースアンカー属性」が、EntraIDユーザの「Immutableid」属性に格納される)

上書きされると問題が発生するケースがある。

例えば、オンプレ環境で、UPNサフィックスを「@test.local」のようにインターネット上で利用できない値を使っている場合です。

EntraIDにおけるUPNサフィックスは、インターネット上で名前解決できる必要がある(仕様)ため、UPN属性が「@test.local」を含む値で上書きされると問題が発生する

②オンプレADユーザのUPN属性のUPNサフィックスと、EntraIDユーザのUPN属性のUPNサフィックスが異なる場合どうすればよいか

対処方法としては2つ

②-1:代替UPNサフィックスを使うパータン

②-2:代替ログインIDを使うパターン

どちらも、紐づけ(ソフトマッチ)が行われた後に、オンプレADユーザの属性値が、EntraIDユーザの属性を上書きする際に、EntraIDユーザのUPN属性の値のみを、そのまま上書きさせない方法です。

②-1は、EntraIDユーザのUPN属性の「UPNサフィックス」部分を、オンプレADユーザのUPN属性のUPNサフィックスとは別の値を設定する方法。(そのため、ユーザ名の@マークより右側のみをオンプレADユーザとは違う値にできる)

②-2は、オンプレADユーザのmail属性を使って、その値を、EntraIDのUPN属性に設定する方法。これはオンプレADユーザのmail属性の値が、そのままEntraIDのUPN属性に設定されるので、任意の値をEntraIDユーザのUPNとして設定できる。

たとえば、オンプレADユーザとして、「taro@local.test」がいた場合、そのオンプレADユーザに紐づくEntraIDユーザとして「yamada@mitsurublog.com」というEntraIDユーザを作成することができる。

(追記)「②-2:代替ログインIDを使うパターン」についての補足

今までの説明は、「既にEntraIDユーザが存在している」ことが前提となっていました。例えば、新規にEntraIDユーザを、オンプレADからの同期(Entra コネクト利用)により、作成するケースにおいて、オンプレADユーザと新規EntraIDユーザのUPN属性値を異なる値に設定することはできるのでしょうか。

結論として、代替ログインIDを使うことで可能となります。

以下が例です。

①以下のユーザーをオンプレミス AD 側に作成します。
オンプレミス AD 側ユーザーのプロパティ
UPN: 123456@sec.office.local.test.co.jp
Mail: taro.yamada@local.test.co.jp

②このユーザーを Entra ID側に同期します。
このユーザーは Entra ID 側に対応するユーザーが存在しないため、新規にEntra ID側にユーザーアカウントが作成されます。
その際、 Entra ID側に新たに作成されるユーザーの UPN は、オンプレミス AD ユーザーの mail 属性をもとに作成されるため、以下のような属性値にて作成されます。
Entra ID 側ユーザーのプロパティ
UPN: taro.yamada@local.test.co.jp
Mail: taro.yamada@local.test.co.jp

代替ログインIDによる同期(「既存Entra IDユーザとのソフトマッチ&mail属性による上書き」、「オンプレADユーザからのEntra コネクトによるEntra IDユーザの新規作成」のどちらも)は、P1/P2などの上位ラインセンスは不要で、Entra ID Freeライセンスで実現できます。

Azure,Entra

Posted by mitsuru