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

使用回溯變更記錄

LDAP 用戶端使用回溯變更記錄,確認目錄伺服器資料的變更歷程記錄。回溯變更記錄儲存在與目錄伺服器變更記錄不同的資料庫中,位於尾碼 cn=changelog 下。

回溯變更記錄可以在複寫拓樸中的獨立伺服器或每部伺服器上啟用。在一部伺服器上啟用回溯變更記錄時,預設會記錄該伺服器上所有尾碼的更新。回溯變更記錄可以配置為僅記錄指定尾碼的更新。

如需有關在複寫拓樸中使用回溯變更記錄以及使用回溯變更記錄的限制之資訊,請參閱「Sun Java System Directory Server Enterprise Edition 6.0 Reference」中的「Replication and the Retro Change Log Plug-In」

如需有關回溯變更記錄中某項目的屬性之資訊,請參閱 changeLogEntry(5dsoc) 線上手冊。

如需修改回溯變更記錄的更多資訊,請參閱 dsconf(1M) 線上手冊。

本節說明可以使用回溯變更記錄的各種方式。

Procedure啟用回溯變更記錄

若要使用回溯變更記錄,必須啟用記錄。

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

  1. 修改回溯變更記錄配置項目:


    $ dsconf set-server-prop -h host -p port retro-cl-enabled:on
  2. 重新啟動伺服器。

    如需相關資訊,請參閱啟動、停止與重新啟動目錄伺服器實例

Procedure配置回溯變更記錄以記錄指定尾碼的更新

在一部伺服器上啟用回溯變更記錄時,預設會記錄該伺服器上所有尾碼的更新。本程序說明如何配置回溯變更記錄僅記錄指定尾碼的更新。

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

  1. 修改回溯變更記錄配置項目:


    $ dsconf set-server-prop -h host -p port retro-cl-suffix-dn:suffix-DN
    

    例如,若要僅記錄在 cn=Contractors,dc=example,dc=com 尾碼與 ou=People,dc=example,dc=com 尾碼上的變更,請使用此指令:


    $ dsconf set-server-prop -h host2 -p 1389 \
     retro-cl-suffix-dn:"cn=Contractors,dc=example,dc=com" \
     retro-cl-suffix-dn:"ou=People,dc=example,dc=com"
  2. 重新啟動伺服器。

    如需相關資訊,請參閱啟動、停止與重新啟動目錄伺服器實例

Procedure配置回溯變更記錄以記錄刪除項目的屬性

本程序說明如何配置回溯變更記錄,以在刪除項目時記錄該項目的指定屬性。

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

  1. 修改回溯變更記錄配置項目:


    $ dsconf set-server-prop -h host -p port retro-cl-deleted-entry-attr: \
     attribute1 attribute2
    

    例如,若要將回溯變更記錄設為記錄刪除項目的 UID 屬性,請使用此指令:


    $ dsconf set-server-prop -h host -p port retro-cl-deleted-entry-attr:uid
  2. 重新啟動伺服器。

    如需相關資訊,請參閱啟動、停止與重新啟動目錄伺服器實例

Procedure修剪回溯變更記錄

在指定的一段時間過後,回溯變更記錄中的項目可自動移除。若要配置一段時間使項目在此時間之後自動刪除,請確定已啟用回溯變更記錄,再設定 cn=Retro Changelog Plugin, cn=plugins, cn=config 項目中的 nsslapd-changelogmaxage 配置屬性。

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

  1. 檢查是否已啟用回溯變更記錄。


    $ dsconf get-server-prop -h host -p port retro-cl-enabled
  2. 若未啟用回溯變更記錄,請啟用記錄。


    $ dsconf set-server-prop -h host -p port retro-cl-enabled:on
  3. 為記錄的變更設定最長存在期限。


    $ dsconf set-server-prop -h host -p port retro-cl-max-age: duration
    

    其中 duration 可以是undefined (無存在期限) 或下列其中之一:

    • s 表示秒

    • m 表示分鐘

    • h 表示小時

    • d 表示天

    • w 表示週

    例如,若要將回溯變更記錄最長存在期限設為兩天,請鍵入:


    $ dsconf set-server-prop -h host 2 -p 1389 retro-cl-max-age:2d

    下次在變更記錄上進行作業時會修剪回溯變更記錄。

存取控制與回溯變更記錄

回溯變更記錄支援搜尋作業。該記錄適用於包含此格式的篩選器之搜尋:


(&(changeNumber>=X)(changeNumber<=Y))

根據一般規則,請勿於回溯變更記錄項目上執行增加或修改作業。您可以刪除項目以修剪記錄大小。修改預設存取控制策略是唯一需要在回溯變更記錄上執行的修改作業。

建立回溯變更記錄時,預設會套用下列存取控制規則:

若要修改套用到回溯變更記錄的預設存取控制策略,請修改 cn=changelog 項目的 aci 屬性。請參閱第 6 章, 目錄伺服器存取控制