LDAPサーバへのユーザーの一括登録について

LDAPのユーザー情報はLDIFというファイル形式でのインポート・エクスポートが
一般的で、CSVでのインポート・エクスポートはあまりサポートされていません。
LDIFファイルでは、ユーザーの情報を複数行で記述します。
例を挙げれば、

dn: cn=user1,ou=users,dc=icoc,dc=co,dc=jp
cn: user1
objectClass: organizationalRole
objectClass: simpleSecurityObject
userPassword: user1Password

dn: cn=user2,ou=users,dc=icoc,dc=co,dc=jp
cn: user2
objectClass: organizationalRole
objectClass: simpleSecurityObject
userPassword: user2Password

このような形式になります。
dnからuserPasswordまでで1ユーザーの情報となっています。

ある程度の数のユーザーを一括で登録したい場合、
CSVは横方向に情報を持つため、EXCELなどを使用することで
複数ユーザーに対して、一括での追加、編集が容易に行えますが、
LDIFでは縦方向に情報を持つので、複数ユーザーに対しての一括追加、編集は
CSVに比べると、容易には行えません。

これを考慮すると、
データの作成はEXCELなどを用いて作成し、
インポートを行う時にLDIFに変換できれば、
大量のユーザーを扱う際でも手間ではなくなります。

そこでCSVをLDIFに変換するツールは無いものかと探したところ、
csv2ldif2というスクリプトがありました。
http://sourceforge.net/projects/csv2ldif2/

上記URLから「csv2ldif2-1.1.tar.gz」をダウンロードします。
圧縮形式はtar.gzなので、Windowsで使用する場合、
解凍ソフトを用いる必要があります。

ファイル解凍後、フォルダが作成されますので任意の位置に配置します。
コマンドラインからは以下の様に実行します。

cd フォルダの配置場所
perl csv2ldif2.pl "ou=users,dc=icoc,dc=co,dc=jp" < tsuika.csv > tsuika.ldif

perlで書かれているため、perlを宣言後、スクリプトファイルを指定します。
ファイル名の後、LDAP上でユーザーを配置するディレクトリを指定します。
上記の”ou=users,dc=icoc,dc=ac,dc=jp”という箇所です。
その後、変換元のファイル名を記述します。
このとき必ず<>で囲む必要が有ります。
最後に変換後のファイル名を記述し、実行すると、変換が行われます。

例えば、以下の内容を持つCSVを変換すると、

cn,objectClass,objectClass,userPassword
user1,organizationalRole,simpleSecurityObject,user1Password


dn: cn=user1,ou=users,dc=icoc,dc=co,dc=jp
cn: user1
objectClass: organizationalRole
objectClass: simpleSecurityObject
userPassword: user1Password

このように変換されます。
変換したLDIFをLDAPへインポートすれば、ユーザーの一括登録が行えます。