Office 365 の配布グループや Office 365 グループなどに外部ドメインのメールアドレスを含めたい場合、事前にグローバルアドレス帳へ登録する必要があります。数名程度なら手作業で追加して言っても良いですが、複数アドレスとなると手間も時間もかかりますので今回はそのグローバルアドレス帳へ外部メールアドレスリストを一括で登録する方法を備忘録がてら紹介したいと思います。
Office 365 グローバルアドレス帳へ外部メールアドレスを一括で登録する
基本的にこの手の作業はCSVファイルを作成してPowerShellで一括で流す流れになります。
外部アドレスリストを作成する
外部アドレスリストを Excel で以下のような形式で記入します。
※Excelではなくても作成する事はできますが、非常に効率が悪いのでExcelでの作成をおすすめします。テキストで作成する場合はカンマ区切りになります。
今回は作成方法の紹介なので基本的なオプションのみを例としてます。他に必要なオプションがある場合は、「Name」行の右側にオプションを追加してその下に指定したオプションの設定値を入れていくような形で追加します。
Name | Alias | ExternalEmailAddress |
User01 | User01 | User01@contoso.com |
User02 | User02 | User02@contoso.com |
User03 | User03 | User03@contoso.com |
User04 | User04 | User04@contoso.com |
User05 | User05 | User05@contoso.com |
… | … | … |
作成したファイルを任意の名前と場所で保存します。
この際、ファイルの文字コードは「UTF-8」で保存形式を「CSV」ファイルとして指定します。
例
C:\Temp\ExternalContactsList.csv
グローバルアドレス帳へ一括で登録
管理者として起動した Windows PowerShell を準備し、Office 365 のテナントへ接続します。
Office 365 への接続方法はこちらを参考にして下さい。
Windows PowerShell の準備ができたら、以下のコマンドレットを実行します。
先ほど作成したCSVファイルのパスと設定するオプションを指定します。オプションを追加している場合は、下記の”$_.ExternalEmailAddress” に続いてオプションと変数を指定します
※グローバルアドレス一覧に表示させたくない場合は、”-HiddenFromAddressListsEnabled False”を追加する事でアドレス一覧からは非表示になります。
コマンド
Import-Csv "C:\Temp\ExternalContactsList.csv” | Foreach {New-MailContact -Name $_.Name -Alias $_.Alias -ExternalEmailAddress $_.ExternalEmailAddress}
実行結果
Get-MailContact |ft Name,Alias,ExternalEmailAddress,RecipientType Name Alias ExternalEmailAddress RecipientType ------ ------------ ----------------------- --------------- User01 User01 SMTP:User01@contoso.com MailContact User02 User02 SMTP:User02@contoso.com MailContact User03 User03 SMTP:User03@contoso.com MailContact User04 User04 SMTP:User04@contoso.com MailContact User05 User05 SMTP:User05@contoso.com MailContact … … … …
以上でグローバルアドレス帳へ外部メールアドレスが登録されます。