Ldifde でユーザーのパスワードを設定する方法

この記事では、Ldifde ツールを使用してユーザーのパスワードを設定する方法について説明します。

適用対象: Windows 10 - すべてのエディション、Windows Server 2012 R2
元の KB 番号: 263991

詳細

Active Directory で使用されるパスワード属性は "unicodePwd" です。 この属性は、制限された条件下で書き込むことができますが、読み取ることはできません。 この属性は、オブジェクトの作成時に追加したり、検索によって読み取ったりすることはできません。

この属性を変更するには、クライアントに 128 ビットの Secure Sockets Layer/Transport Layer Security(SSL/TLS) または SASL で暗号化されたサーバーへの接続が必要です。 高暗号化パックは、クライアントとサーバーの両方にインストールする必要があります。

注:

SASL 暗号化を使用する場合は、LDIFDE の "/h" 引数を使用できます。
base-64 エンコーダーを使用する場合は、Unicode がサポートされていることを確認するか、正しくないパスワードを作成する必要があります。

unicodePwd 属性を変更するには、2 つの方法があります。 1 つ目は、一般的なユーザーのパスワード変更操作に似ています。 この場合、変更要求には削除操作と追加操作の両方が含まれている必要があります。 削除操作には、引用符で囲まれた現在のパスワードが含まれており、RFC 1521 で説明されているように Base64 でエンコードされている必要があります。 追加操作には、引用符で囲まれた新しいパスワードが含まれており、Base64 でエンコードされている必要があります。

属性を変更する 2 つ目の方法は、ユーザーのパスワードをリセットする管理者に似ています。 これを行うには、クライアントは、他のユーザーのパスワードを変更するための十分な権限を持つユーザーを管理者としてバインドしている必要があります。 変更要求には、引用符で囲まれた新しいパスワードで囲まれた単一の置換操作が含まれており、Base64 でエンコードされている必要があります。 クライアントに十分な権限がある場合、このパスワードは、古いパスワードが何であったかに関係なく、新しいパスワードになります。

次のサンプル Ldif ファイル (chPwd.ldif) は、パスワードを newPassword に変更します。

dn: CN=TestUser,DC=testdomain,DC=com
changetype: modify
replace: unicodePwd
unicodePwd::IgBuAGUAdwBQAGEAcwBzAHcAbwByAGQAIgA=
-

chPwd.ldif ファイルをインポートするには、次のコマンドを使用します。

  • SSL/TLS:
    ldifde -i -f chPwd.ldif -t 636 -s \<dcname> -b \<username> \<domain> \<password>
  • Sasl:
    ldifde -i -f chPwd.ldif -h -s \<dcname> -b \<username> \<domain> \<password>

パスワードが適用されるパスワード ポリシーの条件を満たしていない場合は、エラーがスローされます。

1 行目以降のエントリにエラーを追加する: 実行を望まない サーバー側のエラーは"システムに接続されているデバイスが機能していません

詳細については、次のドキュメントを参照してください。
次の IETF Web サイトの "LDAP データ交換形式 (LDIF) - 技術仕様" ドキュメント。

IETF 109 Online
次の IETF Web サイトの RFC 1521:

RFC 1521

他社テクニカル サポートのお問い合わせ窓口は、ユーザーの便宜のために提供されているものであり、 将来予告なしに変更されることがあります。 マイクロソフトは、掲載されている情報に対して、いかなる責任も負わないものとします。