Sun Java System Directory Server Enterprise Edition 6.0 管理指南

Procedure執行其他屬性的唯一性

UID 唯一性外掛程式可用以執行任何屬性的唯一性。您必須在目錄中的 cn=plugins,cn=config 下建立新項目,以建立新的外掛程式實例。

無法使用 DSCC 執行此作業。請依照此程序中的說明使用指令行。

  1. 建立新的外掛程式。


    $ dsconf create-plugin -h host -p port -H lib-path -F init-func \
     -Y type plugin-name 
    

    plugin-name 應為簡短同時包含屬性名稱的說明性名稱。例如,若要建立郵件 ID 屬性的唯一性外掛程式,請使用此指令:


    $ dsconf create-plugin -h host1 -p 1389 -H /opt/SUNWdsee/ds6/lib/uid-plugin.so \
     -F NSUniqueAttr_Init -Y preoperation "mail uniqueness"
  2. 設定外掛程式特性:


    $ dsconf set-plugin-prop -h host -p port plugin-name property:value
    

    例如,若要設定郵件唯一性外掛程式的特性:


    $ dsconf set-plugin-prop -h host1 -p 1389 "mail uniqueness" \
     desc:"Enforce unique attribute values..." version:6.0 \
     vendor:"Sun Microsystems, Inc." depends-on-type:database
  3. 啟用外掛程式。


    $ dsconf enable-plugin -h host -p port plugin-name
    
  4. 指定外掛程式引數。

    這些引數取決於您對要執行唯一性的子樹狀結構將要進行的指定。

    • 若一或多個子樹狀結構要根據其基底 DN 進行定義,則第一個引數必須是應具有唯一值之屬性的名稱。後續引數為子樹狀結構的基底項目之完整 DN。


      $ dsconf set-plugin-prop -h host -p port plugin-name argument:attribute-name \
       argument:subtreeBaseDN argument:subtreeBaseDN...
    • 若子樹狀結構要根據其基底項目的物件類別進行定義,則第一個引數必須包含 attribute= attribute-name,用以指定應具有唯一值之屬性的名稱。第二個引數必須是 baseObjectClass,用以決定要執行唯一性之子樹狀結構的基底項目。您可以選擇在第三個引數中指定 entryObjectClass,使外掛程式僅在以具有此物件類別的項目為目標的作業中,執行唯一性。


      $ dsconf set-plugin-prop -h host -p port plugin-name argument:attribute=attribute-name \
       argument:markerObjectClass=baseObjectClass argument:requiredObjectClass=entryObjectClass
      

    在所有外掛程式引數中,= 符號之前或之後皆不可有空格。

  5. 重新啟動伺服器,使變更生效。