次の方法で共有


ID 同期と重複属性の回復性

重複属性の回復性は、Microsoft の同期ツールの 1 つを実行するときに、UserPrincipalName と SMTP ProxyAddress の競合によって引き起こされる摩擦を排除する Microsoft Entra ID の機能です。

これらの 2 つの属性は、特定の Microsoft Entra テナント内のすべての ユーザーグループ、または Contact オブジェクトで一意である必要があります。

Note

UPN を持てるのは、User のみです。

この機能が有効にする新しい動作は同期パイプラインのクラウド部分にあるため、クライアントに依存せず、Microsoft Entra Connect、DirSync、MIM + Connector などの Microsoft 同期製品に関連します。 このドキュメントでは、これらの製品のいずれかを表すために、一般的な用語 "同期クライアント" を使用します。

現在の動作

この一意性制約に違反する UPN または ProxyAddress 値で新しいオブジェクトをプロビジョニングしようとすると、Microsoft Entra ID はそのオブジェクトの作成をブロックします。 同様に、一意でない UPN または ProxyAddress でオブジェクトが更新されると、更新は失敗します。 同期クライアントは、エクスポート サイクルごとにプロビジョニングの試行または更新を再試行し、競合が解決されるまで失敗し続けます。 試行のたびにエラー レポートの電子メールが生成され、エラーが同期クライアントによって記録されます。

重複属性の回復性による動作

属性が重複するオブジェクトのプロビジョニングまたは更新を完全に失敗させる代わりに、Microsoft Entra ID は一意性の制約に違反する重複属性を "検疫" します。 この属性が、UserPrincipalName のように、プロビジョニングに必要な場合、サービスはプレースホルダー値を割り当てます。 これらの一時的な値の形式は、
<OriginalPrefix>+<4DigitNumber>@<InitialTenantDomain>.onmicrosoft.com.

属性の回復性プロセスでは、UPN と SMTP ProxyAddress の値のみが処理されます。

ProxyAddressなど、属性が必要ない場合、Microsoft Entra ID は競合属性を検疫し、オブジェクトの作成または更新を続行するだけです。

属性の検疫時に、競合に関する情報は、従来の動作で使用されるのと同じエラー レポート電子メールで送信されます。 ただし、この情報はエラー レポートに 1 回だけ表示されます。検疫が発生しても、今後のメールには記録されません。 また、このオブジェクトのエクスポートが成功するため、同期クライアントはエラーをログに記録せず、以降の同期サイクル時に作成/更新操作を再試行しません。

この動作をサポートするために、User、Group、Contact オブジェクト クラスに新しい属性が追加されます。
DirSyncProvisioningErrors

これは複数値の属性であり、普通に追加されたら一意性の制約に違反する、競合している属性を格納します。 Microsoft Entra ID でバックグラウンド タイマー タスクが有効になっています。このタスクは 1 時間ごとに実行され、解決された重複する属性の競合を検索し、問題の属性を検疫から自動的に削除します。

重複属性の回復性の有効化

重複属性の回復性は、すべての Microsoft Entra テナントの新しい既定の動作です。 2016 年 8 月 22 日以降に初めて同期を有効にしたすべてのテナントに対しては、既定でオンになっています。 この日付より前に同期を有効にしたテナントでは、機能がバッチで有効になっています。 このロールアウトは 2016 年 9 月に開始され、機能が有効になっている特定の日付を含む電子メール通知が各テナントの技術通知連絡先に送信されます。

Note

重複属性の回復性を有効にすると、無効にすることはできません。

この機能がテナントで有効になっているかどうかを確認するには、Azure Active Directory PowerShell モジュールの最新バージョンをダウンロードして、次のように実行することによって、有効にすることができます。

Get-MsolDirSyncFeatures -Feature DuplicateUPNResiliency

Get-MsolDirSyncFeatures -Feature DuplicateProxyAddressResiliency

Note

テナントに対して有効にする前に、Set-MsolDirSyncFeature コマンドレットを使用して重複属性の回復性機能を事前に有効にすることはできなくなりました。 この機能をテストできるようにするには、新しい Microsoft Entra テナントを作成する必要があります。

Note

Azure AD および MSOnline PowerShell モジュールは、2024 年 3 月 30 日の時点で非推奨となります。 詳細については、非推奨の最新情報を参照してください。 この日以降、これらのモジュールのサポートは、Microsoft Graph PowerShell SDK への移行支援とセキュリティ修正プログラムに限定されます。 非推奨になるモジュールは、2025 年 3 月 30 日まで引き続き機能します。

Microsoft Entra ID (旧称 Azure AD) を使用するには、Microsoft Graph PowerShell に移行することをお勧めします。 移行に関する一般的な質問については、「移行に関する FAQ」を参照してください。 注: MSOnline のバージョン 1.0.x では、2024 年 6 月 30 日以降に中断が発生する可能性があります。

DirSyncProvisioningErrors を持つオブジェクトの特定

重複するプロパティの競合によってこれらのエラーが発生したオブジェクトを特定するための方法は、現在、2 つあります。それは、Azure Active Directory PowerShell と Microsoft 365 管理センター です。 今後のレポートに基づいてポータルを追加する拡張が予定されています。

Azure Active Directory PowerShell

このトピックの PowerShell コマンドレットには、以下のような特徴があります。

  • 以下のすべてのコマンドレットが、大文字と小文字を区別します。
  • –ErrorCategory PropertyConflict を常に含める必要があります。 現在、 ErrorCategoryには他の型はありませんが、今後拡張される可能性があります。

まず、 Connect-MsolService を実行し、テナント管理者の資格情報を入力します。

