リモート デスクトップ セッションでは、期限切れになったユーザーアカウントのパスワードを変更できません。

適用対象: Windows Server 2012 R2 DatacenterWindows Server 2012 R2 EssentialsWindows Server 2012 R2 Foundation

現象


Windows Server 2008 以降のリモート デスクトップ サービスでは、認証方法としてNLA (Network Level Authentication) がサポートされています。
NLA を使用したリモート デスクトップ接続では、有効期限切れになったユーザーアカウントのパスワードを変更することができず、リモート デスクトップ接続に失敗します。
このとき、次のメッセージが表示されます。

“初めてログオンする前にパスワードを変更する必要があります。詳細については、システム管理者またはテクニカル サポートにお問い合わせください。”


この問題は、VDI 環境、および VDI 以外のリモートデスクトップ サービス環境で発生します。

原因


NLA を使用した リモート デスクトップ セッションでは、期限の切れたパスワードを変更することが出来ません。これは想定された動作となります。

解決方法


この問題を回避するには、次の方法の何れかを使用します。

  • リモート デスクトップ  Web アクセス (RD Web アクセス) を使用する。
  • NLA を無効にする。 (Windows Server 2008 R2 と Windows Server 2012/2012 R2 で手順が異なります)
それぞれの方法について以下をご参照ください。



リモート デスクトップ Web アクセス (RD Web アクセス) を使用する。

前提 :
  • RD Web アクセスの役割をインストールする必要があります。
  • Windows Server 2008 R2 のRD Web アクセスの役割をインストールした環境には以下の修正を適用する必要があります。
     
    2648402 You cannot change an expired user account password in a remote desktop session that connects to a Windows Server 2008 R2-based RD Session Host server in a VDI environment

手順 :
  1. RD Web アクセスをインストールした環境にログオンし、以下のファイルをテキスト エディタで開きます。

    c:\Windows\Web\RDWeb\Pages\Web.config
  2. Web.config を以下の通り変更し、保存します。

    変更前
    <!-- PasswordChangeEnabled: Provides password change page for users. Value must be "true" or "false" -->

    <add key="PasswordChangeEnabled" value="false" />


    変更後
     <!-- PasswordChangeEnabled: Provides password change page for users. Value must be "true" or "false" -->

    <add key="PasswordChangeEnabled" value="true" />

NLA を無効にする。 

NLA を無効にするには、以下の設定が必要となります。
  1. [ネットワーク レベル認証でリモート デスクトップを実行しているコンピューターからのみ接続を許可する] を無効にする。
  2. セキュリティ層 [RDP セキュリティ層] にする、もしくは、暗号化レベルを [低] にする。
Windows Server 2008 R2 の手順 :
  1. [ネットワーク レベル認証でリモート デスクトップを実行しているコンピューターからのみ接続を許可する] を無効にする。

    Windows Server 2008 R2 では既定で [ネットワーク レベル認証でリモート デスクトップを実行しているコンピュータからのみ接続を許可する] は無効となっております。

    有効にしている場合は、以下の手順で無効にする必要があります。
    1. RD セッション ホスト サーバーで、リモート デスクトップ セッション ホストの構成を開きます。
      リモート デスクトップ セッション ホストの構成を開くには、[スタート] ボタンをクリックして [管理ツール] - [リモート デスクトップ サービス] の順にポイントし、[リモート デスクトップ セッション ホストの構成] をクリックします。
    2. [接続] にて、接続の名前を右クリックし、[プロパティ] をクリックします。
    3. [(接続名) のプロパティ] の [全般] タブで、[ネットワーク レベル認証でリモート デスクトップを実行しているコンピューターからのみ接続を許可する] チェック ボックスをオフにします。
  2. セキュリティ層を "RDP セキュリティ層" にする、もしくは、暗号化レベルを "低" にする。

    上記の 1-3 から、以下の 2-A 、もしくは、2-B を実施します。
    1. セキュリティ層を "RDP セキュリティ層" にする。

      [(接続名) のプロパティ][全般] タブで、セキュリティ層を "ネゴシエート" から "RDP セキュリティ層" に変更します。
    2. 暗号化レベルを "低" にする。

      [(接続名) のプロパティ][全般] タブで、暗号化レベルを "クライアント互換" から "低" に変更します。
補足 : 以降に記載します、Windows Server 2012, Windows Sever 2012 R2 の手順でご案内しますポリシーを適用することでも上記と同等の設定は可能です。
 

Widows Server 2012, Windows Server 2012 R2 の手順 :
  1. [ネットワーク レベル認証でリモート デスクトップを実行しているコンピューターからのみ接続を許可する] を無効にする。

    以下のグループ ポリシーの設定を "無効" にします。

    [コンピュータの構成] - [管理用テンプレート] - [Windows コンポーネント] - [リモート デスクトップ サービス] - [リモート デスクトップ セッション ホスト] - [セキュリティ]

    ポリシー名 : [ネットワーク レベル認証でリモート デスクトップを実行しているコンピューターからのみ接続を許可する] 
    設定 : 無効
  2. セキュリティ層を "RDP セキュリティ層" にする、もしくは、暗号化レベルを "低" にする。

    コマンド プロントを実行し、"gpedit" を実行します。

    グループ ポリシー エディターが起動するので、以下の 2-A 、もしくは、2-B を実施します。
    1. セキュリティ層を "RDP セキュリティ層" にする。

      以下のポリシーを設定します。

      [コンピュータの構成] - [管理用テンプレート] - [Windows コンポーネント] - [リモート デスクトップ サービス] - [リモート デスクトップ セッション ホスト] - [セキュリティ]

      ポリシー名:リモート (RDP) 接続に特定のセキュリティ レイヤーの使用を必要とする
      設定 : 有効
      セキュリティ レイヤー : RDP

    2. 暗号化レベルを "低" にする

      以下のポリシーを設定します。

      [コンピュータの構成] - [管理用テンプレート] - [Windows コンポーネント] - [リモート デスクトップ サービス] - [リモート デスクトップ セッション ホスト] - [セキュリティ]

      ポリシー名:クライアント接続の暗号化レベルを設定する
      設定 : 有効
      セキュリティ レイヤー : 低レベル

    グループ ポリシーの更新を強制するには、コマンド プロンプトを開き、"gpupdate /force" と実行します。

    補足 : Windows 7 もしくは Windows Server 2008 R2 から、Windows 7 もしくは Windows Server 2008 R2 へ、リモート デスクトップ接続クライアント (mstsc.exe) を使用し、有効期限の切れたアカウントでアクセスしても、パスワード有効期限がきれた旨のエラー メッセージが表示されません。

以下の修正を適用することで、パスワードの有効期限が切れている旨のメッセージが表示されるようになります。

2648402 You cannot change an expired user account password in a Remote Desktop session from a client computer that is running Windows 7 or Windows Server 2008 R2

状況


マイクロソフトでは、この問題をこの資料の「対象製品」として記載されているマイクロソフト製品の問題として認識しています。