Sun Java System Calendar Server 6.3 管理指南

第 1 部分 Calendar Server 6.3 軟體簡介

此部分僅包含「簡介」一章。

第 1 章 Calendar Server 6.3 軟體簡介

Sun JavaTM System Calendar Server 6.3 (Calendar Server) 針對集中化行事曆和排程功能,為企業和服務提供者提供具有延展性的網路型解決方案。Calendar Server 支援事件和工作的個人行事曆與群組行事曆,還支援資源 (如會議室和設備) 行事曆。

如需有關基本配置分析藍本的資訊,請參閱「Sun Java Communications Suite 5 Deployment Planning Guide」

本章涵蓋以下主題:


備註 –

在本章和以後的章節中,將指定完全合格的目錄路徑用於 Solaris 平台。Solaris 的預設路徑為:

/opt/SUNWics5/cal

/var/opt/SUNWics5

/etc/opt/SUNWics5

Linux® 的預設路徑為:

/opt/sun/calendar

/var/opt/sun/

/etc/opt/sun

Linux 使用者應該以其預設路徑取代顯示的所有指令中之 Solaris 預設路徑。


1.1 Calendar Server 6.3 軟體安裝

Calendar Server 6.3 與舊版 Calendar Server 的安裝有顯著的不同。您必須使用 Communications Suite 安裝程式,來安裝 Calendar Server 6.3 軟體。不要使用 Java Enterprise System 安裝程式。不過,您可能需要使用 Java Enterprise System 安裝程式來安裝其他伺服器產品。

如需有關安裝 Calendar Server 6.3 的更多資訊,請參閱「Sun Java Communications Suite 5 Installation Guide」

如果您想要從舊版 Calendar Server 升級,升級程序在「Sun Java Communications Suite 5 Upgrade Guide」中有說明。

如需有關將行事曆資料庫及 LDAP 資料庫從舊版 Calendar Server 遷移至版本 6.3 的資訊,請參閱第 3 章, Calendar Server 6.3 的資料庫遷移公用程式中提供的資訊。

1.2 Calendar Server 版本 6.3 的安裝後配置

安裝 Calendar Server 後,您必須對其進行配置。安裝程式不會將配置做為安裝程序的一部分執行。

ProcedureCalendar Server 版本 6.3 的安裝後配置的高階工作清單

  1. 執行 Directory Server 設定程序檔 (comm_dssetup.pl),以配置 Sun Java System Directory Server 5 (如果該程序檔尚未執行)。

    此程序檔位於以下目錄中:/opt/SUNWcomds/sbin

    如需有關執行此程序檔的資訊,請參閱「Sun Java Communications Suite 5 Installation Guide」

  2. 執行 Calendar Server 配置程式 (csconfigurator.sh),以配置您網站的特定需求並建立新的 ics.conf 配置檔案。

    如需 ics.conf 檔案中參數的說明,請參閱附錄 ECalendar Server 配置參數

    配置程式位於以下目錄:/opt/SUNWics5/sbin

    如需有關執行 csconfigurator.sh 的資訊,請參閱第 2 章, Calendar Server 6.3 軟體的初始執行階段配置程式 (csconfigurator.sh)

  3. 自訂您的系統,方法是編輯 ics.conf 檔案中的參數。

    第 3 部分自訂 Calendar Server 配置中的章節說明如何透過編輯 ics.conf 檔案來自訂您的系統。


    備註 –

    ics.conf 有可能包含具有不同值的重複參數。系統會循序讀取檔案,同時在進行時更新系統設定。採用這種方法時,使用的值是為此參數找到的最後一個值。

    最佳做法是將您的所有 ics.conf 設定增加至檔案的尾端,以便知道已設定哪些設定。但是,若要提高效率,請將更舊的參數實例寫為註釋。這樣做很有用,因為系統必須讀取的參數越少,處理檔案的速度就越快。


1.3 Calendar Server 版本 6.3 的特殊帳號

