csdomain 公用程式可管理網域 LDAP 項目中的 Calendar Server 屬性。這些屬性是 icsCalendarDomain 物件類別的一部分。指令包括︰
create,在 LDAP 目錄中建立新的網域項目。
add,在網域項目中增加 Calendar Server 屬性及其相關值。
delete,在網域項目中刪除 Calendar Server 屬性,或刪除整個網域。
list,列出網域 LDAP 項目中的 Calendar Server 屬性。
若要執行 csdomain,必須在 ics.conf 檔案中設定下列參數:
必須將 service.virtualdomain.support 設定為 "yes"。
必須將 local.schemaversion 設定為 LDAP 模式的版本 ("1"、"1.5" 或 "2")。
如果 local.schemaversion = “1” 或 “1.5”,則必須將 service.dcroot 設定為 LDAP 目錄中 DC 樹狀結構的根尾碼。
如果 local.schemaversion = “2”,則必須將 service.schema2root 設定為其下包含所有網域的根尾碼。
在使用 csdomain 增加組織樹狀結構節點之前,您必須遵循第 10 章, 設定多重網域 Calendar Server 6.3 環境。
您必須在安裝了 Calendar Server 的機器上本機執行 csdomain。
Calendar Server 可以處於執行中或停止狀態。
您必須以執行 Calendar Server 的使用者或群組 (在安裝期間指定,例如 icsuser 和 icsgroup) 的身份或以 root 身份登入。
csdomain [-q | -v] -n node create domain csdomain [-q | -v] {-a attr[=value] | -f filename} add domain csdomain [-q | -v] [-a attr | -f filename] delete domain csdomain [-q | -v] list domain |
下表說明 csdomain 公用程式可用的指令。
表 D–13 csdomain 公用程式指令
指令 |
說明 |
---|---|
create |
在 LDAP 目錄中建立新的網域。 |
add |
在網域 LDAP 項目中增加 Calendar Server 屬性及其相關值。如果您使用 csdomain 增加或更新網域屬性,請重新啟動 Calendar Server 以使新值生效。 |
delete |
在 LDAP 目錄中為特定網域刪除某個 Calendar Server 屬性或刪除整個網域的所有 LDAP 項目。 |
list |
顯示 LDAP 目錄中特定網域的 Calendar Server 屬性。 |
version |
顯示公用程式的版本。 |
下表說明 csdomain 公用程式指令選項。
表 D–14 csdomain 公用程式指令選項
選項 |
說明 |
---|---|
-v |
在詳細模式下執行:顯示有關正在執行的指令之所有可用資訊。預設為關閉。 |
-q |
在無訊息模式下執行:
|
-a attr[=value] |
指定 LDAP 屬性的特性名稱及其選擇性值。 如需這些屬性和特性名稱的清單,請參閱D.9.3 LDAP 屬性和特性名稱。 |
-f filename |
指定包含 Calendar Server LDAP 目錄的特性名稱及其關聯值的文字檔案。 例如: createLowerCase="yes" filterPrivateEvents="no" fbIncludeDefCal="no" subIncludeDefCal="no" uiProxyUrl="https://proxyserver " |
-n node |
套用至 create 指令,如下所示︰
|
domain |
對於 add、delete 和 list 指令,指定 LDAP 目錄中的現有網域。 對於 create 指令,指定將要在 LDAP 目錄中建立之新網域的唯一名稱。 例如:west.sesta.com |
下表說明適用於 csdomain 公用程式的 LDAP 屬性和特性名稱。這些屬性是 icsCalendarDomain 物件類別的一部分。增加或刪除值時,您必須使用特性名稱,而不是屬性名稱。
如果您使用 csdomain 增加或更新網域 LDAP 屬性,請重新啟動 Calendar Server 以使新值生效。
D.9.3 LDAP 屬性和特性名稱說明可以使用 csdomain 公用程式設定的 icsAllowRights 屬性和特性。該屬性為 32 位元的數字字串,字串中的每個位元均對應於特定使用者權限。(在目前發行版本中,某些位元不使用,並依預設被設定為零。)如果已設定對應於某特定權限的位元 (值 = 1),則不允許該權限。如果未設定該位元 (值 = 0),則允許該權限。
icsAllowRights 屬性中的每個特性均具有對應的 ics.conf 參數。如果未設定特性 (值 = 0) 或特性不存在 (service.virtualdomain.support = "no"),則 Calendar Server 將使用對應的 ics.conf 參數做為預設值。
icsAllowRights 的值是數字字串,而不是整數。若要透過程式設計將 icsAllowRights 用於位元運算,您必須先將其字串值轉換為整數。
表 D–15 icsAllowRights LDAP 目錄屬性和特性
下表說明可以使用 csdomain 公用程式設定的 icsExtendedDomainPrefs 屬性和特性。每個特性均具有對應的 ics.conf 參數。如果未設定特性 (例如,值 = 0 或 service.virtualdomain.support="no") 或特性不存在,則 Calendar Server 將使用對應的 ics.conf 參數做為預設值。
表 D–16 icsExtendedDomainPrefs LDAP 目錄屬性
特性名稱 |
說明 |
---|---|
allowProxyLogin |
指定 "yes" 或 "no" 以表示是否允許代理登入。 對應的 ics.conf 參數為︰ service.http.allowadminproxy (預設值 = "yes") |
calmasterAccessOverride |
指定 "yes" 或 "no" 以表示 Calendar Server 管理員是否可以置換存取控制。 對應的 ics.conf 參數為︰ service.admin.calmaster.overrides.accesscontrol (預設值 = "no") |
calmasterCred |
指定一個 ASCII 字串,該字串是被指定為 Calendar Server 網域管理員之使用者 ID 的密碼。 對應的 ics.conf 參數為︰ service.siteadmin.cred (無預設值) |
calmasterUid |
指定一個 ASCII 字串,該字串是被指定為 Calendar Server 網域管理員的使用者 ID。 對應的 ics.conf 參數為︰ service.siteadmin.userid (無預設值) |
createLowercase |
指定 "yes" 或 "no" 以表示在建立新行事曆或搜尋行事曆時,Calendar Server 是否應將行事曆 ID (calid) 轉換為小寫。 對應的 ics.conf 參數為︰ calstore.calendar.create.lowercase (預設值 = "no") |
domainAccess |
指定網域的存取控制清單 (ACL)。如需有關 ACL 的資訊,請參閱1.8.3 Calendar Server 版本 6.3 中的存取控制清單 (ACL)。 此 ACL 用於跨網域搜尋。如需更多資訊,請參閱11.2 Calendar Server 6.3 系統中的交叉網域搜尋。 注意 – 只允許 domainAccess 的單一實例。不過,系統不會警告您是否出現重複。每當您變更值時,您必須確定只有一個。 |
fbIncludeDefCal |
指定 "yes" 或 "no" 以表示使用者的預設行事曆是否包含在使用者的空閒/忙碌行事曆清單中。 對應的 ics.conf 參數為︰ calstore.freebusy.include.defaultcalendar (預設值 = "yes") |
filterPrivateEvents |
指定 "yes" 或 "no" 以表示 Calendar Server 是否篩選 (識別) 私人和只有時間與日期 (機密) 的事件和工作。如果為 "no",則 Calendar Server 將它們視為公開事件和工作。 對應的 ics.conf 參數為︰ calstore.filterprivateevents (預設值 = "yes") |
groupMaxSize |
指定將為邀請展開的 LDAP 群組的大小上限。 對應的 ics.conf 參數為: calstore.group.attendee.maxsize (預設為 "0" – 展開群組而無大小限制) |
language |
指定網域的語言。 對應的 ics.conf 參數為︰ local.domain.language |
resourceDefaultAcl |
指定一個存取控制清單 (ACL),該清單為建立資源行事曆時所使用的預設存取控制權限。 對應的 ics.conf 參數為︰ resource.default.acl (預設為 "@@o^a^r^g;@@o^c^wdeic^g; @^a^rsf^g") |
setPublicRead |
指定使用者預設行事曆最初被設定為公開讀取/私人寫入 ("yes"),還是私人讀取/私人寫入 ("no")。 對應的 ics.conf 參數為︰ service.wcap.login.calendar.publicread (預設值 = "no") |
searchFilter |
指定搜尋篩選器以尋找使用者。 對應的 ics.conf 參數為︰ local.userSearchFilter |
ssoCookieDomain |
指定瀏覽器應將 cookie 僅傳送至指定網域中的伺服器。值必須以小數點號 (.) 開頭,例如:".sesta.com" 對應的 ics.conf 參數為︰ sso.cookiedomain (預設為目前網域) |
ssoUserDomain |
指定用做使用者 SSO 認證一部分的網域。 對應的 ics.conf 參數為︰ sso.userdomain (無預設值) |
subIncludeDefCal |
指定 "yes" 或 "no" 以表示使用者的預設行事曆是否包含在使用者的已訂閱行事曆清單中。 對應的 ics.conf 參數為︰ calstore.subscribed.include.defaultcalendar (預設值 = "yes") |
uiAllowAnyone |
指定 "yes" 或 "no" 以表示使用者介面是否應顯示並使用「所有使用者」存取控制清單 (ACL)。 對應的 ics.conf 參數為︰ ui.allow.anyone (預設值 = "yes") |
uiAllowDomain |
指定 "yes" 或 "no" 以表示使用者介面是否應顯示並使用此網域的存取控制清單 (ACL)。 對應的 ics.conf 參數為︰ ui.allow.domain (預設值 = "no") |
uiBaseUrl |
指定基底伺服器位址的 URL。例如:"https://proxyserver" 。 對應的 ics.conf 參數為︰ ui.base.url (無預設值) |
uiConfigFile |
指定基於 xml 的選擇性配置檔案,該檔案可由 Calendar Server 在啟動時讀取,並允許使用者介面的某些部分被隱藏。 對應的 ics.conf 參數為︰ ui.config.file (無預設值) |
uiProxyURL |
指定要在 HTML UI JavaScript 檔案中前置的代理伺服器位址的 URL。例如:"https://web_portal.sesta.com/" 對應的 ics.conf 參數為︰ ui.proxyaddress.url (無預設值) |
下表說明可使用 csdomain 公用程式設定的其他 LDAP 屬性和特性。
表 D–17 csdomain 公用程式可設定的其他 LDAP 目錄屬性
使用 LDAP Schema 1 建立名為 west.sesta.com 的新網域:
csdomain -v -n o=nodewest,o=sesta create west.sesta.com
使用 LDAP Schema 2 建立名為 east.sesta.com 的新網域:
csdomain -v -n nodeeast create east.sesta.com
顯示 west.sesta.com 網域的 Calendar Server LDAP 屬性清單︰
csdomain -v list west.sesta.com
將 west.sesta.com 網域的時區設定為 America/New_York︰
csdomain -v -a timezone=America/New_York add west.sesta.com