LDAPMODIFY
Section: User Commands (1)
Updated: 2005/01/24
Index
Return to Main Contents
名前
ldapmodify, ldapadd - ldap のエントリ更新/追加ツール
書式
ldapmodify
[-a]
[-c]
[-S file]
[-n]
[-v]
[-k]
[-K]
[-M[M]]
[-d debuglevel]
[-D binddn]
[-W]
[-w passwd]
[-y passwdfile]
[-H ldapuri]
[-h ldaphost]
[-p ldapport]
[-P 2|3]
[-O security-properties]
[-I]
[-Q]
[-U authcid]
[-R realm]
[-x]
[-X authzid]
[-Y mech]
[-Z[Z]]
[-f file]
ldapadd
[-c]
[-S file]
[-n]
[-v]
[-k]
[-K]
[-M[M]]
[-d debuglevel]
[-D binddn]
[-W]
[-w passwd]
[-y passwdfile]
[-h ldaphost]
[-p ldapport]
[-P 2|3]
[-O security-properties]
[-I]
[-Q]
[-U authcid]
[-R realm]
[-x]
[-X authzid]
[-Y mech]
[-Z[Z]]
[-f file]
説明
ldapmodify
は、
ldap_modify(3)
と
ldap_add(3)
のライブラリ関数に対応するコマンドラインインタフェースです。
ldapadd
は、ldapmodify ツールへのハードリンクとになっています。
ldapadd
として起動されると、オプション -a (新しいエントリの追加)が暗黙に指定
されたものとみなします。
ldapmodify
は LDAP サーバへに対してコネクションを張り、バインドした後、エントリを
更新/追加します。エントリ情報は標準入力あるいは -f オプションで指定した
ファイル file から読み込まれます。
オプション
- -a
-
新しいエントリを追加します。
ldapmodify
でこのオプションを指定しなければ既存エントリの更新となります。
ldapadd
として起動すると、このオプションが常に設定されます。
- -c
-
継続操作モードになります。エラーが報告されても、
ldapmodify
は更新を継続します。このオプションを指定しなければ、エラーを報告した後に
終了します。
- -S file
-
エラーによりスキップされた追加/更新レコードが指定のファイル file
に書き込みます。サーバから返されたエラーメッセージはコメントとして付加します。
オプション -c と組み合わせて使用すると最も有効です。
- -n
-
何が行われるのかを示しますが、実際にエントリを更新しません。
デバッグを目的に -v とともに使います。
- -v
-
冗長モードになります。標準出力に多くの診断情報を書き出します。
- -k
-
簡易認証の代わりに Kerberos IV 認証を使います。このオプションは、
有効な許可チケットを既に持っていることを仮定します。このオプションが
効果を持つためには、Kerberos のサポート付きでコンパイルしておか
なければなりません。
- -K
-
オプション -k と同じく Kerberos IV 認証を使いますが、Kerberos IV バインドの
ステップ1のみを行います。このオプションは、slapd に接続する際に
x500dsa.hostname プリンシパルが kerberos ドメインコントローラに
登録されていない場合に有用です。
- -F
-
入力行が
replica:
で始まっている場合その内容にかかわらず、すべての更新を強制します
(デフォルトでは、replica: 行の内容が LDAP サーバのホストおよびポート
と比較され、replog レコードを実際に適用すべきかを決定します)。
- -M[M]
-
ManageDsaIT 制御を有効にします(referral エントリを通常の
エントリと同様に扱います)。
-MM
の指定は、サーバで ManageDsaIT 制御を利用できない場合に、
操作を実行しないようにします。
- -d debuglevel
-
LDAP のデバッグレベルを debuglevel に設定します。
このオプションが効果を持つためには、
ldapmodify
をマクロ LDAP_DEBUG 付きでコンパイルしておかなければなりません。
- -f file
-
標準入力の代わりにファイル file からエントリ更新情報を読み込みます。
- -x
-
SASL の代わりに簡易認証を使います。
- -D binddn
-
LDAP ディレクトリにバインドするのに binddn を使います。
- -W
-
簡易認証のためのプロンプトを出します。
これはコマンドラインにパスワードを指定する代わりに使います。
- -w passwd
-
簡易認証のためのパスワードに passwd を使います。
- -y passwdfile
-
簡易認証のためのパスワードにファイル passwdfile の内容すべてを使います。
- -H ldapuri
-
LDAP サーバを参照する URI を指定します。
- -h ldaphost
-
LDAP サーバが動作しているホストを明示します。
このオプションは時代遅れなので -H を使ってください。
- -p ldapport
-
LDAP サーバに接続するための TCP ポートを明示します。
このオプションは時代遅れなので -H を使ってください。
- -P 2|3
-
利用する LDAP プロトコルのバージョンを指定します。
- -O security-properties
-
SASL のセキュリティプロパティを指定します。
- -I
-
SASL 対話モードにします。常にプロンプトを出します。
デフォルトでは必要なときにだけプロンプトを出します。
- -Q
-
SASL 非対話モードにします。プロンプトは出しません。
- -U authcid
-
SASL バインドのための認証 ID を指定します。
認証 ID の型式は実際に使用する SASL 機構に依存します。
- -R realm
-
SASL バインドのための認証IDのレルム(realm)を指定します。
レルムの形式は実際に使用する SASL 機構に依存します。
- -X authzid
-
SASL バインドのための代理認可IDを指定します。
authzid
は次のフォーマットのいずれかでなければなりません。
dn:<識別名>
あるいは
u:<ユーザ名>
- -Y mech
-
認証に使う SASL 機構を指定します。このオプションを指定しなければ、
サーバがサポートする最良の機構が選ばれます。
- -Z[Z]
-
StartTLS (Transport Layer Security)拡張操作を発行します。
もし
-ZZが指定されたならば、コマンドはこの操作の成功を要求します。
入力フォーマット
file (コマンドラインに -f オプションを与えていなければ標準入力)の
内容は、以下に述べる例外を除いて
slapd.replog(5)
に定義されたフォーマットに従います。
"replica:" で始まる行は LDAP サーバのホストとポートに対応していて、
特定の replog レコードを適用するかを決定するために使われます。
他に "dn:" に先行する行があっても無視されます。
"replica:" 行のあるなしに関わらず
ldapmodify
に replog の変更のすべてを適用するよう強制するには、
オプション -F を使います。
"changetype:" 行が無い場合、-a オプションが設定されていれば
(または、このプログラムが
ldapadd
として起動されていれば)、デフォルトは
"add" であり、さもなければ "modify" です。
changetype が "modify" であって、"add:", "replace:", "delete:" 行の
どれも現れなければ、デフォルトは
ldapmodify(1)
では "replace"、
ldapadd(1)
では "add" となります。
slapd.replog(5)
フォーマットに対する上記の例外は、
ldapmodify
あるいは
ldapadd
への入力として使う
ldif(5)
エントリに適用されることに注意してください。
使用例
ファイル
/tmp/entrymods
があり、その内容は次のようになっているとします。
dn: cn=Modify Me,dc=example,dc=com
changetype: modify
replace: mail
mail: modme@example.com
-
add: title
title: Grand Poobah
-
add: jpegPhoto
jpegPhoto:< file:///tmp/modme.jpeg
-
delete: description
-
次のコマンドを実行します。
ldapmodify -f /tmp/entrymods
これにより、エントリ "Modify Me" の
mail
属性の内容を値 "modme@example.com" で置換し、"Grand Poobah" の
title
を追加して、ファイル "/tmp/modme.jpeg" の内容を
jpegPhoto
として追加して、
description
属性を完全に除去します。
ファイル
/tmp/newentry
があり、その内容は次のようになっているとします。
dn: cn=Barbara Jensen,dc=example,dc=com
objectClass: person
cn: Barbara Jensen
cn: Babs Jensen
sn: Jensen
title: the world's most famous mythical manager
mail: bjensen@example.com
uid: bjensen
次のコマンドを実行します。
ldapadd -f /tmp/newentry
これは、ファイル
/tmp/newentry
にある値を用いて Babs Jensen のための新しいエントリを追加します。
ファイル
/tmp/entrymods
があり、その内容は次のようになっているとします。
dn: cn=Barbara Jensen,dc=example,dc=com
changetype: delete
次のコマンドを実行します。
ldapmodify -f /tmp/entrymods
これは、Babs Jensen のエントリを除去します。
診断
エラーが起きなければ終了ステータスは 0 です。エラーが起きれば、
0 でない終了ステータスが返り、標準エラーに診断メッセージを書き出します。
関連項目
ldapadd(1),
ldapdelete(1),
ldapmodrdn(1),
ldapsearch(1),
ldap.conf(5),
ldap(3),
ldap_add(3),
ldap_delete(3),
ldap_modify(3),
ldap_modrdn(3),
slapd.replog(5)
作者
The OpenLDAP Project <http://www.openldap.org/>
謝辞
OpenLDAP
は OpenLDAP プロジェクト (http://www.openldap.org/) が開発/管理しています。
OpenLDAP
はミシガン大学の LDAP 3.3 リリースより派生しました。
和訳
稲地 稔 <inachi@kkd.biglobe.ne.jp>
Index
- 名前
-
- 書式
-
- 説明
-
- オプション
-
- 入力フォーマット
-
- 使用例
-
- 診断
-
- 関連項目
-
- 作者
-
- 謝辞
-
- 和訳
-