次に、以下のコマンドレットと演算子を使用して、エラーをさまざまな方法で表示します。

  1. すべて表示
  2. プロパティの型ごと
  3. 競合する値ごと
  4. 文字列検索を使用
  5. 並べ替え
  6. 制限した数、またはすべて

すべて表示

接続されたら、テナント内の属性プロビジョニング エラーの全般的な一覧を表示するために、次のように実行します。

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict

これにより、次のような結果が生成されます。
Get-MsolDirSyncProvisioningError

プロパティの型ごと

プロパティの型ごとにエラーを表示するには、UserPrincipalName 引数か ProxyAddresses 引数に、次のように -PropertyName フラグを追加します。

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict -PropertyName UserPrincipalName

または

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict -PropertyName ProxyAddresses

競合する値ごと

特定のプロパティに関連するエラーを表示するには、次のように -PropertyValue フラグを追加します (このフラグを追加する場合は、 -PropertyName も使用する必要があります)。

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict -PropertyValue User@domain.com -PropertyName UserPrincipalName

広範な文字列検索を行うには、 -SearchString フラグを使用します。 このフラグは上記のすべてのフラグとは別に使用できますが、 -ErrorCategory PropertyConflict は例外です。このフラグとは常に一緒に使用する必要があります。

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict -SearchString User

制限した数、またはすべて

  1. MaxResults <Int> を使用して、クエリの値を特定の数までに制限できます。
  2. All は、多数のエラーが存在する場合に使用すると、すべての結果を確実に取得できます。

Get-MsolDirSyncProvisioningError -ErrorCategory PropertyConflict -MaxResults 5

Microsoft 365 管理センター

Microsoft 365 管理センターでは、ディレクトリ同期エラーを表示できます。 Microsoft 365 管理センターのレポートには、これらのエラーを持つ User オブジェクトだけが表示されます。 グループ連絡先間の競合に関する情報は表示されません。

Microsoft 365 管理センターでディレクトリ同期エラーを示すスクリーンショット。

Microsoft 365 管理センターでディレクトリ同期エラーを表示する方法については、「Microsoft 365 でディレクトリ同期エラーを確認する」を参照してください。

ID 同期のエラー レポート

重複する属性の競合を持つオブジェクトがこの新しい動作で処理されると、テナントの技術通知連絡先に送信される標準の ID 同期エラー レポート電子メールに通知が含まれます。 ただし、この動作には重要な変更があります。 以前は、重複属性の競合に関する情報が、競合が解決されるまで、後続のすべてのエラー レポートに含められました。 この新しい動作では、特定の競合のエラー通知は、競合する属性が検疫されたときに 1 回だけ表示されます。

ProxyAddress の競合に関する電子メール通知の例を、次に示します。
ProxyAddress の競合に関する電子メール通知の例を示すスクリーンショット。

競合の解決

これらのエラーのトラブルシューティング戦略と解決方法は、過去に重複する属性エラーが処理された方法と変わるべきではありません。 唯一の違いは、タイマー タスクがサービス側のテナント全体をスイープして、競合が解決したら問題の属性を適切なオブジェクトに自動的に追加することです。

次の記事では、さまざまなトラブルシューティングと解決戦略の概要を示しています。Office 365 でのディレクトリ同期を妨げる重複または無効な属性に関する記事

既知の問題

これらの既知の問題が、データの損失やサービスの低下を引き起こすことはありません。 いくつかは見た目の問題で、その他には、競合属性が検疫されずに、一般的な "回復前" 重複属性エラーがスローされる原因となる問題や、手動での修正を必要とするエラーを引き起こす問題があります。

主要な動作:

  1. 特定の属性構成を持つオブジェクトは、検疫されている重複属性ではなく、エクスポート エラーを受信し続けます。
    次に例を示します。

    a. AD で、UPN を Joe@contoso.com、ProxyAddress を smtp:Joe@contoso.com として新しいユーザーが作成されました

    b. このオブジェクトのプロパティが、ProxyAddress が SMTP:Joe@contoso.com である既存の Group と競合します。

    c. エクスポート時に、競合属性を検疫するのではなく、ProxyAddress 競合エラーがスローされます。 回復性機能が有効になる前と同様に、後続の同期サイクルごとに操作が再試行されます。

  2. オンプレミスで 2 つの Group が同じ SMTP アドレスで作成された場合、一方は標準の重複 ProxyAddress エラーのために、最初の試行でプロビジョニングに失敗します。 ただし、重複している値は、次の同期サイクル時に適切に検疫されます。

Office ポータル レポート:

  1. UPN 競合セットの 2 つのオブジェクトの詳細なエラー メッセージは、同一です。 つまり、両方で UPN が変更/検疫されたと示されますが、実際には一方だけでデータが変更されています。

  2. UPN 競合に関する詳細なエラーメッセージには、UPN が変更または隔離されたユーザーの表示名が誤って表示されます。 次に例を示します。

    a. ユーザー A が最初に UPN = User@contoso.com で同期を実行します。

    b. ユーザー B が次に UPN = User@contoso.com で同期を試行します。

    c. ユーザー B の UPN が User1234@contoso.onmicrosoft.com に変更され、User@contoso.comDirSyncProvisioningErrors に追加されます。

    d. ユーザー B のエラー メッセージには、ユーザー A が既に User@contoso.com を UPN として持っていることを示す必要がありますが、実際にはユーザー B 自身の displayName が表示されます。

ID 同期のエラー レポート:

この問題を解決する方法の手順のリンクが正しくありません。
[アクティブ ユーザー]

指している必要がありますhttps://aka.ms/duplicateattributeresiliency

関連項目