在 MapCredentials.xml 文件中设置验证
MapCredentials.xml 文件可用于指定对特定 Info*Engine 适配器的验证访问权限。MapCredentials.xml 文件中如果没有适用于特定适配器的条目,则对相应目录的默认访问权限为匿名。实际上,这意味着 Windchill 管理员有可能无法读取或修改该目录中的条目 (创建和更新用户信息)。
如果手动添加企业目录且不想允许匿名访问,则必须设置企业目录的验证访问权限,方法是将新创建的 JNDI 适配器、可分辨名称和密码添加到 MapCredentials.xml 文件中的现有属性。还可以通过更改现有属性值来更改正用于验证的可分辨名称或密码。
使用 xconfmanager 实用程序来更新
MapCredentials.xml 文件中的属性。xconfmanager 实用程序会覆盖通过直接编辑
MapCredentials.xml 文件所做的任何更改。有关 xconfmanager 实用程序的详细信息,请参阅
关于 xconfmanager 实用程序。
|
存储属性更改的实际文件是 codebase/WEB-INF/mapCredentials.txt 文件。只能使用 xconfmanager 实用程序对此文件进行更改。
|
执行以下步骤定义对企业目录的访问权限:
1. 确定由 Windchill 管理员使用的可分辨名称和密码,以便对照 LDAP 目录服务进行验证。
将在此过程的后继步骤中使用于此步骤中标识的可分辨名称和密码。分号是受限制的字符,且不能用在 Windchill 管理员密码中。
2. 如果想允许 Windchill 访问组条目或者修改组信息或用户信息,则应确保在步骤 1 中标识的可分辨名称具有读取/创建/更新/删除目录服务器中 Windchill 对象的足够权限。
|
您可以使用 “创建和配置 JNDI 适配器”中“设置其他属性”一节所述的 windchill.config.readOnly 和 windchill.config.doesNotContainGroups 属性启用访问。
要更改 LDAP 中定义的用户的访问控制权限设置,必须使用目录服务器管理工具。
|
3. 使用 xconfmanager 实用程序修改 MapCredentials.xml 文件,以将 Windchill 管理员用于访问目录服务器的可分辨名称和密码包括进来 (属性更改存储在 codebase/WEB-INF/mapCredentials.txt 文件中)。
属性的格式如下:
mapcredentials.admin.adapters=<服务名称>^<可分辨名称>^<密码>
其中,<distinguished_name> 和 <password> 是在步骤 1 中标识的值。
这是多值属性。可以使用 xconfmanager --add 选项添加多个适配器定义。使用 xconfmanager --remove 选项可移除特定的值。
例如,假定 enterpriseAdapter 为某适配器的名称,该适配器已为访问企业 LDAP 目录服务器而进行了设置。在此情景中,可分辨名称的值为 cn=DistUser,o=myCompany,密码为 password。以下命令将添加访问 LDAP 目录所需的验证访问权限:
xconfmanager --add "mapcredentials.admin.adapters=
enterpriseAdapter^cn=DistUser,o=myCompany^password"
-t "codebase/WEB-INF/mapCredentials.txt" -p
使用 xconfmanager 实用程序设置该属性的值可确保所指定的密码为加密密码。有关加密系统密码的详细信息,请参阅
专业化管理部分。
如果对您的 Windchill 进行了其他自定义设置,您还可通过针对 Windchill 中需要较少访问权限的其他活动而创建的适配器来设置其他验证访问权限。这种情况下,请使用以下属性添加或修改在适配器中指定的 LDAP 目录服务器的验证访问权限:
mapcredentials.nonprivileged.adapters=<服务名称>^<可分辨名称>^
<密码>
这将指定某类用户的可分辨名称和密码,这类用户不具有 Windchill 管理权限,但仍然需要对所建立的企业 LDAP 适配器进行访问的权限。
例如,假定 newAdapter 为某适配器的名称,该适配器已为访问企业 LDAP 目录服务器而进行了设置。在此情景中,可分辨名称的值为 cn=NonprivUser,o=myCompany,密码为 password。以下命令将添加访问 LDAP 目录所需的验证访问权限:
xconfmanager --add "mapcredentials.nonprivileged.adapters=
newAdapter^cn=NonprivUser,o=myCompany^password"
-t "codebase/WEB-INF/mapCredentials.txt" -p
|
确保在此指定的可分辨名称具有读取目录服务器中 Windchill 对象的足够权限。
|