Calendar Server 特殊帳號包括:

1.3.1 Calendar Server 版本 6.3 中的 Calendar Server 管理員 (calmaster) 帳號

Calendar Server 管理員是可以管理 Calendar Server 的具有相關密碼的特定使用者名稱。例如,Calendar Server 管理員可以啟動和停止 Calendar Server 服務、增加和刪除使用者、建立和刪除行事曆等等。該使用者擁有對 Calendar Server 的管理員權限,但不一定擁有對目錄伺服器的管理員權限。

Calendar Server 管理員的預設使用者 ID 是 calmaster,但如果願意,您可以在 Calendar Server 配置期間指定其他使用者。安裝後,您也可以在 ics.conf 檔案中的 service.siteadmin.userid 參數中指定其他使用者。

您為 Calendar Server 管理員指定的使用者 ID 必須是目錄伺服器中的有效使用者帳號。如果在配置期間,Calendar Server 管理員使用者帳號不存在於目錄伺服器中,則配置程式可為您建立該帳號。

下表說明 ics.conf 檔案中的 Calendar Server 管理員配置參數。

表 1–1 Calendar Server 管理員 (calmaster) 配置參數

參數 

說明 

service.siteadmin.userid

被指定為 Calendar Server 管理員之人員的使用者 ID。您必須在安裝 Calendar Server 期間,提供此必需值。預設為 calmaster

service.siteadmin.cred

被指定為 Calendar Server 管理員之使用者 ID 的密碼。您必須在安裝期間提供此必需值。 

caldb.calmaster

Calendar Server 管理員的電子郵件位址。預設為 root@localhost

service.admin.calmaster.overrides.

accesscontrol

指示 Calendar Server 管理員是否可以置換存取控制。預設為 no

service.admin.calmaster.wcap.

allowgetmodifyuserprefs

 

指示 Calendar Server 管理員是否可以使用 WCAP 指令取得和設定使用者喜好設定。預設為 no

service.admin.ldap.enable

啟用 LDAP 伺服器認證在 service.siteadmin.userid 中指定的使用者。預設為 yes

1.3.2 Calendar Server 版本 6.3 的 Calendar Server 使用者及群組帳號

這些特殊的帳號是 Calendar Server 執行時使用的使用者 ID 和群組 ID。除非有重要的原因讓您無法使用預設值,否則請使用預設值 icsusericsgroup,如果它們不存在,配置程式會自動建立這些值。

但是,如果願意,您可以在執行 Calendar Server 配置程式時,指定 icsusericsgroup 之外的其他值。這些值分別儲存在 ics.conf 檔案中的 local.serveruidlocal.servergid 參數中。

1.3.3 超級使用者 (root)

您必須以超級使用者的身份登入,或成為超級使用者 (root),才能安裝 Calendar Server。您也可以超級使用者的身份執行,以使用指令行公用程式來管理 Calendar Server。但對於某些工作,您應以 icsusericsgroup (或您所選的值) 的身份執行,而非以超級使用者的身份執行,以避免存取 Calendar Server 檔案時發生問題。

1.3.4 Calendar Server 版本 6.3 的非超級使用者 (icsuser、icsgroup)

雖然您需要 root 權限,才能安裝 Calendar Server,但是可以非超級使用者身份執行服務。

不過,如果您以 root 身份啟動服務,則一旦執行了需要 root 權限的工作,每個程序會將有效 UID 變更為執行階段 (非超級使用者) 使用者及群組。這種方式允許使用 1024 以下的連接埠。但是,當您以非超級使用者執行階段使用者和群組啟動服務時,Web 伺服器連接埠必須設定為大於 1024 的值,服務才能順利啟動。


備註 –

非超級使用者或群組是在配置時自動建立的。預設為 icsusericsgroup


1.4 Calendar Server 版本 6.3 的代理管理員登入

