Sun Java System Calendar Server 6 2005Q4 管理指南

第 14 章 管理使用者和資源

本章說明如何使用 Calendar Server 公用程式佈建與管理使用者和資源。本章包含以下小節:

使用者管理工具

可以使用以下一種使用者管理工具管理行事曆使用者和資源:


備註 –

Delegated Administrator 不管理行事曆。若要為使用者和資源建立行事曆,請使用 Calendar Server 公用程式。



備註 –

在特定情況下,即使您使用的是 Schema 2 和 Delegated Administrator,仍會需要使用某些 Calendar Server 指令行公用程式執行特殊功能。在必要時,本指南中以工作為導向的文件會告訴您使用何種公用程式。


建立使用者和資源

本小節提供以下有關管理新的 Calendar Server 使用者和資源的資訊:

在 Schema 2 中建立新的使用者

您可以使用 Delegated Administrator 主控台或公用程式:

為 Schema 1 建立新的使用者

使用 csuser 公用程式。例如,在 sesta.com 網域中增加使用者 jdoe

csuser -m jdoe@sesta.com -d sesta.com create jdoe

為 Schema 2 建立新的資源

您可以使用 Delegated Administrator 主控台或公用程式:

為 Schema 1 建立新的資源

使用 csresource 公用程式建立 LDAP 項目和資源行事曆。例如,若要增加投影機 p101,請使用以下指令:

csresource -m p101@siroe.com -c p101 create Projector_101

如需有關 csresource 的更多資訊,請參閱csresource

增加所需的 mail 屬性

Calendar Server 需要使用者和資源具有 mail 屬性,該屬性包含使用者或資源的電子郵件位址。該 mail 屬性將使人們能夠使用電子郵件位址或 calid 搜尋行事曆和資源。使用 Delegated Administrator 建立新的使用者時,其會自動增加 mail 屬性。即使未向該使用者指定郵件服務,仍會如此。


備註 –

Calendar Server 不支援資源行事曆的電子郵件通知。

增加 mail 屬性不會啟用使用者行事曆的電子郵件通知。

若要啟用使用者行事曆的電子郵件通知,請將以下兩個屬性增加至使用者的 LDAP 項目:

icsExtendedUserPrefs:ceNotifyEnable=1 
icsExtendedUserPrefs:ceNotifyEmail=jdoe@sesta.com

如果您的使用者和資源已被增加至舊版的 Calendar Server (當時不需要 mail 屬性),則可能必須將 mail 屬性增加至現有使用者和資源 LDAP 項目。

本小節包含以下主題:

檢查 mail 屬性是否已設定

若要檢查該屬性是否已設定,請使用帶有 -v (詳細) 選項的 csattribute list 指令。

csattribute -v list Room100

其輸出會告知 mail 屬性是否已存在:

cn=Room 100,ou=conferenceRooms,dc=sesta,dc=com
 has mail: Room100@sesta.com

將 mail 屬性增加至現有使用者和資源

若要將 mail 屬性增加至現有使用者和資源,請使用以下方法之一:

管理使用者

建立使用者後,請使用 csuser 公用程式執行以下管理工作:

顯示使用者資訊

若要列出所有行事曆使用者或顯示指定使用者的行事曆屬性,請使用 csuser 公用程式的 list 指令。

例如,顯示所有能使用行事曆功能的使用者:

csuser list

顯示單一使用者 (如 jsmith) 的所有行事曆屬性:

csuser -v list jsmith

停用使用者

停用使用者的目的在於防止使用者登入 Calendar Server。依據您用於建立使用者的使用者管理工具,會進行不同的處理。在 Delegated Administrator 主控台中建立的使用者也應使用它進行管理。同樣,如果您使用 Delegated Administrator 公用程式將行事曆服務指定給使用者,則使用它移除服務。最後,非託管網域環境中的使用者應僅使用 Calendar Server 公用程式進行管理。各自對情況的處理稍有不同。

本小節包含以下主題:

Delegated Administrator 主控台

在 Delegated Administrator 主控台中,從 [使用者清單] 頁面選取使用者。在此使用者的 [特性] 中,刪除包含行事曆服務的服務套裝軟體。這會停用行事曆的使用者,包括將使用者的 icsStatus 設定為 inactive


備註 –

如果套裝軟體還包含其他服務,您必須使用不包含行事曆的其他套裝軟體重新指定那些服務。


Delegated Administrator 公用程式 (commadmin user delete)

