今回は、複数の共有メールボックスと配布リストのセカンダリアドレス(エイリアス)を一括で登録や削除する方法についてご紹介したいと思います。
手順としては、CSV ファイルに情報をまとめて、コマンドレットで CSV ファイルをインポートすることで可能です。
共有メールボックスのユーザー名 (UPN) とセカンダリアドレスの値が一緒の場合は、セカンダリアドレスが削除することができません。その場合は、削除するセカンダリアドレスとは違う値にユーザー名を変更してください。
配布リストはユーザー名は存在しないため影響はありません。
以下のサイトの手順にて、管理者にてExchange Online に接続してから実行してください。
共有メールボックスのセカンダリアドレスの追加
1. CSV ファイルを作成します。
対象の共有メールボックスの情報を記載した CSV ファイルを作成します。
【作成例】
PrimarySmtpAddress,AddSmtpAddress
Shared1@contoso.onmicrosoft.com,Shared1@contoso.com
Shared2@contoso.onmicrosoft.com,Shared2@contoso.com
Shared3@contoso.onmicrosoft.com,Shared3@contoso.com
【説明】
1 行目に [PrimarySmtpAddress]、[AddSmtpAddress] と記載し、2 行目以降に対象の共有メールボックスのプライマリアドレスと追加するセカンダリアドレスを記載します。
PrimarySmtpAddress : プライマリアドレス
AddSmtpAddress : 追加するセカンダリアドレス
CSVファイルとして保存する際は、文字化けを防ぐため文字コードをUTF-8を指定してください。
CSV ファイル を UTF-8 で保存する手順
- CSV ファイルを右クリックし、[プログラムから開く] - [メモ帳] の順にクリックします
- 開いたメモ帳で[ファイル] - [名前を付けて保存] の順にクリックします。
- ファイルの種類で「すべてのファイル」を選択します。
- 文字コードで「UTF-8」を選択します。
- [保存] をクリックします。
2. セカンダリアドレスを一括で追加する Powershell コマンドレットを実行
項番 1 にて作成した CSV ファイルを読み込み、一括でセカンダリアドレスを追加します。
[構文]
Import-CSV "<保存した CSV ファイルパス>" | Foreach {Set-Mailbox -Identity $_.PrimarySmtpAddress -EmailAddresses @{Add="smtp:$($_.AddSmtpAddress)"}}
[実行例]
Import-CSV "C:\Temp\AddSmtpAddress.csv" | Foreach {Set-Mailbox -Identity $_.PrimarySmtpAddress -EmailAddresses @{Add="smtp:$($_.AddSmtpAddress)"}}
【説明】
上記実行例は C ドライブ直下の temp フォルダに保存された AddSmtpAddress.csv ファイルに記載されている共有メールボックスのセカンダリアドレスを一括で追加します。
共有メールボックスのセカンダリアドレスの一括削除
1. CSV ファイルを作成します。
対象の共有メールボックスの情報を記載した CSV ファイルを作成します。
【作成例】
PrimarySmtpAddress,RemoveSmtpAddress
Shared1@contoso.onmicrosoft.com,Shared1@contoso.com
Shared2@contoso.onmicrosoft.com,Shared2@contoso.com
Shared3@contoso.onmicrosoft.com,Shared3@contoso.com
【説明】
1 行目に [PrimarySmtpAddress]、[RemoveSmtpAddress] と記載し、2 行目以降に対象の共有メールボックスのプライマリアドレスと削除するセカンダリアドレスを記載します。
PrimarySmtpAddress : プライマリアドレス
RemoveSmtpAddress : 削除するセカンダリアドレス
2. セカンダリアドレスを一括で削除する Powershell コマンドレットを実行
項番 1 にて作成した CSV ファイルを読み込み、一括でセカンダリアドレスを削除します。
[構文]
Import-CSV "<保存した CSV ファイルパス>" | Foreach {Set-Mailbox -Identity $_.PrimarySmtpAddress -EmailAddresses @{Remove="smtp:$($_.RemoveSmtpAddress)"}}
[実行例]
Import-CSV "C:\Temp\RemoveSmtpAddress.csv" | Foreach {Set-Mailbox -Identity $_.PrimarySmtpAddress -EmailAddresses @{Remove="smtp:$($_.RemoveSmtpAddress)"}}
【説明】
上記実行例は C ドライブ直下の temp フォルダに保存された RemoveSmtpAddress.csv ファイルに記載されている共有メールボックスのセカンダリアドレスを一括で削除します。
配布リストのセカンダリアドレスの一括登録
メールが有効なセキュリティグループも以下の手順で実施することが可能です。
1. CSV ファイルを作成します。
対象の配布リストの情報を記載した CSV ファイルを作成します。
【作成例】
PrimarySmtpAddress,AddSmtpAddress
group01@contoso.com,group01sub@contoso.co.jp
group02@contoso.com,group02sub@contoso.co.jp
group03@contoso.com,group03sub@contoso.co.jp
【説明】
1 行目に [PrimarySmtpAddress]、[AddSmtpAddress] と記載し、2 行目以降に対象の配布リストのプライマリアドレスと追加するセカンダリアドレスを記載します。
PrimarySmtpAddress : プライマリアドレス
AddSmtpAddress : 追加するセカンダリアドレス
2. セカンダリアドレスを一括で追加する Powershell コマンドレットを実行
項番 1 にて作成した CSV ファイルを読み込み、一括でセカンダリアドレスを追加します。
[構文]
Import-CSV "<保存した CSV ファイルパス>" | foreach {Set-DistributionGroup -Identity $_.PrimarySmtpAddress -EmailAddresses @{Add="smtp:$($_.AddSmtpAddress)"}}
[実行例]
Import-CSV "C:\Temp\AddSmtpAddress.csv" | foreach {Set-DistributionGroup -Identity $_.PrimarySmtpAddress -EmailAddresses @{Add="smtp:$($_.AddSmtpAddress)"}}
【説明】
上記実行例は C ドライブ直下の temp フォルダに保存された AddSmtpAddress.csv ファイルに記載されている配布リストのセカンダリアドレスを一括で追加します。
配布リストのセカンダリアドレスの一括削除
1. CSV ファイルを作成します。
対象の配布リストの情報を記載した CSV ファイルを作成します。
【作成例】
PrimarySmtpAddress,RemoveSmtpAddress
group01@contoso.com,group01sub@contoso.co.jp
group02@contoso.com,group02sub@contoso.co.jp
group03@contoso.com,group03sub@contoso.co.jp
【説明】
1 行目に [PrimarySmtpAddress]、[RemoveSmtpAddress] と記載し、2 行目以降に対象の配布リストのプライマリアドレスと削除するセカンダリアドレスを記載します。
PrimarySmtpAddress : プライマリアドレス
AddSmtpAddress : 削除するセカンダリアドレス
2. セカンダリアドレスを一括で削除する Powershell コマンドレットを実行
項番 1 にて作成した CSV ファイルを読み込み、一括でセカンダリアドレスを削除します。
[構文]
Import-CSV "<保存した CSV ファイルパス>" | Foreach {Set-DistributionGroup -Identity $_.PrimarySmtpAddress -EmailAddresses @{Remove="smtp:$($_.RemoveSmtpAddress)"}}
[実行例]
Import-CSV "C:\Temp\RemoveSmtpAddress.csv" | Foreach {Set-DistributionGroup -Identity $_.PrimarySmtpAddress -EmailAddresses @{Remove="smtp:$($_.RemoveSmtpAddress)"}}
【説明】
上記実行例は C ドライブ直下の temp フォルダに保存された removeSmtpAddress.csv ファイルに記載されている配布リストのセカンダリアドレスを一括で削除します。