PowerShellでMicrosoft365ユーザーのパスワードを変更する方法をご紹介します。
関連記事
目次
PowerShell 7をインストールする
Macの場合はbrewコマンドでインストールします。
% brew install powershell
pwshコマンドでPowerShellを起動します。
% pwsh
Microsoft Graph PowerShellをインストールする
Microsoft Graph は、Microsoft365などのMicrosoftクラウドサービスへ接続するためのAPIです。 これをPowerShellで使用すると、コマンドラインからMicrosoft365を管理できるようになります。
Install-ModuleコマンドでMicrosoft Graph PowerShellをインストールします。
> Install-Module Microsoft.Graph -Scope CurrentUser -Repository PSGallery -Force
PowerShellでMicrosoft365にサインインする
Connect-MgGraphコマンドでMicrosoft365にサインインします。
> Connect-MgGraph -Scopes "User.ReadWrite.All", "Directory.ReadWrite.All"
-Scopesオプションで、接続するときの権限を指定します。パスワードはセキュア情報のため、User.ReadWrite.Allスコープでは、この後紹介しているUpdate-MgUserコマンドがAuthorization_RequestDeniedエラーすることがあります。その場合はより上位のDirectory.ReadWrite.Allスコープを指定します。
Connect-MgGraphコマンドでは、Microsoft365のブラウザ認証が入ることがあります。その場合は、画面に従い認証します。-Scopesオプションと同じく、ここで認証するMicrosoft365ユーザーのロールもAuthorization_RequestDeniedエラーに関係してきます。エラーするときは、グローバル管理者など上位のロールが割り当てられているユーザーで認証します。
パスワードを変更する
Update-MgUserコマンドで、Microsoft365ユーザーのパスワードを変更します。
> Update-MgUser -UserId <パスワードを変更する365ユーザー> -PasswordProfile @{ password = "<新しいパスワード>"; forceChangePasswordNextSignIn = $true }
forceChangePasswordNextSignInをtrueにすると、そのユーザーが次にサインインするときにパスワード再設定を強制することができます。forceChangePasswordNextSignInをfalseにするとUpdate-MgUserコマンドで指定したパスワードのまま運用となるので、例えば管理部門などでユーザーのパスワードを一元管理する必要がある場合に有効的です。
パスワード変更が成功してもとくになにも表示されません。
Microsoft365からサインアウトする
Disconnect-MgGraphコマンドで、Microsoft365からサインアウトします。
> Disconnect-MgGraph
1度サインインするとDisconnect-MgGraphするまでサインインしたままになるようなので、忘れないようにします。
まとめ
PowerShellでMicrosoft365ユーザーのパスワードを変更する方法をご紹介しました。
カナメグローバルホールディングスではITサポート業務を行っています。
Microsoft365などクラウドサービスの導入や保守も対応しているのでお気軽にご相談ください。

