図1 パスワードをインポートするためのLDIFファイル
図1 パスワードをインポートするためのLDIFファイル
[画像のクリックで拡大表示]
図2 パスワードのインポートを実行した画面
図2 パスワードのインポートを実行した画面
[画像のクリックで拡大表示]

ldifde -i -u -t 636 -f LDIFファイル名

 ldifdeコマンドを使えば,ユーザー・アカウントのパスワードをインポートすることができます。ただし,パスワードのインポートにはLDAPS(636/tcp)の通信が必要です。LDAPSを有効にするには,エンタープライズ証明書またはドメイン・コントローラ名をサブジェクト名とするサーバー証明書が必要ですが,Windows証明機関をインストールすることで利用できます。証明書のインストール等は「ヘルプとサポート」などを参照してください。

 パスワードはunicodePwd属性をインポートしますが,「ダブルクォーテーションで囲んだパスワード文字列(UTF16リトルエンディアン)をBASE64でエンコード」する必要があります。例えば「password$01」というパスワードであれば,インポートする文字列は「IgBwAGEAcwBzAHcAbwByAGQAJAAwADEAIgA=」となります。またパスワードのインポートにあわせて,ユーザー・アカウントを「通常に有効」と指定する必要から,userAccountControl属性を「512」と設定します。これらをすべて満たしたLDIFファイルは図1のようになります。

 このファイルを使ってインポートを実行すると,ユーザー・アカウントのインポートと同時にパスワードを設定でき,ユーザーが無効化することもありません(図2)。この場合,ldifdeコマンドは,必ずLDAPS経由で実行する必要がありますので,注意してください。

 また,ここではアカウントのインポート時と同時にパスワードを設定しましたが,先にアカウントを作ってから「changetype:modify」として,パスワードをあとでインポートする方法もあります。詳細については,「Active Directoryに対してアカウントやパスワードを一括設定したい」を参照してください。