若要防止使用者存取行事曆服務,請將該服務從使用者的 LDAP 項目中移除,如以下範例所示:

commadmin user delete jsmith -S cal

這會停用行事曆使用者,而未完全移除 LDAP 項目。此外,此指令會將使用者的 icsStatus 變更為 inactive

Calendar Server 公用程式 (csuser disable)

disable 指令可防止使用者存取行事曆資料,但不會從 LDAP 項目或 Calendar Server 資料庫中移除該使用者的資訊。此指令會將 icsStatus 屬性從 active 變更為 inactive。在非託管網域節點中,沒有行事曆服務。

例如,防止 jsmith 存取 Calendar Server:

csuser disable jsmith

如果 jsmith 目前已登入 Calendar Server,則 jsmith 仍可存取行事曆資料,直至其登出。

啟用使用者

若要啟用使用者,請使用以下工具之一:

Delegated Administrator 主控台

您可以增加啟用新使用者和現有使用者:

Delegated Administrator (commadmin user create)

要在建立使用者時允許該使用者使用行事曆服務,請使用以下範例所示的命令:

commadmin user create jsmith -S cal

如果建立使用者時您未允許該使用者使用行事曆服務,以後還可以使用修改指令將行事曆服務增加給該使用者,如以下範例所示:

commadmin user modify jsmith -S cal

Calendar Server 公用程式 (csuser enable)

如果您在建立使用者項目時使用了 csuser create,則使用者會自動啟用。

如果某位使用者向另一位尚未啟用行事曆功能的使用者 (亦即該使用者沒有預設行事曆) 傳送請求,則 Calendar Server 會向傳送請求的使用者傳回錯誤「找不到行事曆」。

設置電子郵件別名

如果您需要為行事曆使用者設定電子郵件別名,請將 mailalternateaddress 屬性增加至使用者的 LDAP 項目。mail 屬性提供主要郵件位址,而 mailalternateaddress 屬性用於電子郵件別名。這兩個屬性均將郵件位址對映至使用者的行事曆 ID (calid)

您可以使用 Calendar Server 公用程式 csattribute 或透過使用 ldapmodify 直接更新 LDAP 來增加屬性。以下範例使用 csattribute


備註 –

若要啟用這些變更,可能還需要重建別名表或配置。請參閱 Messaging Server (或您的電子郵件產品) 的文件,以及網站自身的文件和有關郵件服務變更的程序。在以下網站可獲得 Messaging Server 文件:http://docs.sun.com/coll/1312.1http://docs.sun.com/coll/1422.1



範例 14–1 使用 csattribute 增加電子郵件別名

例如,為具有以下值的名為 JohnSmith 之使用者增加 mailalternateaddress 屬性:

csattribute -a mailalternateaddress=johns@sesta.com add johnsmith
 csattribute -a mailalternateaddress=jsmith@sesta.com add johnsmith

檢查使用者是否能使用行事曆功能

若要確定特定使用者是否存在於您的目錄伺服器中,以及該使用者是否能存取 Calendar Server 資料,請使用 csuser 公用程式的 check 指令。

例如,檢查 jsmith 是否已啟用行事曆功能:

csuser check jsmith

如果 check 指令指示某個使用者不在 LDAP 目錄伺服器中,則您必須為該使用者建立目錄伺服器項目。

刪除 LDAP 中的使用者

依據您是刪除託管網域還是非託管網域中的使用者,請使用不同的工具:


注意 – 注意 –

undelete 指令。

使用 Delegated Administrator 刪除託管網域中的使用者後,必須清除這些使用者,然後重新增加。直至執行清除後,該使用者名稱才可以重複使用。

對於非託管網域,請參閱僅適用於非託管網域:取消刪除標記刪除但未清除的使用者


Procedure使用 Delegated Administrator 刪除 Schema 2 中的使用者

您可以使用任一 Delegated Administrator 介面標記要刪除的使用者。但是,您無法使用 Delegated Administrator 主控台清除 LDAP 中的使用者。您必須使用 Delegated Administrator 公用程式進行清除。以下工作列出了刪除 LDAP 中使用者的步驟。直至完成最後一步,使用者才從 LDAP 中真正移除。