為允許管理員管理使用者行事曆,依預設會設定 ics.conf 檔案中的以下參數,如下所示:service.http.allowadminproxy="yes"

如果您要使用 Communications Express,則必須將此參數設定為 "yes"

如需有關這個參數與驗證代理登入是否運作中的說明,請參閱 4.5 配置登入和認證

1.5 Calendar Server 版本 6.3 中的一般使用者管理

一般使用者可以從用戶端機器使用 Web 圖形化使用者介面 (Graphical User Interface, GUI)、Sun Java System Communications Express 或透過 Connector for Microsoft Outlook (它允許一般使用者繼續在其桌面上使用 Outlook,同時仍然可以使用 Calendar Server 後端),連接至 Calendar Server。使用者在 LDAP 目錄中必須具有唯一的項目。每位使用者均可以具有一個或多個行事曆,並可屬於一個或多個群組。

具有恰當權限的管理員可使用 Delegated Administrator 公用程式 (指令行) 或主控台 (GUI) 增加、刪除或修改使用者 LDAP 項目或資源 LDAP 項目。

如需有關 Delegated Administrator 公用程式 (commadmin) 的文件,請參閱「Sun Java System Communications Services 6 2005Q4 Delegated Administrator Guide」

如需有關 Delegated Administrator 主控台的文件,請參閱主控台的線上說明。

此外,必要時您可以使用 ldapmodify 直接修改 LDAP 項目。如需有關 ldapmodify 的資訊,請參閱「Sun ONE Directory Server Resource Kit 5.2 Tools Reference」


注意 – 注意 –

以前版本的 Java Enterprise System 部署中使用的公用程式 (例如 csuser) 仍隨附於 Calendar Server。如果您要在部署中使用 Access Manager,請勿將這些公用程式用於管理或建立使用者、網域或資源 LDAP 項目。但有一些例外,至於這些例外之處,本指南會引導您使用正確的公用程式。


本小節說明使用者和使用者行事曆管理的以下方面﹕

1.5.1 為 Calendar Server 版本 6.3 選擇適當的使用者管理工具

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


備註 –

Delegated Administrator 不管理行事曆。若要建立使用者、群組及資源的行事曆,請使用 Calendar Server 公用程式 cscalcsresource,或開啟自動佈建。一旦開啟了自動佈建,系統便會在兩種狀況下建立預設行事曆:如果使用者登入,但沒有預設行事曆,或在預設行事曆存在之前,先對使用者、群組或資源發出邀請。


1.5.2 在 Calendar Server 版本 6.3 中建立使用者 LDAP 項目

您可以使用以下工具,在 LDAP 中建立使用者:

1.5.3 認證 Calendar Server 版本 6.3 中的使用者

Calendar Server 需要 LDAP 目錄伺服器 (如 Sun Java System Directory Server) 來認證使用者 (並儲存使用者喜好設定)。

1.5.4 瞭解 Calendar Server 版本 6.3 的使用者喜好設定

允許使用者透過設定儲存在目錄伺服器中的使用者喜好設定屬性來自訂其行事曆資料的檢視。使用者喜好設定 (與 Calendar Server 配置參數相對) 是指行事曆資料的使用者介面表示法,包括使用者名稱、電子郵件位址以及描繪行事曆檢視時優先使用的色彩之類的項目。

如需喜好設定清單,請參閱「Sun Java System Calendar Server 6.3 WCAP Developer’s Guide」中的 get_userprefsset_userprefs WCAP 指令。

1.5.5 Calendar Server 版本 6.3 中的 LDAP 群組簡介

群組是已命名的使用者集合。每個群組都有一個 LDAP 項目,類似於使用者或資源項目。您可以對所有服務使用相同的群組項目,例如行事曆及傳訊。

以下是幾個有關 Calendar Server LDAP 群組的事實:

如需有關群組行事曆的更多資訊,請參閱以下小節:1.5.7 Calendar Server 版本 6.3 的群組行事曆簡介

