過去に利用していた Alias を再利用したことで発生した問題について

今回は過去に利用していた Alias を再利用したことで発生した問題についてご紹介させていただきます。
なお、Exchange Server 2007 を前提に記載していますが基本的な動作に関しては Exchange Server 2003 や Exchange Server 2010 でも同様となります。

Exchange Server では Exchange 組織内での送受信に SMTP アドレスではなく legacyExchangeDN を利用しています。(SMTP アドレスは名前解決や外部との送受信で使用されますが、Exchange 組織内部での送受信には利用されません。)
また、過去に送受信したメールの宛先情報やニックネーム キャッシュなどには生成当時の legacyExchangeDN が保存されており、それらを利用してメールを送信する場合には保存されている legacyExchngeDN を基に配信する動作となります。

ここで以下のシナリオを考えます。

・過去にユーザー A で利用していた Alias でユーザー B を作成
・ユーザー A から受信したメールに返信 (送信者はユーザー A が既に存在しないことを知らない)

legachExchangeDN の生成規則については後述にて記載しますが、ユーザー B にはユーザー A と同じ legacyExchangeDN が付与される可能性があります。
この場合には送信者にはあたかもユーザー A に返信したように見えますが、実際にはユーザー B にメールが届くことになります。(当然ながら NDR は返されません。)
上記シナリオではメール返信を例にしていますが、過去のニックネーム キャッシュを利用してメールを送信する場合も同様となります。

ユーザー A が利用していた legacyExchangeDN が削除されていなければ重複して利用されることはありませんが、過去に利用していた Alias を再利用する場合にはご注意ください。

- legachExchangeDN の生成規則
Exchange Server 2007 では legacyExchangeDN は以下の生成規則により付与され、一度付与されると Alias が変更されても legacyExchangeDN の値が変わることはありません。

1. Active Directory 上で以下の値を legacyExchangeDN に利用しているオブジェクトが存在するか確認 (存在しない場合はこの値を使用)

   /o=<Organization>/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=<Alias>

2. 既に利用されている場合には末尾に連番を付けて再度利用状況を確認

   (1) /o=<Organization>/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=<Alias>1
   (2) /o=<Organization>/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=<Alias>2
   (3) /o=<Organization>/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=<Alias>3
            :
   (n) /o=<Organization>/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=<Alias>n

上記動作はあくまでも現在利用されている legachExchangeDN を対象に重複チェックを実施するため、過去に利用されていた legacyExchangeDN と同じ値が付与される場合もあります。
なお、Exchange Server 2007 SP1 以前では以下の技術情報で記載されているように legacyExchangeDN が重複していないにも関わらず連番が付与される不具合がありましたのでご注意ください。

ID: 931328
Title: An integer is added to the end of the legacyExchangeDN attribute of a newly created mailbox in Exchange 2007
URL: https://support.microsoft.com/kb/931328/en-us