ldapmodify, ldapadd - LDAP エントリ追加および変更ツール
ldapmodify [-a] [-c] [ -r] [-n] [-v] [-F] [ -b] [-A] [-q] [-H] [-?] [-E] [ -J] [-Z] [-M] [-d debuglevel] [-D bindDN] [-j filename] [-J [:criticality]] [-B baseDN] [-V version] [-Y proxyDN] [ -O hopLimit] [-i locale] [-k path] [-e errorFile] [ -P path] [-N certificate] [-w passwd] [-o attributename= value] [-h ldaphost] [-W password] [-p ldapport] [ -f file] [-l nb-ldap-connections]
ldapadd [-c] [-n] [ -v] [-F] [ [-b] [-A] [-q] [ -H] [-?] [-E] [-J] [ -Z] [-M]-d debuglevel ] [-D bindDN] [-j filename] [-B baseDN] [ -V version] [-Y proxyDN] [-O hopLimit] [-i locale] [ -k path] [-e errorFile] [-P path] [-N certificate] [ -w passwd] [-o attributename= value] [-h ldaphost] [ -W password] [-p ldapport] [-f file] [-l nb-ldap-connections]
ldapmodify ユーティリティーは LDAP サーバーへの接続を開いてバインドし、エントリを変更または追加します。エントリ情報は標準入力から、または –f オプションを使用して指定された file から読み取られます。ldapadd ユーティリティーは、ldapmodify ツールへのハードリンクとして実装されます。ldapadd として呼び出された場合は、–a (新しいエントリの追加) オプションが自動的にオンに設定されます。
ldapadd と ldapmodify はどちらも、同じエントリに対する重複した属性の名前と値のペアを拒否します。
サポートしているオプションは、次のとおりです。
新しいエントリを追加します。デフォルトでは、ldapmodify は既存のエントリを変更します。ldapadd として呼び出された場合は、このオプションが常に設定されます。
ASCII 以外のモード: –v オプションと組み合わせて、ASCII 以外の値を表示します。
バイナリファイルを処理します。ldapmodify ツールは、入力内のすべての属性値を走査して、それが有効なファイル参照であるかどうかを判定します。参照が有効な場合は、そのファイルの内容を属性の値として使用します。このオプションは、属性のバイナリデータ (JPEG イメージなど) を入力するために使用されます。たとえば、対応する LDIF 入力は jpegPhoto: /tmp/photo.jpg になります。また、ldapmodify ツールは、ファイルの内容を直接含めるための LDIF :< URL の表記もサポートしています。
追加を実行するときのベース DN を、通常はシェルの二重引用符 ("") 内に指定します。すべてのエントリがこの接尾辞の下に配置されるため、一括インポート機能が提供されます。
継続動作モードを指定します。エラーが報告されても、ldapmodify および ldapadd は変更を続行します。デフォルトでは、エラーを報告したあとに終了します。
識別名 bindDN を使用してディレクトリにバインドします。
LDAP のデバッグレベルを設定します。ldapmodify および ldapadd に役立つデバッグレベルは次のとおりです。
トレース
パケット
引数
フィルタ
アクセス制御
複数のカテゴリのデバッグ情報を要求するには、マスクを追加します。たとえば、トレースとフィルタの情報を要求するには、33 の debuglevel を指定します。
入力内の無効な更新文が、デバッグのために errorFile にコピーされます。大きな LDIF 入力を処理しているときのエラーを修正するには、–c オプションとともに使用します。
認証応答制御を使用してバインド識別情報を公開 (報告) するようサーバーに要求します。
replica: で始まる入力行の内容には関係なく、すべての変更を強制的に適用します。デフォルトでは、replica: 行が使用中の LDAP サーバーホストおよびポートと比較されて、replog レコードを適用するかどうかが判定されます。
標準入力の代わりに file からエントリ変更情報を読み取ります。
すべてのオプションを簡単に説明した使用法のヘルプテキストを表示します。
すべてのオプションを簡単に説明した使用法のヘルプテキストを表示します。
LDAP サーバーが実行されている代替ホストを指定します。
–f LDIFfile または標準入力で使用する文字セットを指定します。デフォルトは、LANG 環境変数で指定された文字セットです。このオプションを使用して、指定した文字セットから UTF8 への変換を実行し、それによって LANG 設定をオーバーライドすることを選択できます。
バインド DN 用のパスワードまたは SSL クライアントの鍵データベース用のパスワードを含むファイルを指定します。パスワードを保護するには、このオプションをスクリプトで使用し、セキュリティー保護されたファイルにパスワードを保存します。このオプションは、–w および –W オプションとは相互に排他的です。
criticality はブール値です (デフォルトは false)。
変換ルーチンを含むディレクトリへのパスを指定します。これらのルーチンは、ディレクトリサーバーでデフォルトではサポートされていないロケールを指定したい場合に使用されます。これは NLS のサポート用です。
ldapadd または ldapmodify がディレクトリ内の変更を処理するために開く LDAP 接続の数を指定します。デフォルトは 1 つの接続です。
スマートリフェラルを管理します。これらが操作のターゲットである場合は、リフェラルに従って取得されたエントリではなく、リフェラルを含むエントリを変更します。
変更をプレビューしますが、エントリへの変更は行いません。–v および –d と組み合わせるとデバッグに役立ちます。
証明書に基づくクライアント認証で使用する証明書名を指定します。たとえば、–N "Directory-Cert" と指定します。
SASL メカニズムや、セキュリティープロパティーなどのその他のオプションの場合、動作モード、認可 ID、認証 ID などを指定します。
各種の属性名とそれらの値は次のとおりです。
SASL セキュリティープロパティーの定義用。
SASL レルムを指定します (デフォルトは realm=none)。
SASL バインドの認可 ID 名を指定します。
SASL バインドの認証 ID を指定します。
さまざまな SASL メカニズムを指定します。
変更するエントリの検索中に従うべき参照ホップの最大数を指定します。デフォルトでは、制限はありません。
セキュリティー保護された LDAP サーバーが待機している代替 TCP ポートを指定します。
クライアントの証明書データベースのパスとファイル名を指定します。例:
-P /home/uid/.netscape/cert7.db
このコマンドをディレクトリサーバーと同じホスト上で使用している場合は、そのサーバーの独自の証明書データベースを使用できます。例:
-P installDir/lapd-serverID/alias/cert7.db
サーバー認証のみを指定するには、–P オプションだけを使用します。
既存の値を指定された値に置き換えます。ldapmodify では、これがデフォルトです。ldapadd が呼び出された場合、または –a オプションが指定されている場合、–r オプションは無視されます。
冗長モードを使用し、診断が標準出力に書き込まれるようにします。
削除操作に使用される LDAP プロトコルのバージョン番号 (2 または 3 のどちらか) を指定します。LDAP v3 がデフォルトです。v3 をサポートしていないサーバーに接続しているときは、LDAP v2 を指定します。
–P オプションで指定されたクライアントの鍵データベースのパスワードを指定します。このオプションは、証明書に基づくクライアント認証では必須です。コマンド行で password を指定すると、システム上のほかのユーザーが ps コマンドを使用してそのパスワードを表示できるため、セキュリティーの問題が発生します。ファイルからパスワードを指定するには、代わりに –j を使用します。このオプションは、–j とは相互に排他的です。
ディレクトリへの認証のパスワードとして passwd を使用します。認証に使用されるパスワードを指定するために –w passwd を使用すると、システムのほかのユーザーが ps コマンドを使用して、スクリプトファイルまたはシェルの履歴でそのパスワードを表示できるようになります。このオプションを指定せずに ldapmodify コマンドまたは ldapadd コマンドを使用した場合、このコマンドはパスワードの入力を求め、それを標準入力から読み取ります。–w オプションを指定せずに使用されると、パスワードがほかのユーザーに表示されなくなります。
変更操作で使用するプロキシ DN (プロキシ設定された認可 ID) を、通常はシェルの二重引用符 ("") 内に指定します。
証明書に基づくクライアント認証を提供するために SSL を使用することを指定します。このオプションには、–N と SSL パスワード、および証明書と鍵データベースを識別するためにに必要なその他のすべての SSL オプションが必要です。
次の終了ステータスが返されます。
正常終了。
エラーが発生した。診断メッセージが標準エラー出力に書き込まれます。
file の内容 (–f オプションが指定されていない場合は標準入力) の形式を以降の例に示します。
使用例 1 エントリの変更ファイル /tmp/entrymods には、次の変更指示が含まれています。
dn: cn=Modify Me, o=XYZ, c=US changetype: modify replace: mail mail: modme@atlanta.xyz.com - add: title title: System Manager - add: jpegPhoto jpegPhoto:< file:///tmp/modme.jpeg - delete: description -
次のコマンド
example% ldapmodify -r -f /tmp/entrymods
Modify Me エントリを次のように変更します。
mail 属性の現在の値が modme@atlanta.xyz.com の値に置き換えられます。
System Manager の値を持つ title 属性が追加されます。
ファイル /tmp/modme.jpeg の内容を使用して、jpegPhoto 属性が属性値として追加されます。
description 属性が削除されます。
ファイル /tmp/newentry には、新しいエントリを作成するための次の情報が含まれています。
dn: cn=Ann Jones, o=XYZ, c=US objectClass: person cn: Ann Jones cn: Annie Jones sn: Jones title: Director of Research and Development mail: ajones@londonrd.xyz.us.com uid: ajones
コマンド
example% ldapadd -f /tmp/newentry
このファイル内の情報を使用して、Ann Jones の新しいエントリを追加します。
使用例 3 IPv6 サーバー上の新しいエントリの作成ファイル /tmp/newentry には、IPv6 サーバー上に新しいエントリを作成するための次の情報が含まれています。
dn: cn=Ann Jones, o=XYZ, c=US objectClass: person cn: Ann Jones cn: Annie Jones sn: Jones title: Director of Research and Development mail: ajones@londonrd.xyz.us.com uid: ajones
コマンド
example% ldapadd -c -v -h '['fec0::111:a00:20ff:feaa:a364']':389 \ -D cn=Directory Manager -w secret \ -f /tmp/entry
このファイル内の情報を使用して、Directory Manager の新しいエントリを追加します。
使用例 4 エントリの削除ファイル /tmp/badentry には、削除されるエントリに関する次の情報が含まれています。
dn: cn=Ann Jones, o=XYZ, c=US changetype: delete
次のコマンド
example% ldapmodify -f /tmp/badentry
Ann Jones のエントリを削除します。
属性についての詳細は、attributes(5) を参照してください。
|
ldapdelete(1), ldaplist(1), ldapmodrdn(1), ldapsearch(1), ldapaddent(1M), ldap_cachemgr(1M), ldap_get_option(3LDAP), ldap_set_option(3LDAP), attributes(5), ldap(5)