群組是一種物件,用於說明 LDAP 資料庫中的一組物件。Sun Java System Server 群組由共用某個一般屬性的使用者組成。例如,這組物件可能是在貴公司行銷部門工作的一群員工。這些員工可能屬於稱為 Marketing 的群組。
對於 LDAP 服務,定義群組成員身分有靜態和動態兩種方法。靜態群組明確列舉其成員物件。靜態群組是一般名稱 (CN),且含有 uniqueMembers 或 memberURLs 或 memberCertDescriptions。對於靜態群組,成員不共用一般屬性,但 cn=groupname 屬性除外。
動態群組可讓您使用 LDAP URL 定義僅與群組成員比對的規則集。對於動態群組,成員會共用 memberURL 篩選器中定義的某個一般屬性或屬性集。例如,如果您需要一個群組來包含 Sales 的所有員工,且這些員工已存在於 LDAP 資料庫中的 ou=Sales,o=Airius.com 之下,則您可以使用下列成員 URL 來定義動態群組:
ldap:///ou=Sales,o=sun??sub?(uid=*)
然後,此群組將包含在樹狀結構的 ou=Sales,o=sun 點下具有 uid 屬性的所有物件。
對於靜態和動態群組,如果使用 memberCertDescription,則成員可以共用憑證中的一般屬性。ACL 必須使用 SSL 方法,才能共用一般屬性。
一旦建立新的群組之後,您就可以在群組中增加使用者 (成員)。
本小節包含以下主題:
對於 LDAP 服務,Administration Server 可使您透過在任意數量使用者的 DN 中指定同一群組屬性來建立靜態群組。靜態群組除了增加或刪除使用者之外,完全不會有任何變更。
當使用 [Administration Server] 介面來建立新的靜態群組時,請考慮下列準則:
靜態群組可以包含其他靜態或動態群組。
如果您的目錄已定義組織單元,則您可以在 [Administration Server] 介面的 [Create Group] 頁面上使用 [Add New Group To],指定您要放置新群組的位置。預設位置為目錄的根位置 (最上面的項目)。
如需有關編輯群組的更多資訊,請參閱編輯群組項目。
存取 Administration Server,然後按一下 [Users and Groups] 標籤。
按一下 [Create Group] 連結。
從 [Type of Group] 下拉式清單中選取 [New Group],然後按一下 [Go]。
在 [Create Group] 頁面上鍵入資訊。
如需有關特定欄位的更多資訊,請參閱線上說明。
按一下 [Create] 以建立群組,或按一下 [Create and Edit] 以建立群組,並顯示剛建立之群組的編輯頁面。
對於 LDAP 服務,如果您想要根據任何屬性來自動將使用者分組,或想要將 ACL 套用至包含相符 DN 的特定群組,Proxy Server 可讓您建立動態群組。例如,您可以建立一個群組來自動包括含有 department=marketing 屬性的所有 DN。如果您套用 department=marketing 的搜尋篩選器,則搜尋傳回的群組會包括含有屬性 department=marketing 的所有 DN。然後,您可以由基於此過濾器的搜尋結果定義動態群組。隨後,您可以針對結果動態群組定義一個 ACL。
Proxy Server 會在 LDAP 伺服器模式中將動態群組實作為 objectclass=groupOfURLs。一個 groupOfURLs 類別可能沒有或有多個 memberURL 屬性,每個屬性都是說明目錄中一組物件的 LDAP URL。群組成員將是這些物件集的併集。例如,下列群組只包含一個成員 URL:
ldap:///o=mcom.com??sub?(department=marketing)
此範例說明的是在 o=mcom.com 之下由部門為 marketing 的所有物件所組成的集合。LDAP URL 可以包含搜尋庫 DN、範圍及篩選器,但不能包含主機名稱和連接埠。因此,您只能參照同一 LDAP 伺服器上的物件。支援所有範圍。如需有關 LDAP URL 的更多資訊,請參閱建立動態群組的準則。
DN 會自動加入群組中,不必在群組中逐一增加。群組會動態變更,因為每次 ACL 驗證需要群組查詢時,Proxy Server 就會執行 LDAP 伺服器搜尋。ACL 檔案中使用的使用者和群組名稱,與 LDAP 資料庫中物件的 cn 屬性相對應。
Proxy Server 使用 cn 屬性作為 ACL 的群組名稱。
從 ACL 至 LDAP 資料庫的對映在 dbswitch.conf 檔案 (它將 ACL 資料庫名稱與實際 LDAP 資料庫 URL 關聯起來) 和 ACL 檔案 (它定義資料庫與 ACL 的對應關係) 中均有定義。例如,如果您想要讓名為 staff 的群組中的成員身分具有基本存取權限,ACL 程式碼會查找物件類別為 groupOfanything 且 CN 設定為 staff 的物件。此物件可以明確列舉成員 DN (如同靜態群組的 groupOfUniqueNames 一樣) 或指定 LDAP URL (例如,groupOfURLs) 來定義群組的成員。
群組可以是靜態群組和動態群組。群組物件可以同時有 objectclass=groupOfUniqueMembers 和 objectclass=groupOfURLs。因此,uniqueMember 和 memberURL 屬性兩者皆有效。群組的成員身分是靜態和動態成員的併集。
使用動態群組會影響伺服器效能。如果您正在測試群組成員身分,且 DN 不是靜態群組的成員,則 Proxy Server 會檢查資料庫基底 DN 中的所有動態群組。Proxy Server 會比對使用者的 DN 來檢查基底 DN 和範圍,以判斷每個 memberURL 是否相符。接著,Proxy Server 會以使用者 DN 做為基底 DN 和 memberURL 的篩選器來執行基本搜尋。此程序可能需要大量的個別搜尋。
使用 [Administration Server] 介面來建立新的動態群組時,請考慮下列準則:
attributes、scope 及 (filter) 參數在 URL 中的位置,可作為識別這些參數的依據。即使您不要指定任何屬性,您仍然必須加上問號 (?) 來分隔此欄位。
如果您的目錄已定義組織單元,則您可以在 [Administration Server] 介面的 [Create Group] 頁面上使用 [Add New Group To],指定您要放置新群組的位置。預設位置為目錄的根位置 (最上面的項目)。
如需有關編輯群組的更多資訊,請參閱編輯群組項目。
表 4–4 LDAP URL 的必要參數