1.5.6 自動佈建:在 Calendar Server 版本 6.3 中自動建立行事曆

可以自動將資料填入行事曆資料庫,方法是在 ics.conf 檔案中設定 local.autoprovision="yes"。此外,網域必須啟用行事曆功能 (具有行事曆服務),表示網域 LDAP 項目必須包含 icsCalendar 物件類別。

有兩種自動建立預設行事曆的方法:

例如,假定 tchang 存在於目錄伺服器中,但尚未啟用行事曆功能 (即無預設行事曆)。當開啟自動佈建並啟用網域行事曆時:

如需有關使用者、資源及群組所需的配置檔案參數的更多資訊,請參閱4.3 配置 LDAP 使用者、群組和資源的行事曆

1.5.7 Calendar Server 版本 6.3 的群組行事曆簡介

您可以為任何啟用行事曆功能的 LDAP 群組建立群組行事曆。此行事曆的排程方式非常類似個體行事曆。傳送至群組的邀請會排程至群組行事曆及所有個體成員的行事曆。如果群組行事曆在被邀請參與事件時尚未存在,而且已開啟自動佈建,則系統會以一組預設的特性及 ACL 來建立行事曆。

以下是一些有關群組行事曆的事實:

如需有關 Calendar Server 使用者的更多資訊,請參閱第 14 章, 管理使用者、群組和資源

1.5.8 Calendar Server 版本 6.3 的資源簡介

資源是指可以使用行事曆排程的任何事物,例如會議室或投影機。每個此類事物都有一個單獨的資源 LDAP 項目。使用適當的工具建立 LDAP 項目和與其相關聯的行事曆:


備註 –

不需要明確地建立資源行事曆。當啟用自動佈建時,第一次邀請資源,系統便會自動為它建立資源行事曆。這個行為與使用者和群組的行為相同。


1.6 Calendar Server 版本 6.3 的資料格式及標準簡介

本小節說明以下有關 Calendar Server 資料的資訊:

1.6.1 Calendar Server 版本 6.3 的資料格式

Calendar Server 資料格式以 RFC 2445「Internet Calendaring and Scheduling Core Object Specification (iCalendar)」為模型。

Calendar Server 支援以下格式:

1.6.2 匯入及匯出 Calendar Server 版本 6.3 的行事曆資料

行事曆資料能以 iCalendar (.ical) 或 XML (.xml) 格式匯入和匯出。Calendar Server 管理員可以使用 Calendar Server csimportcsexport 公用程式匯入和匯出行事曆資料。一般使用者可以使用 Communications Express 使用者介面匯入和匯出行事曆資料。

1.6.3 Calendar Server 版本 6.3 中用於資料交換的行事曆連結

行事曆可作為內嵌在電子郵件訊息和網頁中的連結以供參照。在這種情況下,只要該行事曆允許讀取,使用者無需登入 Calendar Server,按一下連結即可檢視行事曆。例如,以下連結指定名為 Auditorium 的資源位置:

http://calendar.sesta.com:8080/uwc/?calid=Auditorium

如需有關如何連結行事曆的資訊,請參閱15.8 連結至行事曆

1.6.4 Calendar Server 版本 6.3 中的伺服器警示

支援伺服器端電子郵件警示這種警示可以傳送至收件者清單。電子郵件訊息的格式可以配置,且被作為伺服器屬性 (而非使用者屬性或行事曆屬性) 來維護。

1.6.5 Calendar Server 版本 6.3 中對 ITIP/IMIP 標準的支援

Calendar Server 支援 ITIP/IMIP 標準 (RFC 2446 及 RFC 2447),包括用於事件的 ITIP 方法 PUBLISHREQUESTREPLYCANCEL

1.7 Calendar Server 版本 6.3 的 LDAP 資料快取選項

LDAP 資料快取記憶體選項可確保 LDAP 資料在確定後立即可用,即使 LDAP 目錄伺服器被配置為資料確定後延遲一段時間才可用。