步驟
  1. 標記要刪除的使用者項目。

    對於 Delegated Administrator 主控台:在 [使用者清單] 頁面中選取要刪除的使用者,然後按一下 [刪除]。

    對於 Delegated Administrator 公用程式:使用 commadmin user delete 指令。例如:

    commadmin user delete -D chris -n siroe.com 
    -w bolton -l jsmith

    兩種情況中,使用者 LDAP 項目中的 icsStatus 屬性均由 active 變更為 deleted

  2. 使用 Calendar Server 公用程式 csclean 移除屬於一個或所有網域中所有已刪除使用者的所有行事曆,如以下範例所示:

    csclean clean “*”

    或移除屬於一個網域中所有已刪除使用者的行事曆,並指定實際的網域,如以下範例所示:csclean clean sesta.com


    提示 –

    如果您在刪除使用者的行事曆之前不慎從 LDAP 中清除了使用者,則可以稍後使用 cscal 公用程式將其移除,如管理使用者行事曆中所述。


  3. 使用 Delegated Administrator 公用程式指令 commadmin domain purge 清除所有標記刪除之使用者的網域。

    例如:

    commadmin domain purge -D chris -d sesta.com -n siroe.com -w bolton

    在此範例中,sesta.com 中所有標記為已刪除的使用者均將被清除,亦即被永久性移除。


    提示 –

    不時手動執行此公用程式,以清除您的 LDAP 目錄。如需有關此指令的更多資訊,請參閱「Sun Java System Communications Services 6 2005Q4 Delegated Administrator Guide」


在 Schema 1 環境中刪除使用者

若要移除指定使用者的 LDAP 項目和使用者的預設行事曆,請使用 Calendar Server 公用程式 csuser delete 指令。

例如,若要刪除使用者 jsmith 的 LDAP 項目和預設行事曆,請使用以下指令:

csuser delete jsmith

如果您要移除屬於此使用者的其他行事曆,您必須如管理使用者行事曆中所述使用 cscal

僅適用於非託管網域:取消刪除標記刪除但未清除的使用者

對於非託管網域,若要取消刪除標記刪除但尚未清除的使用者,必須將使用者的 icsStatus 屬性重設為 active。您可以透過直接變更 LDAP 項目 (使用 ldapmodify) 或使用 Calendar Server 公用程式 csattribute 完成此作業。

但是,在非託管網域中,使用者一旦清除,您將只能透過從備份將其復原來回復 LDAP 伺服器資訊。

重設使用者的屬性

若要復原特定使用者之所有行事曆 LDAP 屬性的預設設定,請使用 csuser 公用程式的 reset 指令。

例如,將 jsmith 的所有行事曆屬性重設為預設配置設定:

csuser reset jsmith

備註 –

重設某位行事曆使用者後,所有行事曆屬性均將從該使用者的 LDAP 項目中移除,包括 icsCalendarUser (物件類別)、icsSubscribedicsCalendarOwnedicsCalendar icsDWPHost (如果在 LDAP CLD 設定中)。Calendar Server 管理員將無法代表使用者建立行事曆。

在以下情況中,這些屬性會在該使用者的 LDAP 項目中復原:


重新命名使用者

如果一個或多個使用者 ID 需要變更,請執行 csrename 公用程式。此公用程式會執行以下步驟:


備註 –

請注意,即使變更一個使用者 ID,也會導致整個資料庫被重寫。因此,執行此公用程式「代價昂貴」。

如需有關如何執行 csrename 公用程式的說明,請參閱附錄 DCalendar Server 指令行公用程式參照


Procedure禁止使用者擁有公開可寫入行事曆

步驟
  1. 以擁有變更配置權限的管理員身份登入。

  2. 變更至 /etc/opt/ SUNWics5/cal/config 目錄。

  3. 透過複製及重新命名,儲存舊的 ics.conf 檔案。

  4. 如下表所示編輯以下 ics.conf 參數:

    參數 

    說明和預設值 

    service.wcap.

    allowpublicwritablecalendars

    讓使用者擁有公開可寫入行事曆。依預設 (設定為 “yes”) 啟用。

  5. 將檔案儲存為 ics.conf

  6. 重新啟動 Calendar Server。

    cal_svr_base /SUNWics5/cal/sbin/start-cal

管理資源

增加資源後,可以使用 csresource 管理資源:

Procedure列出資源

步驟
  1. 變更至 sbin 目錄。

  2. 使用 csresource list 指令列出一個或所有資源。

    例如,列出有關所有資源的全部資訊:

    ./csresource -v list

Procedure啟用資源

步驟
  1. 變更至 sbin 目錄。

  2. 使用 csresource enable 指令啟用一個或多個資源。

    例如,啟用 ConfRm12 資源:

    ./csresource -v enable ConfRm12

Procedure停用資源

