Sun Java System Web Proxy Server 4.0.8 管理指南

关于动态组

对于 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 支持所有范围。有关 LDAP URL 的更多信息,请参见创建动态组的准则

DN 会自动包含在内,因而无需向组中逐一添加每个 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=groupOfUniqueMembersobjectclass=groupOfURLs。因此,uniqueMembermemberURL 属性都是有效属性。组的全体成员是其静态成员和动态成员的总和。


动态组对服务器性能的影响

使用动态组会对服务器性能产生影响。如果您正在测试组成员资格,而 DN 不是静态组的成员,Proxy Server 将检查数据库基 DN 中的所有动态组。Proxy Server 通过根据用户 DN 检查每个 memberURL 的基 DN 和范围来确定每个 memberURL 是否匹配。这样,Proxy Server 使用用户 DN 作为基 DN 并使用 memberURL 作为过滤器来执行基搜索。这一过程可能涉及大量的单个搜索操作。

创建动态组的准则

使用 Administration Server 界面创建新动态组时,请考虑以下准则:

根据 attributesscope(filter) 参数在 URL 中的位置来标识它们。即使不想指定任何属性,也必须包含用于分隔该字段的问号 (?)。

有关编辑组的更多信息,请参见编辑组条目

下表列出了 LDAP URL 的必需参数。

表 4–4 LDAP URL 的必需参数

参数名 

描述 

base_dn

搜索基 DN 或在 LDAP 目录中执行所有搜索的起点。此参数通常被设置为目录的后缀或根,例如 o=mcom.com

attributes

搜索将返回的属性列表。要指定多个属性,请使用逗号分隔这些属性(例如,cn,mail,telephoneNumber)。如果未指定任何属性,将返回所有属性。请注意,检查动态组成员资格时将忽略此参数。

scope

此参数是必需的。 

搜索范围,其值可以是: 

  • base 仅检索有关 URL 中指定的标识名 (base_dn) 的信息。

  • one 检索有关 URL 中指定的标识名 (base_dn ) 的下一级条目的信息。此范围不包括基本条目。

  • sub 检索有关 URL 中指定的标识名 (base_dn) 下面所有级别的条目的信息。此范围包括基本条目。

(filter)

此参数是必需的。 

应用于指定搜索范围内的条目的搜索过滤器。如果使用的是 Administration Server 界面,则必须指定此属性。括号是必需的。 

创建动态组

Procedure创建动态组

  1. 访问 Administration Server 并单击 "Users and Groups" 选项卡。

  2. 单击 "Create Group" 链接。

  3. 从 "Type of Group" 下拉式列表中选择 "Dynamic Group",然后单击 "Go"。

  4. 提供 "Create Group" 页面中要求的信息。

    有关特定字段的更多信息,请参见联机帮助。

  5. 单击 "Create" 以创建组,或者单击 "Create and Edit" 以创建组并显示刚创建的组的编辑页面。