为 PTC HTTP 服务器验证配置密码文件
尽管与密码文件相比 LDAP 是首选密码管理方法,但是在某些情况下适合使用补充密码文件。
例如,只读 LDAP 目录 (如公司目录) 用作验证主要基础而且需要某些伪用户 (如系统管理) 时,密码文件就非常有用。Info*Engine 可轻松访问多个 LDAP 目录中的信息,但通常的 Web 服务器不能提供使用多个 LDAP 目录中的信息对单个资源 (URL) 进行验证的方法。该问题的解决方案是,在密码文件中定义少数伪用户的密码,并将 HTTP Server 指向其余公司用户的公司 LDAP。HTTP Server 可访问多个 LDAP 目录中的信息,但如有必要,仍可将其配置为使用密码文件。
请执行以下操作:
1. 执行下列程序:
HTTP Server
ant -f webAppConfig.xml addAuthProvider -DappName=<Web 应用程序名称> -DproviderName=<密码文件的提供程序名称>
例如,
ant -f webAppConfig.xml addAuthProvider -DappName=Windchill
2. 请从 <Apache_Home>/bin 执行以下一个命令:
◦ 如果您是第一次创建密码:
./htpasswd -c <Apache_Home>/conf/app-<webapp_name>-Passwd <username> <password>
◦ 如果您不是第一次创建密码:
./htpasswd -b <Apache_Home>/conf/app-<webapp_name>-Passwd <username> <password>
例如,
./htpasswd -c /opt/hpws/apache/conf/app-Windchill-Passwd my_username my_password
3. 默认情况下,web 服务器用户可能没有权限访问已配置密码文件的默认目录 <Apache_Home>/conf。为了允许 Apache 进程读取密码文件,web 服务器用户必须能够访问 conf 目录和 app-<webapp_name>-Passwd 文件。
通过执行以下操作之一,使得 Apache 用户能够访问 conf 目录和 app-<webapp_name>-Passwd 文件:
◦ 更改 <Apache_Home>/conf 目录和 app-<webapp_name>-Passwd 文件的权限,使 web 服务器以其运行的用户 ID 拥有读取和执行权限。
◦ 请将 Apache 以其运行的组更改为特定的 Apache 组,将 <Apache_Home>/conf 和 app-<webapp_name>-Passwd 文件的组所有权更改为该组,并确保该组拥有 <Apache_Home>/conf 和 app-<webapp_name>-Passwd 文件的访问权限。