例如,如果您的網站已部署主要/從屬 LDAP 配置,其中 Calendar Server 透過從屬 LDAP 目錄伺服器來存取主要 LDAP 目錄,這樣就會使 LDAP 資料在提交後延遲一段時間才可用,則 LDAP 資料快取記憶體可確保您的 Calendar Server 用戶端擁有準確的 LDAP 資料。

本小節包含以下主題:

1.7.1 對 Calendar Server 版本 6.3 使用 LDAP 資料快取記憶體的考量

請使用以下指示來確定您的網站是否應配置 LDAP 資料快取記憶體:

1.7.2 Calendar Server 版本 6.3 的主要/從屬 LDAP 配置

主要/從屬 LDAP 配置包括一個主要 (根) 目錄伺服器和一個或多個從屬 (消耗或複製) 目錄伺服器。Calendar Server 可直接或透過從屬目錄伺服器存取主要 LDAP 目錄伺服器:

1.7.3 Calendar Server 版本 6.3 的 LDAP 資料快取記憶體

LDAP 資料快取記憶體透過為 Calendar Server 用戶端提供最新的 LDAP 資料 (即使主要目錄伺服器尚未更新每台從屬目錄伺服器) 來解決主要/從屬 LDAP 配置問題。

如果已啟用 LDAP 資料快取記憶體,Calendar Server 會將已確定的 LDAP 資料寫入快取記憶體資料庫 (ldapcache.db 檔案) 中。依預設,LDAP 快取記憶體資料庫位於 ldap_cache 資料庫目錄中,但是如果願意,您可以配置其他位置。

用戶端變更單一使用者的 LDAP 資料時,Calendar Server 會將已修訂的資料寫入 LDAP 快取記憶體資料庫 (以及從屬目錄伺服器) 中。隨後的用戶端作業會從快取記憶體資料庫中擷取 LDAP 資料。

對於單一使用者,此資料擷取適用於以下作業:

因此,LDAP 資料快取記憶體資料庫提供:

1.7.4 Calendar Server 版本 6.3 的 LDAP 資料快取記憶體限制

LDAP 資料快取記憶體不提供:

1.8 Calendar Server 版本 6.3 的存取控制

Calendar Server 使用存取控制清單 (Access Control List, ACL) 決定行事曆、行事曆特性和行事曆元件 (例如事件及待辦事項 (工作)) 的存取控制。

本小節包含以下主題:

1.8.1 Calendar Server 版本 6.3 的安全登入

使用者透過 Communications Express 登入 Calendar Server 時,依預設認證程序並不加密登入資訊,包括使用者名稱和密碼。如果您要在網站上進行安全登入,請將 Calendar Server 配置為使用安全套接層 (Secure Sockets Layer, SSL) 協定來加密登入資料。如需更多資訊,請參閱第 7 章, 配置 SSL配置 SSL。

1.8.2 Calendar Server 版本 6.3 中依使用者的存取控制

Calendar Server 在決定行事曆、行事曆特性以及行事曆元件的存取時,會考量以下使用者:

1.8.3 Calendar Server 版本 6.3 中的存取控制清單 (ACL)

使用存取控制清單決定行事曆、行事曆特性和行事曆元件例如事件和待辦事項工作的存取控制。ACL 由一個或多個存取控制項目 (ACE) 組成,這些存取控制項目是共同套用於同一行事曆或元件的字串。ACL 中的各個 ACE 必須由分號分隔。

以下是範例清單:

ACE 由以下元素組成,其中各個元素由指數符號 (^) 分隔:

例如,在 ACE jsmith^c^wd^g 中:

1.8.3.1 Calendar Server 版本 6.3 中 Ace 字串的 Who 元素

Who 元素是 ACE 的主要值,指明 ACE 套用於誰,如個別使用者、網域或使用者的特定類型。

