Oracle® Fusion Middleware Oracle Directory Server Enterprise Editionリファレンス 11g リリース1 (11.1.1.7.0) B72441-01 |
|
前 |
次 |
LDAP問合せを表現する1つの方法は、Directory Serverのホスト・マシン、および検索用にDNやフィルタを指定するためのURLを使用するというものです。Directory ServerはLDAP URLとして送信された問合せに応答し、結果を表示するHTMLページを戻します。匿名検索が許可された場合、このような方法で、Webブラウザはディレクトリの検索を実行します。また、Directory Serverのリフェラルを管理する場合、またはアクセス制御命令を管理する場合に、LDAP URLを使用してターゲット・エントリを指定できます。
LDAP URLの詳細は、次の項を参照してください。
LDAP URLの構文は、次のようになっています。
ldap[s]://hostname:port/base_dn?attributes?scope?filter
ldap://
を指定すると、標準LDAPを使用して、LDAPサーバーに接続します。ldaps://
を指定すると、LDAP over SSLを使用してLDAPサーバーに接続します。
表3-1 LDAP URLのコンポーネント
コンポーネント | 説明 |
---|---|
hostname |
LDAPサーバー名(またはドット区切りのIPアドレス)。次に例を示します。
|
port |
LDAPサーバーのポート番号。 ポートが指定されていない場合は、標準LDAPポート(389)またはLDAPSポート(636)が使用されます。 |
base_dn |
ディレクトリにおけるエントリの識別名(DN)。このDNによって、検索の開始点であるエントリを識別します。 ベースDNが指定されていない場合、ディレクトリ・ツリーのルートから検索が開始されます。 |
attributes |
戻される属性。複数の属性を指定するには、カンマを使用して属性を区切ります。たとえば、 URLで属性が指定されていない場合、すべての属性が戻されます。 |
scope |
検索の有効範囲。次の値のいずれかを指定できます。
|
filter |
指定された検索範囲内のエントリに適用するための、検索フィルタ。 フィルタが指定されていない場合、サーバーはフィルタ |
次のコンポーネント、すなわちattributes
、scope
およびfilter
は、URLにおける位置によって識別されます。コンポーネントを指定しない場合は、フィールドを区切るために疑問符を含める必要があります。疑問符が2つ連続する場合、すなわち??
は、属性が指定されていないことを示します。
たとえば、"(sn=Jensen)"
に一致するエントリのすべての属性を戻す"dc=example,dc=com"
からのサブツリー検索開始を指定するには、次のLDAP URLを使用します。
ldap://ldap.example.com/dc=example,dc=com??sub?(sn=Jensen)
URLで特定の属性が識別されていない場合、その検索におけるすべての属性が戻されます。
URLにおける安全でない文字は、特定の文字列で表現される必要があります。次の表はURL内で安全でない文字をリスト表示しており、安全でない文字のかわりに使用するための、関連するエスケープ文字を示しています。
LDAP URLの構文には、資格証明やパスワードを指定する方法は含まれていません。LDAP URLをサポートするLDAPクライアントによって認証メカニズムが提供されるにもかかわらず、LDAP URLを介して開始される検索リクエストは認証されません(匿名)。この項では、LDAP URLの例を示します。
例3-1 エントリのベース検索
次のLDAP URLで、識別名がdc=example,dc=com
のエントリのベース検索を指定します。
ldap://ldap.example.com/dc=example,dc=com
ポート番号が指定されていないため、標準LDAPポート番号389が使用されます。
URLで属性が指定されていないため、この検索ではすべての属性が戻されます。
検索範囲が指定されていないため、この検索は、ベース・エントリのdc=example,dc=com
に限定されます。
フィルタが指定されていないため、このディレクトリはデフォルト・フィルタのobjectclass=*
を使用します。
例3-2 エントリのpostalAddress
属性の取得
次のLDAP URLで、DNがdc=example,dc=com
であるエントリのpostalAddress
属性を取得します。
ldap://ldap.example.com/dc=example,dc=com?postalAddress
検索範囲が指定されていないため、この検索は、ベース・エントリのdc=example,dc=com
に限定されます。
フィルタが指定されていないため、このディレクトリはデフォルト・フィルタのobjectclass=*
を使用します。
例3-3 エントリのcn
およびmail
属性の取得
次のLDAP URLでは、Barbara Jensenのcn
およびmail
属性を取得します。
ldap://ldap.example.com/cn=Barbara%20Jensen,dc=example, dc=com?cn,mail
検索範囲が指定されていないため、この検索は、ベース・エントリのcn=Barbara Jensen,dc=example,dc=com
に限定されます。
フィルタが指定されていないため、このディレクトリはデフォルト・フィルタのobjectclass=*
を使用します。
例3-4 dc=example,dc=com
配下の姓Jensen
の取得
次のLDAP URLは、姓がJensen
でdc=example,dc=com
配下のあらゆるレベルのエントリの検索を指定します。
ldap://ldap.example.com/dc=example,dc=com??sub?(sn=Jensen)
URLで属性が指定されていないため、この検索ではすべての属性が戻されます。
検索範囲がsub
であるため、この検索は、ベース・エントリのdc=example,dc com
とベース・エントリ配下のすべてのレベルのエントリを網羅します。
例3-5 dc=example,dc=com
より1レベル下のすべてのエントリに関するオブジェクト・クラスの取得
次のLDAP URLは、dc=example,dc=com
より1レベル下のすべてのエントリについて、オブジェクト・クラス検索を指定します。
ldap://ldap.example.com/dc=example,dc=com?objectClass?one
検索範囲がone
であるため、この検索は、ベース・エントリのdc=example,dc=com
より1レベル下のすべてのエントリを網羅します。この検索範囲には、ベース・エントリは含まれません。
フィルタが指定されていないため、このディレクトリはデフォルト・フィルタのobjectclass=*
を使用します。