【 Update-MgUser 】コマンドレット――Azure Active Directoryユーザーの属性を変更するWindows PowerShell基本Tips(51)

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

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

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

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

連載目次

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

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

 「Update-MgUser」は、PowerShellを利用してAzure ADユーザーの属性を変更するコマンドレットです。Azure ADユーザーの属性はブラウザから変更する方法が一般的ですが、複数のユーザーを一括で変更する場合などに有効です。

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

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

Update-MgUser [オプション]


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

オプション 意味
-UserId 属性を変更するAzure ADユーザーを指定する
-DisplayName ユーザーの表示名を変更する。省略可能
-usageLocation ユーザーの利用場所を変更する。省略可能


ユーザーの表示名を変更する

 Update-MgUserコマンドレットでは、「-UserId」オプションで属性を変更するユーザーを指定します。その後、続けて設定変更したい属性をオプションで指定します。ユーザーの表示名を変更する場合は、「-DisplayName」属性を利用します(画面1)。

 Update-MgUserコマンドレットで設定変更可能な属性一覧は、MicrosoftのWebサイト「Update-MgUser」で確認できます。

コマンドレット実行例

Update-MgUser -UserId 1ea13bcf-c9ef-4040-90c9-96c42d3ae595 -DisplayName "武藤 晋三"

画面1 画面1 事前に「Get-MgUser」コマンドレットで属性を変更するユーザーのUserIdを調べ、Update-MgUserコマンドレットを実行した。「-UserId」オプションでユーザー名を指定し、「-DisplayName」オプションでDisplayName属性の値が「武藤 晋三」になるように指定している。その後、Get-MgUserコマンドレットを再実行してDisplayName属性の値が変化していることを確認している


UserIdが分からないユーザーの属性を変更する

 Update-MgUserコマンドレットは-UserIdオプションの指定が必須で、UserIdはGet-MgUserコマンドレットで事前に調べておく必要があります。そのため、Get-MgUserコマンドレットで調べるところから、Update-MgUserコマンドレットで属性を変更するまでをまとめておくと便利です(画面2)。

コマンドレット実行例

Update-MgUser -UserId (Get-MgUser -Filter "Displayname eq '山田太郎'").Id -DisplayName "Yamada Taro"

画面2 画面2 前のコマンド例と同じだが、今回は「-UserId」に続けて「(Get-MgUser -Filter "Displayname eq '山田太郎'").Id」と指定した。これにより、DisplayName属性が「山田太郎」のユーザーを指定していることになる。また、Update-MgUserコマンドレットの実行後にGet-MgUserコマンドレットを実行することで、DisplayName属性の値が設定した通り変化していることが確認できる


複数のユーザーの属性をまとめて変更する

 Azure ADユーザーの設定では、利用場所の属性変更はよくあることです。この変更を複数ユーザーに対してまとめて実行したい場合は、Get-MgUserコマンドレットで事前にユーザー情報を取得し、Update-MgUserコマンドレットの「-usageLocation」オプションで利用場所属性を変更する設定を「ForEach-Object」コマンドレットで順番に実行します(画面3)。

コマンドレット実行例

Get-MgUser -All | ForEach-Object {Update-MgUser -UserId $_.id -UsageLocation "JP"}

画面3 画面3 Get-MgUserコマンドレットの実行結果を「ForEach-Object {...}」の中に1つずつ投入して処理を実行。投入した値は{...}内の「-UserId $_.id」部分に入っている。一方、{...}内ではUpdate-MgUserコマンドレットを実行し、「-UsageLocation」オプションで「JP」という値を設定している

筆者紹介

国井 傑(くにい すぐる)

株式会社エストディアン代表取締役。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のメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。