Windows でのパスワード変更プロトコルの説明

この記事では、Windows でパスワードを変更するメカニズムについて説明します。

適用対象: Windows 10、Windows Server 2012 R2
元の KB 番号: 264480

概要

Windows では、パスワードを変更するためにさまざまなメカニズムが使用されています。 この記事では、これらのメカニズムについて説明します。

詳細

サポートされているパスワード変更プロトコルは次のとおりです。

  1. NetUserChangePassword プロトコル
  2. NetUserSetInfo プロトコル
  3. Kerberos のパスワード変更プロトコル (IETF インターネット ドラフト Draft-ietf-cat-kerb-chg-password-02.txt) [ポート 464]
  4. Kerberos set-password protocol (IETF Internet Draft Draft-ietf-cat-kerberos-set-passwd-00.txt) [ポート 464]
  5. ライトウェイト ディレクトリ アクセス プロトコル (LDAP) の書き込みパスワード属性 (128 ビットの Secure Sockets レイヤー [SSL] が使用されている場合)
  6. Microsoft 以前のWindows NT (LAN Manager) の互換性のための XACT-SMB

パスワードの変更操作では、変更が許可される前にユーザーの現在のパスワードが認識されている必要があります。 パスワード設定操作にはこの要件はありませんが、アカウントの [パスワードのリセット] アクセス許可によって制御されます。

LDAP (方法 5) を使用している場合、ドメイン コントローラーとクライアントの両方で 128 ビット SSL を使用して接続を保護できる必要があります。 ドメイン コントローラーが SSL 用に構成されていない場合、または適切に長いキーが使用できない場合、パスワード変更の書き込みは拒否されます。

Active Directory ドメイン コントローラーは、これらすべてのプロトコルでパスワード変更要求をリッスンします。

この記事で前述したように、さまざまなプロトコルがさまざまな状況で使用されます。 例:

  • 相互運用可能な Kerberos クライアントは、Kerberos プロトコルを使用します。 MIT Kerberos バージョン 5 1.1.1 を使用する UNIX ベースのシステムでは、Kerberos のパスワード変更プロトコル (方法 3) を使用して、Windows ベースのドメイン内のユーザー パスワードを変更できます。
  • ユーザーが Ctrl + Alt + DELETE キーを押して [パスワードの変更] をクリックして自分のパスワードを変更すると Windows NT、ターゲットがドメインの場合は、Windows 2003 まで NetUserChangePassword メカニズム (方法 1) が使用されます。 Windows Vista 以降では、Kerberos 変更パスワード プロトコルがドメイン アカウントに使用されます。 ターゲットが Kerberos 領域の場合は、Kerberos 変更パスワード プロトコル (方法 3) が使用されます。
  • Microsoft Windows 95/Microsoft Windows 98 を実行しているコンピューターからパスワードを変更する要求では、XACT-SMB を使用します (方法 6)。
  • Active Directory Services Interface (ADSI) IaDSUser インターフェイスで ChangePassword メソッドを使用するプログラムは、最初に LDAP (メソッド 5) を使用し、次に NetUserChangePassword プロトコル (方法 1) を使用してパスワードの変更を試みます。
  • ADSI IaDSUser インターフェイスで SetPassword メソッドを使用するプログラムは、最初に LDAP (メソッド 5) を使用してパスワードの変更を試み、次に Kerberos set-password プロトコル (メソッド 4)、NetUserSetInfo プロトコル (メソッド 2) を使用してパスワードの変更を試みます。
  • Active Directory ユーザーとコンピューター スナップインでは、ADSI 操作を使用してユーザー パスワードを設定します。