CFLDAP | |||||||||
説明
Netscape Directory Server などの LDAP (Lightweight Directory Access Protocol) ディレクトリサーバーへのインターフェイスを提供します。 |
|||||||||
カテゴリ
インターネットプロトコルタグ | |||||||||
シンタックス<cfldap server = "server_name" port = "port_number" username = "name" password = "password" action = "action" name = "name" timeout = "seconds" maxRows = "number" start = "distinguished_name" scope = "scope" attributes = "attribute, attribute" returnAsBinary = "column_name, column_name" filter = "filter" sort = "attribute[, attribute]..." sortControl = "nocase" および "desc"、"asc" dn = "distinguished_name" startRow = "row_number" modifyType = "replace"、"add"、"delete" rebind = "yes"、"no" referral = "number_of_allowed_hops" secure = "multi_field_security_string" separator = "separator_character" delimiter = "delimiter_character"> |
|||||||||
関連項目
cfftp、cfhttp、cfmail、cfmailparam、cfpop、『ColdFusion MX 開発ガイド』の第23章の「LDAP ディレクトリの管理」 |
|||||||||
ヒストリ
ColdFusion MX 7: returnAsBinary 属性が追加されました。 ColdFusion MX:
|
|||||||||
使用方法
query アクションを使用すると、cfldap ではクエリーオブジェクトが作成されるため、次の表に示すようにクエリー変数の情報にアクセスできます。
security="CFSSL_BASIC" オプションを使用した場合、ColdFusion は、サーバーの資格情報と ColdFusion MX で使用される JRE の jre/lib/security/cacerts キーストア内の情報とを比較することで、サーバーを信頼するかどうかを判断します。ColdFusion MX のデフォルトの cacerts ファイルには、数多くの認証機関についての情報が含まれています。このファイルを追加情報で更新しなければならない場合は、ColdFusion の jre/bin ディレクトリにあるキーツールユーティリティを使用して、X.509 形式の資格情報をインポートします。たとえば、以下を入力してください。 keytool -import -keystore cacerts -alias ldap -file ldap.crt -keypass bl19mq その後、ColdFusion MX を再起動します。キーツールユーティリティの初期 keypass パスワードは "change it" です。キーツールユーティリティの使い方については、Sun JDK ドキュメントを参照してください。 ColdFusion では無効な文字が、LDAP の属性名に使用されていることがあります。結果として、cfldap タグが作成するクエリー結果セットの中に、CFML でアクセスできない無効な文字を含む名前の列が含まれる可能性があります。ColdFusion では、無効な文字は自動的にアンダースコア文字にマッピングされます。したがって、クエリー結果セットの列名は LDAP 属性の名前とは正確には一致しない場合があります。 使用例については、『ColdFusion MX 開発ガイド』を参照してください。 |
|||||||||
例<h3>cfldap の例</h3> <p>LDAP ディレクトリサーバーへのインターフェイスを提供します。この例では コネチカット大学のパブリック LDAP サーバーを使用します。パブリック LDAP サーバーの詳細については、 <a href="http://www.emailman.com">http://www.emailman.com</a> を参照してください。</p> <p>名前を入力し、パブリック LDAP リソースを検索してください。 名前の前後のアスタリスクはワイルドカードとして機能します。</p> <!--- form.name が存在する場合は、フォームが送信されているのでクエリーを実行します。 ---> <cfif IsDefined("form.name")> <!--- 名前がリストされていることをチェックします。 ---> <cfif form.name is not ""> <!--- LDAP クエリーを作成します。 ---> <cfldap server = "ldap.uconn.edu" action = "query" name = "results" start = "dc=uconn,dc=edu" filter = "cn=#name#" attributes = "cn,o,title,mail,telephonenumber" sort = "cn ASC"> <!--- 結果を表示します。 ---> <center> <table border = 0 cellspacing = 2 cellpadding = 2> <tr> <th colspan = 5> <cfoutput>#results.recordCount# matches found </cfoutput></TH> </tr> <tr> <th><font size = "-2">名前</font></TH> <th><font size = "-2">組織</font></TH> <th><font size = "-2">役職</font></TH> <th><font size = "-2">電子メール</font></TH> <th><font size = "-2">電話</font></TH> </tr> <cfoutput query = "results"> <tr> <td><font size = "-2">#cn#</font></td> <td><font size = "-2">#o#</font></td> <td><font size = "-2">#title#</font></td> <td><font size = "-2"> <A href = "mailto:#mail#">#mail#</A></font></td> <td><font size = "-2">#telephonenumber#</font></td> </tr> </cfoutput> </table> </center> </cfif> </cfif> <form action="#cgi.script_name#" method="POST"> <p>データベース内で検索する名前を入力します。 <p> <input type="Text" name="name"> <input type="Submit" value="検索" name=""> </form> |
SERVER | |
必須 | |
LDAP サーバーのホスト名または IP アドレスです。 |
PORT | |
オプション | |
Default value: "389"
ポートです。 |
USERNAME | |
secure = "CFSSL_BASIC" の場合は必須 | |
Default value: "(匿名)"
ユーザー ID です。 |
PASSWORD | |
secure = "CFSSL_BASIC" の場合は必須 | |
ユーザー名に対応するパスワードです。 secure = "CFSSL_BASIC" の場合、V2 によりパスワードが送信前に暗号化されます。 |
ACTION | |
必須 | |
Default value: "query"
|
NAME | |
action = "Query" の場合は必須 | |
LDAP クエリーの名前です。このタグは、この値を検証します。 |
TIMEOUT | |
オプション | |
Default value: "60000"
LDAP 処理の最大待機時間をミリ秒単位で指定します。 |
MAXROWS | |
オプション | |
LDAP クエリーに含まれるエントリの最大数です。 |
START | |
action = "Query" の場合は必須 | |
検索を開始するために使用するエントリの識別名です。 |
SCOPE | |
オプション | |
Default value: "oneLevel"
action = "Query" の場合に、start 属性に指定したエントリからどこまでを検索スコープにするかを指定します。
|
ATTRIBUTES | |
action = "Query"、"Add"、"ModifyDN"、または "Modify" の場合は必須 | |
クエリーの場合は、取得したい属性のカンマ区切りリストを指定します。クエリーの場合、すべての属性を取得するには "*" を指定します。 action = "add" または "modify" の場合は、更新する列のリストを指定できます。属性をセミコロンで区切って指定します。 action = "ModifyDN" の場合は、シンタックスチェックを行わずに属性がそのまま LDAP サーバーに渡されます。 |
RETURNASBINARY | |
オプション | |
バイナリ値として返される列のカンマ区切りリストです。 |
FILTER | |
オプション | |
Default value: ""objectclass = *""
action = "query" の場合の検索条件です。 属性を |
SORT | |
オプション | |
クエリー結果のソートに使用する属性です (複数可)。カンマ区切りで指定します。 |
SORTCONTROL | |
オプション | |
Default value: "asc"
sortControl = "nocase, asc" のように、ソートタイプを組み合わせて入力することもできます。 |
DN | |
action = "Add"、"Modify"、"ModifyDN"、または "delete" の場合は必須 | |
update アクションの識別名です。例 : "cn = Bob Jensen, o = Ace Industry, |
STARTROW | |
オプション | |
Default value: "1 "
action = "query" と共に使用します。ColdFusion クエリーに挿入する LDAP クエリーの最初の行です。 |
MODIFYTYPE | |
オプション | |
Default value: "replace"
複数値リスト内で属性を処理する方法を示します。
既に存在する属性や空の属性を追加することはできません。 |
REBIND | |
オプション | |
Default value: "no"
|
REFERRAL | |
オプション | |
整数です。委託で許可されるホップの数です。値 を 0 に設定すると、LDAP 用の参照アドレスが無効になります。したがって、データは返されません。 |
SECURE | |
オプション | |
使用するセキュリティと、必要な情報です。オプションは 1 つです。
"CFSSL_BASIC" を指定すると、V2 SSL の暗号化とサーバー認証が可能になります。 |
SEPARATOR | |
オプション | |
Default value: ", [カンマ]"
複数の値を持つ属性の、属性値の区切り文字です。query、add、modify アクションにより、また、cfldap により、複数の値を持つ属性を出力するために使用されます。 たとえば、$ (ドル記号) に設定すると、attributes 属性に "objectclass = top$person" という値を指定できます。この場合、objectclass の最初の値は top に、2 番めの値は person になります。これにより、値にカンマが含まれる場合の混乱を回避します。 |
DELIMITER | |
オプション | |
Default value: "; [セミコロン]"
属性の名前と値のペアの区切り文字です。この属性は次の場合に使用します。
query、add、modify の各アクションにより、また、cfldap により、複数の値を持つ属性を出力するために使用されます。 たとえば、この属性に $ (ドル記号) を指定した場合は、"cn = Double Tree Inn$street = 1111 Elm; Suite 100 と指定できます。ここでは、セミコロンは番地名の一部です。 |