上一主题: 配置排序顺序下一主题: 指定复制等待时间


跨对象类搜索

在您创建用户时 CA Identity Manager 搜索用户存储以检查该用户是否存在。 此搜索局限于具有在目录配置文件(directory.xml)的用户对象定义中指定的对象类的用户。 如果在那些对象类中没有找到现有用户,CA Identity Manager 将尝试创建用户。

如果存在使用同样的唯一标识符(用户 ID)但是使用不同对象类的用户,LDAP 服务器将无法创建该用户。 在 LDAP 服务器中会报告此错误,但是 CA Identity Manager 不识别此错误。 CA Identity Manager 看起来成功地创建了此用户。

要防止此问题,您可以配置 SEARCH_ACROSS_CLASSES 属性,这样 CA Identity Manager 在检查现有用户时会在所有对象类定义中搜索用户。

注意:此属性仅在执行创建用户等任务时影响对重复用户的搜索。 对于所有其他搜索,可以应用对象类约束。

遵循这些步骤:

  1. 在目录配置文件 (directory.xml) 中,找到描述用户对象的 ImsManagedObject 元素。
  2. 添加下列 PropertyDict 元素:
    <PropertyDict name="SEARCH_ACROSS_CLASSES" description="allowing checking an attribute across classes ">
    <Property name="ENABLE">true</Property>
    </PropertyDict>
    

注意:PropertyDict 元素必须是 ImsManagedObject 元素的末元素,如下例所示:

<ImsManagedObject name="User" description="My Users" objectclass="top,person,organizationalperson,inetorgperson,customClass" objecttype="USER">
<ImsManagedObjectAttr physicalname="departmentnumber" displayname="Department" description="Department" valuetype="String" required="true" multivalued="false" maxlength="0" />
.
.
.
<PropertyDict name="SEARCH_ACROSS_CLASSES" description="allow checking an attribute across classes ">
<Property name="ENABLE">true</Property>
</PropertyDict>