Who 也稱為通用主要名稱 (UPN)。使用者的 UPN 是與使用者網域組合的使用者登入名稱。例如,網域 sesta.com 中的使用者 bill 具有 UPN bill@sesta.com

表 1–2 存取控制項目 (ACE) 字串的「Who」格式

格式 

說明 

user

指特定的使用者。例如:jsmith。 

user@domain

指特定網域中的特定使用者。例如:jsmith@sesta.com

@domain

指的是指定網域中的任何使用者。 

例如:@sesta.com 指定 jsmith@sesta.comsally@sesta.com,以及 sesta.com 中的任何其他使用者。

使用本格式授予或拒絕對整個使用者網域的存取。 

@

指所有使用者。 

@@{d|p|o|n}

指行事曆的所有者: 

  • @@d – 主要所有者的網域

  • @@p – 僅限於主要所有者

  • @@o – 全部所有者,包括主要所有者

  • @@n – 非所有者

1.8.3.2 Calendar Server 版本 6.3 中 Ace 字串的 What 元素

What 元素指定要存取的目標,例如行事曆、行事曆元件 (事件或工作) 或行事曆特性。

表 1–3 存取控制項目 (ACE) 字串的「What」值

值 

說明 


c                           

指定行事曆元件,例如事件和工作 


p                           

指定行事曆特性,例如名稱、說明、所有者等 


a                           

指定整個行事曆 (所有),包括元件與特性 

1.8.3.3 Calendar Server 版本 6.3 中 Ace 字串的 How 元素

元素指定所許可的存取控制權限類型例如讀取、寫入或刪除。

表 1–4 存取控制項目 (ACE) 字串的「How」類型

類型 

說明 

r

讀取存取。 

w

寫入存取,包括增加新項目和修改現有項目。 

d

刪除存取。 

s

排程 (邀請) 存取。可以產生請求,將會接受回覆,並且會允准其他 ITIP 排程互動。 

f

僅空閒/忙碌 (空閒時間) 存取。空閒/忙碌存取意味著使用者可以看到行事曆中已排程的時間,但是看不到事件詳細資訊。相反,只會看到「非空閒時間」幾個字出現在已排程時段的旁邊。無任何已排程事件的時段旁邊列示有「空閒時間」。 

網域的查找存取。 

e

代表進行回覆存取。此類型授予使用者代表行事曆的主要所有者接受或拒絕邀請的權限。無需明確地授權此存取類型,因為在將使用者指定為行事曆的所有者 (除了主要所有者之外的所有者) 時已暗示此存取類型。 

i

代表進行邀請存取。此類型授予使用者代表行事曆的主要所有者建立及修改元件的權限,在這些元件中已經邀請了其他與會者。無需明確地授權此存取類型,因為在將使用者指定為行事曆的所有者 (除了主要所有者之外的所有者) 時已暗示此存取類型。 

c

代表進行取消存取。此類型授予使用者代表行事曆的主要所有者取消元件的權限,已將與會者邀請至這些元件。無需明確地授權此存取類型,因為在將使用者指定為行事曆的所有者 (除了主要所有者之外的所有者) 時已暗示此存取類型。 

z

自我管理存取 - 授予認證的使用者增加或移除存取控制項目的權限。具有此權限的使用者可以增加和移除其自身的權限。例如,UserA 可能沒有對 UserB 的行事曆的寫入存取權限,但 UserA 已被授予對 UserB 的行事曆的自我管理存取權限。因此,UserA 可以增加授予其自己對 UserB 的行事曆的寫入存取權限的存取控制項目。 

注意:此權限不允許 UserA 授予其他使用者對 UserB 的行事曆的存取權限。例如,自我管理權限不允許 UserA 授予 UserC 對 UserB 的行事曆的存取權限。 

1.8.3.4 Calendar Server 版本 6.3 中 Ace 字串的 Grant 元素

Grant 元素指定是授予還是拒絕特定存取類型的存取,例如 d (刪除) 或 r (讀取)。

