オンプレミスから Azure AD Connect を利用して office365 へ同期しているユーザーを PowerShell で削除する方法
■事象
Exchange管理センターの連絡先から登録情報を削除する際、オンプレミスからoffice365へ同期済みユーザーの情報(UserPrincipalName)が紐づいて削除できませんでした。
エラー画面
前提として環境は、オンプレミス側にActive Directory Domain Services、Azure AD Connectが存在し、Office365側にAzure Active Directoryが存在しています。
基本的には、オンプレミス側のオブジェクト情報を削除してOffice365側へ同期すれば連絡先も削除されます。
ただ今回は、オンプレミス AD 側にオブジェクト情報を残しておく必要があったため、 Office365 側からのみ、ユーザー情報を完全に削除する方法を紹介します。
Office365 側からのみ、ユーザー情報を完全に削除した後は、
再度、オンプレミス側からディレクトリ同期を実行すれば、Office365側へユーザー情報が作成される動きとなります。
■事前準備
オンプレミスから同期しているユーザーを Office 365 側からのみ削除する場合は、 PowerShell で「Remove-MsolUser」 コマンドを利用します。
Windows PowerShell にて Office 365 へ接続します。
[Microsoft Azure Active Directory Module for Windows PowerShell] を [管理者として実行] で起動します。接続のために「Connect-MsolService」コマンドを実行します。
表示されるポップアップに Office 365 全体管理者の IDを入力し、次へをクリックします。
全体管理者のパスワードを入力し、サインインをクリックします。
接続されるとプロンプトがかえります。
■削除
ユーザー削除は、2段階で実行します。
1回目の「Remove-MsolUser」 コマンド実行で「アクティブなユーザー」から削除済みユーザーへ移行されます。
2回目の「Remove-MsolUser」 コマンド実行で」「削除済みのユーザーから完全に削除します。
・アクティブなユーザー
・削除済みのユーザー
■1回目
<コマンド>
Remove-MsolUser -UserPrincipalName “対象のユーザー アカウント名”
<実行例>
Remove-MsolUser -UserPrincipalName testuser01@example.com
■2回目
<コマンド>
Remove-MsolUser -UserPrincipalName “対象のユーザー アカウント名” -RemoveFromRecycleBin
<実行例>
Remove-MsolUser -UserPrincipalName User@example.com -RemoveFromRecycleBin
※コマンド実行例
■参考
※今回は使用しませんでしたが、 削除済みのユーザーをすべて完全に削除する場合は、以下コマンドを実行します。
Get-MsolUser -ReturnDeletedUsers -All | Remove-MsolUser -RemoveFromRecycleBin -Force
なお、完全に削除されたユーザーの復元はできませんので十分注意したうえで実行してください。
■まとめ
オンプレミス側からOffice365側へ連携している利用者様は限られているかもしれませんが、お役に立てれば幸いです。