SLAPD-PERL
Section: File Formats (5)
Updated: 2005/01/24
Index
Return to Main Contents
名前
slapd-perl - slapd の Perl バックエンド
所在
/usr/local/etc/openldap/slapd.conf
説明
slapd(8)
の Perl バックエンドは
slapd(8)
に
perl(1)
インタプリタを組み込むことにより動作します。
設定ファイル
slapd.conf(5)
の perl データベースセクションは何の Perl
モジュールを利用するかを指定しなければなりません。
そのようにしておくと
slapd
はバックエンドの特定の実体のためにすべての要求を処理する新しい
Perl オブジェクトを作成します。
以下のアクションのそれぞれに対してメソッドを作成する必要があります。
* new # 新しいオブジェクトの作成
* search # ldap 検索の実行
* compare # 比較を行う
* modify # エントリの更新
* add # バックエントへのエントリの追加
* modrdn # エントリの RDN の更新
* delete # ldap エントリの削除
* config # 設定ファイル上の認識されなかった行の処理
* init # バックエンドが初期化された後に呼出し
特に明示しない限り、メソッドの戻り値がクライアントに返される結果コード
になります。アクションを実装していない場合には unwillingToPerform (53)
エラーを返します。
- new
-
このメソッドは設定ファイルの読込みが
perlmod
行に達したときに呼び出されます。
その行に指定されたモジュールがここで perl インタプリタに渡されて、
新しいオブジェクトを作成するために new メソッドが呼ばれます。
通常の perl オブジェクトと同様に、このオブジェクトの複数のインスタンスが
作られる可能性があることに注意してください。
メソッド
new
は引数としてクラス名を受け取ります。
- search
-
このメソッドはクライアントから検索要求が来た場合に呼び出されます。
引数は次のとおりです。
* オブジェクト参照
* ベース DN
* スコープ
* 別名の実参照ポリシ
* サイズ制限
* 時間制限
* フィルタ文字列
* 属性名だけを取り出すようにするかのフラグ(yes なら 1 を指定)
* 返す属性のリスト(空も可)
戻り値:(resultcode, ldif-entry, ldif-entry, ...)
- compare
-
このメソッドはクライアントから比較要求が来た場合に呼び出されます。
引数は次のとおりです。
* オブジェクト参照
* dn
* 属性アサーション文字列
- modify
-
このメソッドはクライアントから更新要求が来た場合に呼び出されます。
引数は次のとおりです。
* オブジェクト参照
* dn
* 次の形式のリスト
({ "ADD" | "DELETE" | "REPLACE" },
attributetype, value...)...
- add
-
このメソッドはクライアントから追加要求が来た場合に呼び出されます。
引数は次のとおりです。
* オブジェクト参照
* エントリの文字列表現形式
- modrdn
-
このメソッドはクライアントから相対識別名変更要求が来た場合に呼び出されます。
引数は次のとおりです。
* オブジェクト参照
* dn
* 新しい rdn
* 古い rdn に使われていた属性値を削除するかのフラグ(yes なら 1)
- delete
-
このメソッドはクライアントから削除要求が来た場合に呼び出されます。
引数は次のとおりです。
* オブジェクト参照
* dn
- config
-
このメソッドには設定ファイル
slapd.conf(5)
の中の処理されなかった行を引き渡されます。
引数は次のとおりです。
* オブジェクト参照
* 行の引数の配列
戻り値: これが適正なオプションでなければ 0 以外を返します。
- init
-
このメソッドはバックエンドが初期化された後に呼ばれます。
引数は次のとおりです。
* オブジェクト参照
戻り値: 初期化に失敗したならば 0 以外を返します。
設定オプション
ここにあげる
slapd.conf
オプションは PERL バックエンドデータベースに指定できます。
すなわち、これらのオプションは "database perl"
とある行の後で、次の "backend" あるいは "database"
行が現れる前になければなりません。
この他に指定できるデータベースオプションについては
slapd.conf(5)
マニュアルページを参照してください。
- perlModulePath /path/to/libs
-
変数 @INC に指定のパスを追加します。
- perlModule ModName
-
ModName.pm にある ModName という名前のモジュールを `use' します。
- filterSearchResults
-
検索結果を直接クライアントに返すのではなく、
検索要求に指定された検索フィルタでフィルタリングします。
設定例
OpenLDAP ソースツリーの中の slapd/back-perl/
ディレクトリに Perl モジュールの例があります。
警告
このバックエンドの perl
モジュールに対するインタフェースは変わる可能性があります。
どのような提案も大歓迎します。
関連ファイル
- /usr/local/etc/openldap/slapd.conf
-
デフォルトの slapd 設定ファイル
関連項目
slapd.conf(5),
slapd(8),
perl(1).
和訳
稲地 稔 <inachi@kkd.biglobe.ne.jp>
Index
- 名前
-
- 所在
-
- 説明
-
- 設定オプション
-
- 設定例
-
- 警告
-
- 関連ファイル
-
- 関連項目
-
- 和訳
-