ブログ

2024/05/21
【M365:管理者向け】グループアドレス削除について

~弊社スタッフが現場で利用しているグループアドレス一括削除方法を紹介します~

こんにちは!ペンネーム「畝(うね)」です。

わたしが普段行っている社内アカウント管理のノウハウをご紹介させて頂きます。

第二弾はグループアドレスの一括削除方法についてご紹介します。
皆様はグループアドレスを用途に応じて作成したものの、使わなくなったアドレスがいくつもあるといった経験はございませんか?
そんな時に役立つグループアドレス一括削除方法をご紹介させていただきます。

実際のコマンドとCSVの形式についての紹介です。

本記事では削除コマンドについて紹介しております。
本記事文末に記載の通り、弊社内で検証はしているものの、本記事の内容を実施したことにより、想定外の事象が発生した場合でも、弊社は一切の責任を負いかねます。
本記事内容の実施にあたり、事前に十分な検証を実施くださいますよう、お願いいたします。

まずは以下前提条件がそろっていることをご確認ください。

前提


・削除予定のグループアドレスがExchange上に存在すること
※アドレスが一致しないとコマンドエラーになります。
・PowerShellに「Exchange Online PowerShell V3 モジュール」がインストールされている
・グループアドレスの所有者である
・Exchange Onlineに接続している


ここまでの確認に問題なければ本題に入ります。
以下のコマンドとCSVを利用すれば簡単にグループアドレスの一括削除が可能となりますので、
そんなコマンドとCSVの利用方法を解説いたします。
※注意点:以下コマンドをPowerShellで流す際は、項番単位でコピー&ペーストしてください。

■コマンド

## 1. 変数定義
$ImportPath = "フォルダパス\CSV名.csv"

## 2. 事前確認
$Data = @()
$Targets = Import-CSV -Path $ImportPath
$Targets | Select Target -Unique | ForEach{
$ThisGroup = $_.Target
$Members = Get-DistributionGroupMember -Identity $ThisGroup
$Members | ForEach{
$Datum = New-Object PSObject | Select-Object ParentGroup,PrimarySmtpAddress,Name
$Datum.ParentGroup = $ThisGroup
$Datum.PrimarySmtpAddress = $_.PrimarySmtpAddress
$Datum.Name = $_.Name
$Data += $Datum
}
}
$Data

## 3. グループの削除
Import-CSV -Path $ImportPath | ForEach{
Remove-DistributionGroup -Identity $_.Target
}

## 4. 作業後確認
$Data = @()
$Targets = Import-CSV -Path $ImportPath
$Targets | Select Target -Unique | ForEach{
$ThisGroup = $_.Target
$Members = Get-DistributionGroupMember -Identity $ThisGroup
$Members | ForEach{
$Datum = New-Object PSObject | Select-Object ParentGroup,PrimarySmtpAddress,Name
$Datum.ParentGroup = $ThisGroup
$Datum.PrimarySmtpAddress = $_.PrimarySmtpAddress
$Datum.Name = $_.Name
$Data += $Datum
}
}
$Data


■CSV

Target


まずは利用するコマンドの解説です。
コマンドをご利用いただくうえで、皆様のほうで修正いただきたい箇所は以下の通りです。
・CSVファイル格納先とファイル名
フォルダパス:CSVファイルが格納されているフォルダの絶対パスをご記載ください。
CSV名:CSVファイルの名前をご記載ください。


## 1.変数定義
$ImportPath = "フォルダパス\CSV名.csv"


続いてコマンドをご利用いただく際の留意点についてです。

留意点① 事前/事後確認コマンドについて
当該コマンドは削除対象アドレスの存在有無を確認することができ、
Exchange Online上に存在する+登録メンバーがいる場合には、登録されているメンバー情報も確認できます。
事前確認コマンド投入時は、以下の「A」 または 「B」の結果となること、
事後確認コマンド投入時には以下「C」の結果となることご確認ください。
A:Exchange Onlineに削除対象アドレスが存在するが、登録メンバーはいない場合
→何も出力されません。
B:Exchange Onlineに削除対象アドレスが存在し、登録メンバーもいる場合
→以下の形式で登録メンバーの情報が出力されます。

ParentGroup              PrimarySmtpAddress            Name
-----------              -----------------           ----
ccs.taro@ccsblog.com    une.mizuta@ccsblog.com        une.mizuta@ccsblog.com
ccs.taro@ccsblog.com     sasa.panda@ccsblog.com        sasa.panda@ccsblog.com


C:Exchange Onlineに削除対象アドレスが存在しない場合
→以下の内容でエラーログが出力されます。


Write-ErrorMessage : Ex6F9304|Microsoft.Exchange.Configuration.Tasks.ManagementObjectNotFoundException|The operation couldn't be performed because object 'ccs.test@ccsblogtest.onmicrosoft.com' couldn't be found on '*********.PROD.OUTLOOK.COM'.
At C:\Users\**********:1190 char:13
+             Write-ErrorMessa
ge $ErrorObject
+             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidData: (:) [Get-DistributionGroupMember], ManagementObjectNotFoundException
    + FullyQualifiedErrorId : [Server=********,RequestId=**********,TimeStamp=Fri, 15 D
   ec 2023 04:44:12 GMT],Write-ErrorMessage

※作業環境の固有情報は伏字にしております


留意点② グループの削除コマンドについて
当該コマンドを投入すると以下のように、本当に削除していいか確認の内容が出力されます。
既定値「Y」となっておりますので、内容に問題なければEnterキーを押してください。

Confirm
Are you sure you want to perform this action?
Removing distribution group Identity:"ccs.test@ccsblogtest.onmicrosoft.com" will remove the Active Directory group
object.
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "Y"):


次にCSVの作成方法について解説いたします。
なお、作成対象が複数ある場合、作成対象の情報行を増やすことで一括読み込み&作成が可能になります。
①Target
削除対象のアドレスを指定します。

CSVのサンプルは以下よりダウンロード可能です。
<<<CSVサンプル>>>

Target
"ccs.taro@ccsblog.com"


 

まとめ

いかがでしたでしょうか。
少しでもグループアドレスの削除にお役立ていただけますと嬉しいです。

次回はカスタム属性情報の活用について掲載予定ですので
ぜひそちらの記事もご一読いただけますと幸いです。

弊社では、お客様が本業に集中できるよう、お客様企業内のIT環境を整えるサービス(キッティングやヘルプデスク等)を提供しております。
☆☆☆
サービス内容や採用について、説明をご希望の方は【 問い合わせフォーム 】からお気軽にお問い合わせください
☆☆☆

----------------------------------------------------------------------------------------
本ページには主に、弊社にて実施した作業や調査の結果を記載しています。
記載する情報には、正確かつ最新の内容を記載するよう努めておりますが、同様の結果や情報の正当性を保証するものではありません。
本ページの情報を利用したことにより、万が一何らかの問題や損失が発生した場合でも、一切の責任を負いかねます。

PAGE TOP