表 1–5 存取控制項目 (ACE) 字串的 Grant 值

值 

說明 

g

授予特定的存取控制權限。 

d

拒絕特定的存取控制權限。 

1.8.3.5 Calendar Server 版本 6.3 的 ACE 範例

以下範例說明 ACE 的使用:

1.8.3.6 在 Calendar Server 版本 6.3 的 ACL 中放置 ACE

當 Calendar Server 讀取 ACL 時,它會使用所遇到的授予或拒絕目標存取的第一個 ACE。因此,ACL 的排序非常重要,應該排序 ACE 字串,使較特定的 ACE 顯示在較一般的 ACE 之前。

例如,假定行事曆 jsmith:sports 之 ACL 中的第一個 ACE 授予所有使用者讀取存取權限。然後,Calendar Server 遇到了第二個 ACE,該 ACE 拒絕 bjones 對本行事曆的讀取存取權限。這種情況下,Calendar Server 會授予 bjones 對本行事曆的讀取存取權限,並因為第二個 ACE 是一個衝突而將其忽略。因此,為確保特定使用者 (例如 bjones) 的存取權限得到允准,在 ACL 中應該將 bjones 的 ACE 放置在全域性較強的項目 (例如套用至行事曆的所有使用者的 ACE) 之前。

1.9 Calendar Server 版本 6.3 的內部子系統

Sun Java System Calendar Server 包括以下內部子系統:

以下圖形顯示經由這些子系統的邏輯流程。

圖 1–1 Calendar Server 6.3 內部子系統邏輯流程

圖形顯示子系統和 Calendar Server 元件的概念性檢視。隨後的文字說明子系統和元件。

1.9.1 協定子系統

用戶端透過使用 HTTP 協定層提交請求來擷取行事曆資料。這是最小的 HTTP 伺服器實作,可有效支援行事曆請求。這透過將 Web 行事曆存取協定 (WCAP) 指令附加至 URL 來完成。

WCAP 是一種開放協定,允許您將自己的介面寫入 Calendar Server。使用 WCAP 指令 (副檔名為 .wcap),您可以執行大多數伺服器指令,但某些管理指令除外。您可以使用 WCAP 指令請求以包含在 HTML 中的 XML 或 iCalendar 格式輸出。

如需有關 WCAP 指令的資訊,請參閱「Sun Java System Calendar Server 6.3 WCAP Developer’s Guide」

1.9.2 核心子系統

核心子系統包括存取控制元件、WCAP 指令解譯元件以及將來自行事曆資料庫元件的資料格式化的資料轉譯器。核心子系統會處理行事曆請求並產生 XML 和 iCalendar 輸出。核心子系統也可以處理使用者認證。

1.9.3 資料庫子系統

資料庫子系統使用 Sleepycat Software 的 Berkeley DB (資料庫 API 不是公用的)。資料庫子系統可向資料庫儲存行事曆資料,也可從資料庫中擷取行事曆資料,其中包括事件、待辦事項 (工作) 和警示。行事曆資料以 iCalendar 格式為基礎,而用於 Calendar Server 資料的模式是 iCalendar 標準的超集合。

資料庫子系統會傳回低階格式的資料,然後核心 UI 產生器會轉譯低階資料並透過 WCAP 傳送它。

對於分散式行事曆資料庫,Calendar Server 使用分散式連線協定 (DWP) 以提供網路功能。如需更多資訊,請參閱1.10.5 分散式資料庫服務:Calendar Server 版本 6.3 中的 csdwpd

如需有關行事曆資料庫的資訊,請參閱第 16 章, 使用 csdb 公用程式管理 Calendar Server 資料庫

1.10 在 Calendar Server 版本 6.3 中作為常駐程式執行的服務

服務會作為常駐程式或程序執行。這些服務包括:

1.10.1 管理服務:Calendar Server 版本 6.3 中的 csadmind

csadmind 服務管理警示通知和群組排程請求。

