テスト用AzureユーザーやMicrosoft 365ユーザーのパスワードを“無期限”にするには山市良のうぃんどうず日記(271)

Microsoft Azureをはじめ、IDとパスワードで認証される世の中のオンラインサービスの多くには、パスワードに「有効期限」が設けられています。しかし、テストや評価目的で作成するIDについては、次に使用するのがいつになるのか分からないため、有効期限を「無期限」にしたいという場合もあるでしょう。

» 2023年12月06日 05時00分 公開
[山市良テクニカルライター]

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

「山市良のうぃんどうず日記」のインデックス

山市良のうぃんどうず日記

サインイン時にパスワード有効期限切れの繰り返しを避けるには……

 先日、かなり前に「Microsoft Azure」のテナント(Microsoft Entra IDテナント)に作成したテスト用IDを使用してAzureサービスにサインインしようとしたところ、多要素認証による本人確認後、有効期限切れのためにパスワードを再設定するように求められました(画面1)。

画面1 画面1 パスワードの有効期限切れを理由にパスワードの再設定が求められているところ。パスワードを更新したくない場合はサインインを中止する(この例ではウィンドウ右上の「×」をクリック)

 しかし、次に使用するのがいつになるのか分からないため、今変更しても次にサインインするときに再設定したパスワードがまた有効期限切れとなり、また再設定するように要求される可能性が大いにあります。この無駄な手順はもう繰り返したくありません。このIDは認証アプリ「Microsoft Authenticator」による多要素認証を有効にしてあるため、パスワードの有効期限を無期限にしたとしても、セキュリティ上のリスクが大きくなることはないと考えています。

 Active Directoryドメインも既定のパスワードポリシーは有効期限を設定しますが、MMC(Microsoft管理コンソール)スナップインを使用してユーザー個別に、あるいはグループポリシーを使用して一括で有効期限をコントロールできます。しかし、「Azureポータル」の「Microsoft Entra ID」(旧称:Azure Active Directory)ブレードや「Microsoft Entra管理センター」のどこを探しても、パスワードの有効期限を無期限にする設定は見当たりません。

PowerShellのAzure ADモジュールでパスワードポリシーを設定

 Microsoftの公式ドキュメントを検索すると、以下のドキュメントにたどり着きました。個別のIDまたは組織のIDのパスワードポリシーを構成して、個別のIDまたは組織全体でパスワードの有効期限を無期限にする方法が説明されています。

 具体的には、PowerShell用Azure ADモジュール(Azure ADのMicrosoft Entra IDへの名称変更は、このモジュール名に影響しません)を使用してMicrosoft Entra IDテナントに接続し、「Set-AzureADUser」コマンドレットを使用してパスワードポリシーを「DisablePasswordExpiration」に設定します。

 特定のIDについてパスワード有効期限を無期限にする場合は、PowerShellで以下のコマンドラインを実行します。なお、Azureポータルの「Cloud PowerShell」に必要なPowerShellモジュールがそろっています。

Connect-AzureAD
Set-AzureADUser -ObjectId <ユーザー名@ドメイン名> -PasswordPolicies DisablePasswordExpiration

 パスワードが無期限に設定されたことを確認するには、次のコマンドラインを実行して、「True」が返されることを確認します(画面2)。

Get-AzureADUser -ObjectId <ユーザー名@ドメイン名> | Select-Object @{N="PasswordNeverExpires";E={$_.PasswordPolicies -contains "DisablePasswordExpiration"}}
画面2 画面2 PowerShellで特定のIDのパスワードポリシーを構成し、パスワードの有効期限が切れないようにする

 有効期限付きのパスワードに戻すには、次のコマンドラインを実行します。

Connect-AzureAD
Set-AzureADUser -ObjectId <ユーザー名@ドメイン名> -PasswordPolicies none

 Microsoftの公式ドキュメントでは、組織全体でパスワードの有効期限を無期限にする方法も説明されていますが、ここでの説明は省略します。全てのIDで多要素認証を有効化している場合は、組織全体で有効期限を無期限にしてもセキュリティ上のリスクが高まることはないと思いますが、特別な理由がない限り、特定のIDごとに設定することをお勧めします。

 なお、パスワードの有効期限を無期限にするIDでは多要素認証を有効にし、認証アプリ「Microsoft Authenticator」やメール、電話(SMS)を使用した認証方法を要求するように構成することを強く推奨します。多要素認証の構成はAzureのサインイン中またはサインイン後にセルフサービスで行える他、組織で多要素認証のセットアップを強制させることも可能です(画面3)。

画面3 画面3 セルフサービスによる多要素認証への認証方法の追加

Microsoft 365サービスの場合は……

 「Microsoft 365」サービスもまた、Microsoft Entra IDに依存します。Microsoft 365のIDも、個別のIDのパスワードポリシーを構成するには、PowerShellで操作する必要があります。その場合、以下の公式ドキュメントで説明されているように、PowerShell用Azure ADモジュールではなく、「Microsoft Graph」モジュールを使用する必要があります。

 なお、組織全体でパスワードの有効期限を無効化する場合は、「Microsoft 365管理センター」の「設定|組織(の)設定|セキュリティとプライバシー」にある「パスワードの有効期限ポリシー」から構成することができます(画面4)。

画面4 画面4 Microsoft 365サービスでは、Microsoft管理センターを使用して組織全体のパスワードの有効期限を無期限に一括設定できる

筆者紹介

山市 良(やまいち りょう)

岩手県花巻市在住。Microsoft MVP 2008 to 2024(Cloud and Datacenter Management)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『Windows版Docker&Windowsコンテナーテクノロジ入門』(日経BP社)、『ITプロフェッショナル向けWindowsトラブル解決 コマンド&テクニック集』(日経BP社)。


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のメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。