步驟
  1. 變更至 sbin 目錄。

  2. 使用 csresource disable 指令停用一個或多個資源。例如,停用 ConfRm12 資源:

    ./csresource -v disable ConfRm12

Procedure刪除資源

步驟
  1. 變更至 sbin 目錄。

  2. 使用 csresource delete 指令刪除一個或多個資源。例如,刪除 ConfRm12 資源:

    ./csresource -v delete ConfRm12

為資源電子郵件設置 bitbucket 通道

本小節包含為 Messaging Server 和 Sendmail 設定 bitbucket 通道的指示。bitbucket 通道是放棄為資源行事曆產生的電子郵件的一種渠道。這些範例使用 sesta.com 伺服器上名為 Room100 的資源。如果不設定 bitbucket 通道 (或等效通道),則需要定期刪除傳送至資源行事曆的電子郵件訊息。

本小節包含以下程序:

Procedure設置 Messaging Server bitbucket 通道

步驟
  1. 確定 bitbucket 通道已在 imta.cnf 檔案中定義。

  2. 若要將訊息導向至 bitbucket 通道,請使用 csattribute 公用程式為資源建立電子郵件位址:


    csattribute -a mail=Room100@bitbucket.sesta.com add Room100

Procedure設置 Sendmail Bitbucket 通道

步驟
  1. 在適當主機上的 /etc/aliases 檔案中,增加如下項目:


    Resource/Conference room aliases
     Room100: /dev/null
  2. 使用 csattribute 公用程式將資源的電子郵件位址增加至 LDAP 目錄:


    csattribute -a mail=Room100@sesta.com add Room100

管理使用者和資源 LDAP 屬性

使用csattribute公用程式或 ldapmodify 管理 Calendar Server 所使用的 LDAP 屬性。使用 csattribute 可以列出、增加或刪除屬性。若要修改屬性,請使用 ldapmodify。本小節包含以下主題:

Procedure列出 LDAP 項目屬性

步驟
  1. 以執行 Calendar Server 的使用者或群組 (在安裝期間指定,如 icsusericsgroup) 的身份登入,或者以 root 身份登入

  2. 變更至 sbin 目錄。

  3. 使用 csattribute list 指令列出使用者或資源的屬性。例如,若要列出 tchang@sesta.com 的屬性,請發出以下指令:

    ./csattribute -t user -d sesta.com list tchang

Procedure增加 LDAP 項目屬性

步驟
  1. 以執行 Calendar Server 的使用者或群組 (在安裝期間指定,如 icsusericsgroup) 的身份登入,或者以 root 身份登入

  2. 如果您想此屬性變更立即被識別,請停止 Calendar Server。否則,您不必停止 Calendar Server。

  3. 變更至 sbin 目錄。

  4. 使用 csattribute add 指令將屬性增加至使用者或資源。例如,將 LDAP 屬性 icsCalendar 與值 Conference_Schedule 增加至使用者 tchang

    ./csattribute -a icsCalendar=Conference_Schedule add tchang@sesta.com

Procedure刪除 LDAP 項目屬性

步驟
  1. 以執行 Calendar Server 的使用者或群組 (在安裝期間指定,如 icsusericsgroup) 的身份登入,或者以 root 身份登入

  2. 如果您想此屬性變更立即被識別,請停止 Calendar Server。否則,您不必停止 Calendar Server。

  3. 變更至 sbin 目錄。

  4. 使用 csattribute delete 指令刪除使用者或資源的屬性。例如,從使用者 tchang 中刪除 LDAP 屬性 icsCalendar 與值 Conference_Schedule

    ./csattribute -a icsCalendar=Conference_Schedule -t user 
       -d sesta.com delete tchang

修改 LDAP 項目屬性

若要修改 LDAP 項目屬性,請使用 ldapmodify。例如,若要使用 uid=tchang 變更使用者的狀態,請使用 ldapmodify,如下所示:


dn:uid=tchang,ou=people,o=sesta.com
 changetype: modify
 add: objectclass
 objectClass: icsCalendarUser
 add: icsStatus
 icsStatus: active

備註 –

如果您的站點使用的是 LDAP CLD 外掛程式,請勿嘗試透過使用 csattribute 變更 icsDWPHost 的值來將使用者的行事曆從一個後端主機移至另一個後端主機。 修改 icsDWPHost 不會使行事曆移至新的後端主機。如需有關如何將行事曆從一個後端主機移至另一個後端主機的說明,請參閱管理使用者行事曆