2020年07月15日

AD connectでのメールアドレス同期

うちの会社もいよいよ本格的にOffice365を活用しようと今更ながら動いているわけですが、ローカルのActive DriectoryドメインコントローラーからAzureADにオブジェクト同期をかけています。AD connectを使っています。ですが、なぜか一部のユーザーにメールアドレスが正しく反映されないという症状が発生。メールアドレスとして、ADのユーザーオブジェクトに設定されているアドレスではなく、「〜@〜.onmicrosoft.com」というメールアドレスが勝手に割り当てられたりします。これが全員ではなく一部の人だったので原因が謎でしたが、よくよく調べた結果、ローカルADのユーザーオブジェクトの属性情報次第という事が判明しました。

ADの仕様のようなのですが、メールアドレスを1つだけ持つ場合はmail属性にそのユーザーのメールアドレスを設定するですが、2つ以上のアドレスを持つ場合はproxyAddresses属性に設定することになっているようです。逆に言うとproxyAddresses属性を持っていると、mail属性は無視されるとのこと。どおりでmail属性にいくら値を設定しても無視されるはずです。つまり、mail属性とproxyAddresses属性の両方に値が設定されているとproxyAddresses属性のみがOffice365側に反映されるのが仕様のようなので、私の謎は解決しました。結局LDIFファイルを作ってローカルADのユーザーオブジェクトから不要な情報を一気に削除することにして、AD connectで同期かけると無事に期待通りの設定になりました。proxyAddresses属性には複数のメールアドレスを設定できますが、プライマリSMTPアドレスは大文字SMTPで属性を設定し、セカンダリSMTPアドレスは小文字smtpで設定します。

ちなみにmail属性もproxyAddresses属性も空っぽだと、MS標準の〜.onmicrosoft.comのメールアドレスが自動で割り当てられます。ちなみにこれ、MOERA(Microsoft Online Email Routing Address)というらしいです。自動割り当てのアドレスの場合、アットマークより前の部分は、
1. mailNickname属性
2. proxyAddresses属性のプライマリSMTPアドレスのエイリアス部
3. mail属性のエイリアス部
4. userPrincipalName属性のエイリアス部
という優先順位で設定されるらしく、結局すべてローカルADの属性次第みたいですね。こういう情報ってなかなか出てこないので困ります。メールサーバとしてMS以外の製品を使っていると、ADユーザーオブジェクトのメールアドレス欄はメモ代わりくらいにしか使っていないのですが、やはりMS帝国に囲まれて生活しようとすると、ちゃんとMSの仕様通りに使わないというけないという事です。まぁ無事に動いてくれて何よりでした。

kenjiz at 23:55│Comments(0) IT 

この記事にコメントする

名前:
URL:
  情報を記憶: 評価: 顔