Exchange Online において作成したアドレス一覧に受信者が表示されない


Exchange Online 環境において、受信者フィルターを使用してアドレス一覧を作成した場合、フィルターの条件に一致するユーザーが表示されない問題が発生する場合があります。
例えば、既存のユーザーに対して、国や地域をフィルタ条件とするアドレス帳をそれぞれ作成するとします。
そして、下記の通りに Exchange にメールボックスを持ち、住所が米国のユーザーのアドレス一覧を作成します。

New-AddressList -Name "Address List USA" -RecipientFilter { (RecipientTypeDetails -eq "UserMailbox") -and (CountryOrRegion -eq "United States")}

しかし、このアドレス帳を作成した後にいくら時間が経っても上記フィルターに当てはまるユーザーがアドレス帳に表示されません。

現時点の動作として、Exchange Online では、アドレス帳にオブジェクトを反映させるためには何等かの属性の更新を行う必要がございます。
この場合、設定を更新しても影響の無い値 として、例えば受信者の CustomAttribute 等の値を更新することによって、反映の処理を行っていただいております。

実行例 1:全てのユーザーメールボックスに対して、属性値の更新を行います。
Get-Mailbox -ResultSize unlimited -RecipientTypeDetails usermailbox | Set-Mailbox -CustomAttribute15 $null

実行例 2 : フィルターの条件に当てはまる受信者のみに対して設定を行います。
Get-Recipient -ResultSize unlimited -RecipientTypeDetails usermailbox | ? {$_.CountryOrRegion -eq "United States"} | Set-Mailbox -CustomAttribute15 $null

受信者の更新を実施した後、下記の通りにアドレス帳に受信者が表示されます。

既存のオブジェクトに対しては、このような更新処理が必要となってきますが、上記のアドレス帳を作成した後に新規で作成されるオブジェクトに関しましては必要ございません。
今回の例では、米国に住所を持つ新しいユーザーを作成する場合は、作成後にアドレス帳に反映されます。
このことから、可能な限りアドレス帳はオブジェクトの作成前に作成いただく方が、オブジェクト更新の手間が省けます。


Active Directory 同期ユーザーについて

DirSync にて ユーザーを Active Directory 同期ユーザーとして管理している場合は、Exchange Online 側で (EAC 及び リモート Powershell にて) 属性値の更新を行うことができません。
その為、オンプレミスの Active Directory側にて、属性値を更新し、同期処理を実行させます。
下記の例では、Exchange Online のCustumAttribute15 に同期される、extentionAttribute15 に値を入力しています。

補足情報
Exchange Server 2013 のオンプレミス環境では、Update-AddressList という PowerShell コマンドが存在し、指定するアドレス一覧に含まれる受信者を更新する方法がございます。

コマンド: Update-AddressList <アドレス帳名>
実行例: Update-AddressList "Address List USA"

しかしながら、ExchangeOnline では一度に大量の処理が実行されることによるサーバーやネットワークへの高負荷を考慮し、現時点では各テナント管理者によって当コマンドは実行できないように制限されております。
そのため、今回の作業を実施していただく必要がございます。

参考URL
TITLE: アドレス一覧を管理する
URL: http://technet.microsoft.com/ja-JP/library/jj983798(v=exchg.150).aspx

TITLE: アドレス一覧の更新
URL: http://technet.microsoft.com/ja-jp/library/aa996375(v=exchg.150).aspx

Skip to main content