updateObjects
updateObjects タグは LDAP ディレクトリサービス内の既存のエントリを更新します。このタグを使用して、新しい属性を既存の LDAP エントリに追加したり、既存の属性を置換したり、削除したりできます。ネストされている param タグの GROUP_IN パラメータを使用して、更新する LDAP 属性を含んでいる Info*Engine グループに名前を付けます。
このタグを実行する前に、修正する LDAP エントリを定義する要素が含まれている Info*Engine グループを作成する必要があります。各要素には、エントリの識別名である dn 属性が必要です。各要素内の追加属性は、修正する LDAP 属性の名前および値を識別します。
構文
<iedir:updateObjects uri="service_URL" modification="type">
<iedir:param name="GROUP_IN" data="group_name"/>
</iedir:updateObjects>
属性の説明
必須属性: uri
uri
エントリの更新時に使用するディレクトリサービスとベースエントリを識別する LDAP URL を指定します。たとえば、以下の URL は myCompany.com ディレクトリサービスを識別します。
ldap://myCompany.com/
この属性は必須です。
modification
実行する変更のタイプを指定します。以下のタイプのいずれかを入力します。
修正タイプ
|
説明
|
ADD
|
グループ要素で指定されている LDAP 属性を、dn グループ要素属性によって識別される LDAP エントリに追加します。
グループ要素内に指定されている LDAP 属性がすでに LDAP エントリ内に存在する場合は、エラーが返されます。
|
DELETE
|
LDAP エントリのグループ要素属性で指定されている dn 以外の LDAP 属性を削除します。各 LDAP エントリは dn グループ要素属性によって識別されます。LDAP エントリ全体を削除するには、deleteObject タグを使用します。
グループ要素内に指定されている LDAP 属性が LDAP エントリ内に存在しない場合は、使用されている LDAP サーバーによって、エラーが返されたり、エラーが返されずに終了したりする可能性があります。
|
REPLACE
|
グループ要素内に指定されている既存の LDAP 属性の値を置換します。置換が行われる LDAP エントリは、dn グループ要素属性によって識別されます。
グループ要素内に指定されている LDAP 属性が LDAP エントリ内に存在しない場合は、属性およびその値がエントリに追加されます。
|
このオプションの属性のデフォルトは REPLACE です。
例
以下の例は、ページが Info*Engine の directory タグライブラリと core タグライブラリのタグを使用し、タグに iedir および ie プリフィックスを使用することを宣言します。task タグブロックは、入力として使用される要素のグループを作成します。updateObjects タグブロックは、dc=myHost,dc=myCompany,dc=com ベースエントリにある myCompany.com ディレクトリサービス内の LDAP エントリを更新します。
<%@ taglib uri="http://www.ptc.com/infoengine/taglib/core"
prefix="ie" %>
<%@ taglib uri="http://www.ptc.com/infoengine/taglib/directory"
prefix="iedir" %>
<ie:task uri="ldaptask.xml">
<ie:param name="GROUP_OUT" data="ldap_update"/>
</ie:task>
<iedir:updateObjects
uri="ldap://myCompany.com/dc=myHost,dc=myCompany,dc=com">
<iedir:param name="GROUP_IN" data="ldap_update"/>
</iedir:updateObjects>