【 New-MgUser 】コマンドレット――Azure Active Directoryのユーザーを新規作成するWindows PowerShell基本Tips(72)

本連載は、PowerShellコマンドレットについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は「New-MgUser」コマンドレットを解説します。

» 2023年06月09日 05時00分 公開
[国井傑株式会社エストディアン]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「Windows PowerShell基本Tips」のインデックス

連載目次

 本連載では、Windows PowerShellの基本的なコマンドレットについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、「Azure Active Directory」(Azure AD)に新しくユーザーを作成する「New-MgUser」コマンドレットです。

New-MgUserコマンドレットとは?

  「New-MgUser」は、PowerShellを利用してAzure ADにユーザーを新規作成するためのコマンドレットです。一般的にコマンドレットによるAzure ADの操作は、複数の操作をまとめて実行したい場合に有効ですが、ユーザー作成に限っては「Microsoft Entra管理センター」(Microsoft Entra admin center)からCSVファイル経由でまとめて作成することが可能です。

 しかし、Microsoft Entra管理センターではユーザーをまとめて変更できないため、ユーザーの作成/変更/削除を全てPowerShellで実行したい場合にはNew-MgUserコマンドレットが有効です。

 なお、New-MgUserコマンドレットは、本連載第45回で解説した「Connect-MgGraph」コマンドレットで「Connect-MgGraph -Scopes "User.ReadWrite.All"」と実行して、Azure ADへの接続とアクセス許可を与えておくことが前提条件になります。

New-MgUserコマンドレットの書式

New-MgUser [オプション]


New-MgUserコマンドレットの主なオプション

オプション 意味
-DisplayName 表示上の名前を設定する
-MailNickName メールのエイリアスを設定する
-UserPrincipalName UPN(User Principal Name)形式のユーザー名を設定する
-PasswordProfile ユーザーのパスワードを設定する
-AccountEnabled 有効なユーザーを作成する。省略可能
-UsageLocation 利用場所属性を設定する。省略可能

ユーザーを新規作成する

 New-MgUserコマンドレットでは必須オプションを付加して実行することで、ユーザーを新規作成できます。このとき、「パスワード」の値だけはNew-MgUserコマンドレット内で直接指定できないため、事前に変数に定義しておきます(画面1)。

コマンドレット実行例

$PasswordProfile = @{Password = 'P@ssw0rd'}
New-MgUser -DisplayName '秋本宏樹' -PasswordProfile $PasswordProfile -AccountEnabled -MailNickName 'aki' -UserPrincipalName 'aki@ij7604.adfs.jp'

画面1 画面1 1行目で「$PasswordProfile」変数に「P@ssw0rd]」という値(パスワード)をセットした。2行目で、New-MgUserコマンドレットを実行し、「-DisplayName」オプションで表示上の名前と実行結果からユーザーのUPN、「-PasswordProfile」オプションで$PasswordProfile変数を使ったパスワードの定義、「-AccountEnabled」オプションで有効なユーザーであることの定義、「-MailNickName」オプションでメールアドレスのエイリアス名(メールアドレス名の@以前の名前)の定義、「-UserPrincipalName」オプションでサインイン時の名前をそれぞれ指定した

CSVファイルを利用してユーザーをまとめて作成する

 作成したいユーザーの一覧をCSVファイルで所有している場合は、「Import-Csv」コマンドレットでCSVファイルを読み込み、「ForEach-Object」コマンドレットでCSVファイルの内容を1行ずつ取り出し、繰り返しNew-MgUserコマンドレットを実行するように命令することで複数のユーザーをまとめて作成できます(画面2画面3)。

コマンドレット実行例

$PasswordProfile = @{Password = 'P@ssw0rd'}
Import-Csv c:\temp\users.csv |  ForEach-Object {New-MgUser -DisplayName $_.DisplayName -PasswordProfile $PasswordProfile -AccountEnabled -UserPrincipalName $_.UserPrincipalName -MailNickName $_.MailNickName -UsageLocation $_.UsageLocation}

画面2 画面2 ユーザーの一覧をCSVファイルで所有している場合、「Import-Csv」コマンドレットでCSVファイルを読み込み、「ForEach-Object」コマンドレットでCSVファイルの内容を1行ずつ取り出す
画面3 画面3 1行目でパスワードを定義し、2行目でImport-Csvコマンドレットで「c:\temp\users.csv」ファイルの内容を読み込み、続けてForEach-ObjectコマンドレットでCSVファイルの内容を1行ずつ実行するように設定している。実行するコマンドレットとして「New-MgUser」を指定することで、CSVファイルの内容に基づいてユーザーが作成される。なお、New-MgUserコマンドレット内の各オプションで指定している「$_.」の後ろの値にはCSVファイルの列名が入っている

筆者紹介

国井 傑(くにい すぐる)

株式会社エストディアン代表取締役。1997年からマイクロソフト認定トレーナーとして、Azure Active DirectoryやMicrosoft 365 Defenderなど、クラウドセキュリティを中心としたトレーニングを提供している。2007年からMicrosoft MVP for Enterprise Mobilityを連続して受賞。なお、テストで作成するユーザーアカウントには必ずサッカー選手の名前が登場するほどのサッカー好き。


Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。