Microsoft 365 のユーザーのパスワードを Microsoft Graph API を使用してリセットするには、以下の手順を実行する PowerShell スクリプトを作成します。このスクリプトでは、Microsoft Graph PowerShell SDK を使用して API 呼び出しを行います。
目次
必要な準備
Microsoft Graph PowerShell SDK のインストール:
Install-Module -Name Microsoft.Graph -Scope CurrentUser
デバイス認証でのサインイン:
Connect-MgGraph -Scopes "User.ReadWrite.All"
パスワードリセットのスクリプト
以下のスクリプトは、指定されたユーザーのパスワードを強制的にリセットし、新しいパスワードを設定します。
# ユーザーのUPN (User Principal Name) を指定
$userPrincipalName = "user@example.com"
# 新しいパスワードを設定
$newPassword = "NewPassword123!"
# パスワードリセットを実行
Update-MgUser -UserId $userPrincipalName -PasswordProfile @{ ForceChangePasswordNextSignIn = $true; Password = $newPassword }
# 結果を表示
Write-Host "パスワードがリセットされました。"
注記
- パスワードプロファイルオブジェクトの
ForceChangePasswordNextSignIn
プロパティを$true
に設定すると、ユーザーは次回サインイン時にパスワードを変更するよう求められます。これはセキュリティを強化するために推奨される設定です。 - 使用するスコープ(この例では
"User.ReadWrite.All"
)は、API を介してユーザーのパスワードを変更するのに必要な権限を持っている必要があります。 - 新しいパスワードは、組織のパスワードポリシーに適合している必要があります。適切な複雑さや長さを持つパスワードを選ぶようにしてください。
このスクリプトは、シンプルで直接的な方法でユーザーのパスワードをリセットします。次にサインインする際に、ユーザーは新しいパスワードでログインした後、すぐにパスワードの変更を促されます。