💻

Exchange Online 管理シェル V2 で受信限定のメールエイリアスを追加/削除する

2021/12/03に公開

この記事について

この記事は、Office 365 Advent Calendar 2021 3 日目の記事です。

この記事では、Exchange Online 管理シェル V2 を使用して、Exchange Online (以下、ExO) P1 ライセンスを持っているユーザーに対し受信限定のセカンダリ SMTP アドレス (メールエイリアス) を追加する方法について解説していきます。
Office 365 E1 以上や Microsoft 365 Business Basic 以上のライセンスだと ExO P1 ライセンスが含まれているので、1 ユーザー 1 メールアドレス (プライマリ) が払い出されるかと思います。
企業内のユーザーだったり、IT 関係の仕事に従事している人で O365/M365 を独自に契約している人の中には、違うメールアドレスが欲しい という理由でライセンスを追加する人がいるかもしれませんが、メールアドレスの利用要件によっては、ライセンスを追加する必要がないものもあったりします。
今回は、Exchange Online の機能として一般提供されているメールエイリアスの機能を使い、1 メールアドレスに受信専用のメールエイリアス (セカンダリ SMTP アドレス) を CUI で追加する方法を解説します。

GUI でメールエイリアスを追加したい場合

こちらの公式ドキュメントを参照してください。
グローバル管理者権限にて、Microsoft 365 管理センターから操作を行なってください。

https://docs.microsoft.com/ja-jp/microsoft-365/admin/email/add-another-email-alias-for-a-user?view=o365-worldwide

環境

今回の検証は、以下の環境で実施しました。

  • OS: Windows 10 Enterprise (10.0.19043)
  • Windows PowerShell: 5.1.19041.1320
  • Exchange Management Shell: 2.0.5

ExO 管理シェルは、バージョン 2.0.4 以降は PowerShell 7 でもサポートされています。つまり、Windows/macOS/Linux など、さまざまな環境で ExO 管理シェル V2 が使用可能です。
具体的にな ExO 管理シェル V2 (2.0.4 以降) のサポート対象は以下の通りです。

  • macOS
    • macOS 11 Big Sur 以降
    • macOS 10.15 Catalina
    • macOS 10.14 Mojave
  • Linux
    • Ubuntu 20.04 LTS
    • Ubuntu 18.04 LTS
  • Windows
    • Windows 10
    • Windows 8.1
    • Windows Server 2019
    • Windows Server 2016
    • Windows Server 2012 または Windows Server 2012 R2
    • Windows 7 Service Pack 1 (SP1)
    • Windows Server 2008 R2 SP1

CUI で ExO ユーザーのメールエイリアスを追加する手順

ExO 管理シェル V2 をインストールする

管理者権限で Windows PowerShell を起動して、PowerShell Gallery 経由で ExchangeOnlineManagement をインストールします。

Install-Module -Name ExchangeOnlineManagement -RequiredVersion 2.0.5

モジュールがインストールされたかどうか、確認します。

Get-InstalledModule -Name ExchangeOnlineManagement

インストールが成功している場合、以下のような結果が出力されるはずです。

Version    Name                                Repository           Description
-------    ----                                ----------           -----------
2.0.5      ExchangeOnlineManagement            PSGallery            This is a General Availability (GA) release of E...

ExO に接続

Exchange Online に接続します。ExO 管理シェル V2 のログインコマンドは、多要素認証 (MFA) にも対応しています。
chris@contoso.com は実際に接続で使用する、グローバル管理者権限を持つユーザーの UPN に置き換えてください。

Connect-ExchangeOnline -UserPrincipalName chris@contoso.com

現在のメールエイリアス情報を取得

任意のユーザーのメールエイリアスの設定値を確認するには、Get-EXOMailbox コマンドを使用します。
chris@contoso.com はメールエイリアスの設定状況を確認するユーザーの UPN に置き換えてください。

Get-EXOMailbox -Identity chris@contoso.com | select -expand EmailAddresses alias

コマンドを実行すると、以下のような結果が返ってくるはずです。
SMTP: と大文字で始まっているものがプライマリのメールアドレスになります。
追加のメールエイリアス (セカンダリ SMTP アドレス) は、smtp: と小文字で始まるものになります。

smtp:chris001@contoso.com
smtp:chris@second.contoso.com
SPO:SPO_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx@SPO_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
SIP:chris@contoso.com
SMTP:chris@contoso.com

新しくメールエイリアスを追加/削除

任意のユーザーに対して、新しいメールエイリアス (セカンダリ SMTP アドレス) を追加します。
chris@contoso.com は実際に新しいメールエイリアスを追加するユーザーの UPN に置き換えてください。
peter@second.contoso.com は実際に追加する新しいメールエイリアスの値に置き換えてください。

Set-Mailbox -Identity chris@contoso.com -EmailAddresses @{Add='peter@second.contoso.com'}

これで、受信限定の新しいメールエイリアス (セカンダリ SMTP アドレス) が作成されました。設定されたかどうかを確認したい場合は、前述の Get-EXOMailbox コマンドを実行してください。

コマンドの -Identity オプションでは、対象のユーザーの UPN を指定しています。指定は必須のため、指定なしで Set-Mailbox を実行した場合、Identity 値の入力が求められます。
-EmailAddresses オプションですが、値なしでこのオプションを使用することはしないでください。メールエイリアス情報の消失などにつながります。

任意のユーザーから、既に使用されているメールエイリアス (セカンダリ SMTP アドレス) を削除する場合は、以下の通りです。
chris@contoso.com は実際にメールエイリアスを削除するユーザーの UPN に置き換えてください。
peter@second.contoso.com は実際に削除するメールエイリアスの値に置き換えてください。

Set-Mailbox -Identity chris@contoso.com -EmailAddresses @{Remove='peter@second.contoso.com'}

Azure AD Connect で Active Directory 同期しているユーザーの場合

組織によっては、オンプレミスなどで稼働している Active Directory (AD) と Azure AD を Azure AD Connect (AADC) で同期させ、AD と同期しているユーザーに対して ExO P1 ライセンスを付与している場合があると思います。この場合、上記で示したコマンドは一切使用できません。
代わりに、AD で設定されているユーザーの属性値を更新することで、メールエイリアス (セカンダリ SMTP アドレス) 情報が同期されることになります。

追加/削除は Active Directory の proxyAddresses 属性で設定

AADC で同期している AD にログインし、Get-ADUser コマンドと Set-ADUser コマンドを使用してセカンダリ SMTP アドレスを追加します。
chris@contoso.com は実際に新しいメールエイリアスを追加するユーザーの UPN に置き換えてください。
peter@second.contoso.com は実際に追加する新しいメールエイリアスの値に置き換えてください。

$User = Get-ADUser -Filter "UserPrincipalName -eq 'chris@contoso.com'" -Properties * | select Name,proxyAddresses
Set-ADUser -Identity $User.Name -add @{ProxyAddresses="smtp:peter@second.contoso.com"}

任意のユーザーから、既に使用されているメールエイリアス (セカンダリ SMTP アドレス) を削除する場合は、以下の通りです。
chris@contoso.com は実際にメールエイリアスを削除するユーザーの UPN に置き換えてください。
peter@second.contoso.com は実際に削除するメールエイリアスの値に置き換えてください。

$User = Get-ADUser -Filter "UserPrincipalName -eq 'chris@contoso.com'" -Properties * | select Name,proxyAddresses
Set-ADUser -Identity $User.Name -remove @{ProxyAddresses="smtp:peter@second.contoso.com"}

参考情報

Microsoft Docs

その他

Discussion