1.10.2 HTTP 服務:Calendar Server 版本 6.3 中的 cshttpd

由於 Calendar Server 使用 HTTP 作為其主要傳輸方式,因此 cshttpd 服務會偵聽來自 Calendar Server 一般使用者的 HTTP 指令、接收使用者指令和傳回行事曆資料,這取決於內送 WCAP 指令中指定的格式。資料可以格式化為標準 RFC 2445 iCalendar 格式 (text/calendar) 或 XML 格式 (text/xml)

1.10.3 Calendar Server 資料庫管理員:Calendar Server 版本 6.3 中的 csstored

csstored 常駐程式會管理各種 Calendar Server 資料庫。因為每個存取存放區的服務均依賴這個存放服務,所以每當 Calendar Server 系統正在執行時,它應在所有伺服器上保持執行,包括前端及後端伺服器。

一般啟動及關機指令 start-calstop-cal 會隨著其他常駐程式啟動與停止 csstored。請勿在其他常駐程式之外單獨停止這個常駐程式。

請勿將 ics.conf 參數 local.store.enable 設為 "no" 來停用這個常駐程式。該參數預設為 "yes",請保持不變。

1.10.4 事件通知服務 (ENS):Calendar Server 版本 6.3 中的 csnotifyd 及 enpd

ENS 服務由以下各服務組成:


備註 –

enpdcsnotifyd 服務無需與 cshttpdcsdwpdcsadmind 程序在相同的伺服器上執行。


1.10.5 分散式資料庫服務:Calendar Server 版本 6.3 中的 csdwpd

使用 csdwpd,您可以建立分散式行事曆存放區。亦即,使用 csdwpd,管理在同一 Calendar Server 配置內散佈在多個後端伺服器的行事曆資料庫。

csdwpd 服務在後端伺服器的背景中執行,並接受遵循資料庫連線協定 (Database Wire Protocol, DWP) 的行事曆資料庫存取請求。DWP 是內部協定,可為 Calendar Server 資料庫提供網路功能。

1.11 Calendar Server 版本 6.3 的公用 API

Calendar Server 包括以下 API:

1.11.1 Calendar Server 版本 6.3 的 Web 行事曆存取控制協定 (WCAP)

Calendar Server 支援 WCAP 3.0,WCAP 3.0 是一個基於指令的高階協定,允許與用戶端進行通訊。WCAP 指令 (副檔名為 .wcap) 可讓用戶端獲得、修改和刪除行事曆元件、使用者喜好設定、行事曆特性以及其他行事曆資訊 (例如時區)。WCAP 元素 (例如時間、字串和參數) 通常遵循 RFC 2445、RFC 2446 和 RFC 2447 規格。

WCAP 使用以下格式在 HTTP 訊息中傳回輸出行事曆資訊:

透過 WCAP 指令,使用 login.wcap 登入的 Calendar Server 管理員具有以下能力:

如需更多資訊,請參閱「Sun Java System Calendar Server 6.3 WCAP Developer’s Guide」

1.11.2 Calendar Server 版本 6.3 的事件通知服務 (ENS) API

事件通知服務是一個警示派送程式它會偵測警示佇列中的事件並將這些事件的通知傳送給訂閱者。ENS API 可讓程式設計師修改 Calendar Server 使用的發佈和訂閱功能,以執行訂閱事件、取消訂閱事件以及通知事件訂閱者之類的功能。ENS API 由這些特定 API 組成:發佈者 API、訂閱者 API 以及發佈和訂閱派送程式 API。

如需有關 ENS API 的資訊,請參閱「Sun Java Communications Suite 5 Event Notification Service Guide 」


備註 –

Calendar Server 軟體也包含將 Java Message Queue 用於通知的支援,但是 csnotifyd 不會訂閱它。因此,它不是預設警示及通知系統的一部分。如需更多資訊,請參閱 Sun Java System Java Message Queue 文件。