ExchangeOnline

GraphPowerShellからMicrosoft365グループを一括作成する

GraphPowerShellを使用してMicrosoft365グループを一括作成する方法について記載する。本スクリプトではコマンドNew-MgGroupの仕様上、ドメインを指定することができません。そのため現在指定されている既定のドメインが自動的に使用される。ドメインまで指定したい場合は、ドメインごとにCSVファイルを分けて、スクリプト実行前に都度既定のドメインを変更するか、ExchangeOnlinePowerShellを使用して作成すること。

検証環境について

動作確認した検証環境は以下の通り。

OS:Microsoft Windows 11 Enterprise
OSbuildバージョン:10.0.22621
PowerShellのバージョン:7.4.0

GraphPowershellのモジュール名とバージョン
Microsoft.Graph.Authentication:2.12.0

サインインアカウントの権限はグローバル管理者。

使用するコマンド

New-MgGroup

一括作成するためのCSVファイルを作成する

#CSVの保存先 windowsOSの場合、デスクトップに保存する
$csvSavePath = "$env:USERPROFILE\Desktop"

#CSVのファイル名
$csvFileName = "microsoft365GroupList.csv"

#指定したいパラメータ
$365PrmCSV = [PSCustomObject]@{
    DisplayName = $null
    MailNickname = $null
    Visibility = $null
}

#CSVファイルとして保存する
$365PrmCSV | Export-Csv -Path "${csvSavePath}\${csvFileName}" `
-Encoding utf8 -NoTypeInformation

CSVファイルの入力例

DisplayNameMailNicknameVisibility
PC入れ替えプロジェクトpc-replacementPrivate
問い合わせ窓口qaPublic

入力したCSVファイルを読み込み一括作成する

#CSVの保存先を指定する
$csvSavePath = "$env:USERPROFILE\Desktop"

#読み込むCSVファイル名を指定する
$csvFileName = "microsoft365GroupList.csv"

#編集したCSVファイルを読み込む
$csv365GroupList = Import-Csv -Path "${csvSavePath}\${csvFileName}"

#GraphPowerShellへ接続する
Connect-MgGraph -Scopes Group.ReadWrite.All -NoWelcome

foreach($365Group in $csv365GroupList){
    #CSVの情報を取り出す
    $365GroupParm = @{
        DisplayName = $365Group.DisplayName
        MailNickname = $365Group.MailNickname
        Visibility = $365Group.Visibility
        groupTypes = @("Unified")
        mailEnabled = $true
        securityEnabled = $true
        HideFromOutlookClients = $true
    }
    New-MgGroup -BodyParameter $365GroupParm
}

Disconnect-MgGraph

問い合わせフォーム

リンク切れのご報告や、記載内容に不備がありましたら、お手数をおかけしますが
以下お問い合わせフォームからご報告をお願い致します。
コマンドの仕様確認やエラー内容の確認、対処方法については、ご契約されているMicrosoftかCSPへお問い合わせください。
※いただきました内容は確認させていただきますが、必ずしも回答をお約束するものではございません。

    PCからメールが飛び出す画像ユーザーメールボックスのメッセージサイズを確認、変更する前のページ

    TeamsPowerShellを使用してすべてのチャネルを取得する次のページ

    関連記事

    1. ExchangeOnline

      ExchangePowershellを使用して配布リストのメンバーを一括取得する

      配布リストに所属するメンバーの一覧を一括取得しCSVファイル…

    2. ExchangeOnline

      ExchangePowerShellを使用してMicrosoft365グループへCSVからメンバーを…

      Microsoft365グループにアカウントを一括追加する方…

    3. ExchangeOnline

      ExchangeOnlinePowershellからMicrosoft365グループを一括作成する

      Microsoft365グループをCSVファイルから一括作成…

    4. ExchangeOnline

      ExchangePowerShellを利用して配布リストのメンバーを一括更新する

      すべての配布リストのメンバーを一括更新する方法について記載す…

    5. ExchangeOnline

      ExchangePowerShellからMicrosoft365グループのメンバー一覧を取得する

      本記事ではチーム機能が有効化されていないMicrosoft3…

    6. ExchangeOnline

      ExchangeOnlineでメールが検疫された際にユーザーに通知メールが送信されるよう設定する

      本記事作成時点では、デフォルトの設定の場合、管理者にもユーザーにも検…

    最近の記事

    PAGE TOP