安全性配置和启用错误
使用此信息来对配置或启用安全性问题进行故障诊断。
- “未设置 LTPA 密码。验证失败”错误消息
setupClient.bat 或 setupClient.sh 文件没有正常工作
Java HotSpot Server VM 警告
- WebSphere Application Server V6 无法与 Enterprise Workload Manager (EWLM) 正常配合使用
- 如果您已成功配置安全性,但现在访问 Web 资源或管理控制台发生问题,请参阅启用安全性之后发生错误或访问存在问题。
- NMSV0610I: A NamingException is being thrown from a javax.naming.Context implementation
- 性能 Servlet 显示权限错误,但是无法提供统计信息
- 配置 Tivoli JACC 提供程序之后,在迁移用户和组时显示“名称值无效”
- Sun JDK 无法读取应用程序服务器创建的 PKCS12 密钥库
- 不支持不安全的资源调用安全资源
有关诊断和解决与安全性相关的问题的一般技巧,请参阅主题对安全性组件进行故障诊断。
“未设置 LTPA 密码。验证失败”错误消息
保存管理或应用程序安全性设置后,将在管理控制台中显示“未设置 LTPA 密码。验证失败”错误消息
- 选择 。
- 完成此密码并确认密码字段。
- 单击“确定”。
- 再次尝试设置管理或应用程序安全性。
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
setupClient.bat 或 setupClient.sh 文件没有正常工作
setupClient.bat 文件(在 Windows 操作系统上)和 setupClient.sh 文件(在基于 Linux 和 UNIX 的平台上)错误地指定 SOAP 安全性属性文件的位置。![[Windows]](../images/windows.gif)
set CLIENTSOAP=-Dcom.ibm.SOAP.ConfigURL=file:%WAS_HOME%/properties/soap.client.props
![[AIX]](../images/aixlogo.gif)
![[Linux]](../images/linux.gif)
![[AIX HP-UX Solaris]](../images/unix.gif)
![[z/OS]](../images/ngzos.gif)
CLIENTSOAP=-Dcom.ibm.SOAP.ConfigURL=file:$WAS_HOME/properties/soap.client.props
- 移除 file: 后面的前导斜杠 (/)。
- 将 sas 更改为 soap。
![[HP-UX]](../images/hpux.gif)
Java HotSpot Server VM 警告
Java HotSpot(TM) Server VM warning:
Unexpected Signal 11 occurred under user-defined signal handler 0x7895710a
要解决此错误,请应用 Hewlett Packard 支持站点(URL 为:http://www.hp.com)中由 Hewlett Packard for Java™ 建议的修订。WebSphere Application Server V6 无法与 Enterprise Workload Manager™ (EWLM) 正常配合使用
grant codeBase “file:/<EWLM_Install_Home>/classes/ARM/arm4.jar” {
permission java.security.AllPermission;
};
否则,您可能遇到违反 Java 2 安全许可权的 Java 2 安全性异常。请参阅server.policy 文件许可权,以了解关于配置 server.policy 文件的更多信息。
有关 IBM 支持机构提供的有关已知问题及其解决方法的最新信息,请参阅 IBM 支持机构页面。
IBM 支持机构提供了一些文档,这些文档可以帮助您节省收集解决问题所需信息的时间。在打开 PMR 之前,请参阅 IBM 支持机构页面。
NMSV0610I: A NamingException is being thrown from a javax.naming.Context implementation
If you use CSIv2 inbound authentication, basic authentication is required, and Java™
clients running with com.ibm.CORBA.validateBasicAuth=true might fail with the
following exception:
NMSV0610I: A NamingException is being thrown from a javax.naming.Context
implementation. Details follow:
Context implementation: com.ibm.ws.naming.jndicos.CNContextImpl
Context method: lookupExt
Context name: TestaburgerNode01Cell/nodes/TestaburgerNode01/servers/server1
Target name: SecurityServer
Other data: "" ""
Exception stack trace: javax.naming.NoPermissionException: NO_PERMISSION
exception caught. Root exception is org.omg.CORBA.NO_PERMISSION:
vmcid: 0x49421000 minor code: 92 completed: No
...
SECJ0395E: Could not locate the SecurityServer at host/port:9.42.72.27/9100
to validate the userid and password entered. You may need to specify valid
securityServerHost/Port in (WAS_INSTALL_ROOT)/properties/sas.client.props file.
要解决此问题,请修改客户机的 sas.clients.props 文件中的 com.ibm.CORBA.validateBasicAuth=false 属性(此文件位于 WAS_HOME/profiles/<profile-name>/properties 中),然后运行该客户机。
性能 Servlet 显示权限错误,但是无法提供统计信息
在 WebSphere Application Server V6.1 中,如果启用了管理安全性,那么将锁定管理服务。但是,如果未启用应用程序安全性,那么不会对入局请求进行认证提问,因此,没有任何凭证可供性能 Servlet 用来访问管理服务。
如果启用了管理安全性,那么还必须启用应用程序安全性,以便性能 Servlet 能够处理入局请求。
配置 Tivoli JACC 提供程序之后,在迁移用户和组时显示“名称值无效”
在配置 Tivoli® Access Manager JACC 提供程序之后,如果使用 migrateEAR 实用程序来迁移对控制台用户和组进行的更改,那么以下配置错误将显示在 systemOut.log 文件中。
在配置 Tivoli Access Manager JACC 提供程序之后,如果使用 migrateEAR 实用程序来迁移对控制台用户和组进行的更改,那么以下配置错误将显示在作业日志文件的相应输出中。
<specialSubjects> name value is invalid
![[z/OS]](../images/ngzos.gif)
migrateEAR 实用程序迁移 admin-authz.xml 文件中包含的用户和组数据。但是,如果在迁移之前将 pdwas-admin 组添加到 Tivoli Access Manager 中的管理员访问控制表 (ACL),那么 migrateEAR 实用程序不会转换 admin-authz.xml 文件中列出的 XML 标记。
要解决此错误,在迁移之前,请在 padadmin 中输入以下命令,以检查 pdwas-admin 组是否位于管理员 ACL 中:
acl show
_WebAppServer_deployedResources_Roles_administrator_admin-authz_ACL
应显示以下结果:
ACL Name:
_WebAppServer_deployedResources_Roles_administrator_admin-authz_ACL
Description: Created by the Tivoli Access Manager
for Websphere Application Server Migration Tool.
Entries:
User sec_master TcmdbsvaBR1
Group pdwas-admin T[WebAppServer]i
如果未列出 pdwas-admin 组,那么在 pdadmin 中输入以下命令以修改 ACL 来添加 pdwas-admin 组:
acl modify
_WebAppServer_deployedResources_Roles_administrator_admin
-authz_ACL set gruop pdwas-admin T [WebAppServer]i
Sun JDK 无法读取应用程序服务器创建的 PKCS12 密钥库
Sun JDK 无法读取应用程序服务器创建的 PKCS12 密钥库。这是因为 IBM SDK 和应用程序服务器使用的 PKCS12 实现与 Sun JDK 使用的实现不同。使用 Sun JDK 读取应用程序服务器创建的缺省信任密钥库 trust.p12 或密钥库 key.P12 时,这些差别就会产生问题。
因为 Sun JDK 不能读取信任密钥库,所以必须先使用 IBM SDK 从信任密钥库中抽取证书。然后,将这些证书导入到 Sun JDK 可以正确识别的密钥库(例如,JKS 密钥库)中。
不支持不安全的资源调用安全资源
如果有不安全的资源(例如,JSP 或 Servlet)调用安全资源,并且不安全的资源收集用户的数据,然后将此数据发布到安全的 JSP 文件或 Servlet 文件进行处理,那么应用程序可能会失败。
为了避免发生这种情况,请构造 Web 应用程序,以便强制用户在应用程序对安全的 JSP 文件或 Servlet 文件执行任何 HTTP POST 操作之前登录。要完成此任务,请使用您选择的任何安全性机制(例如,“基本认证”、“表单登录”或“证书”)来保护第一个资源。
之所以存在此限制,是因为“基本认证”和“表单登录”使用 Servlet sendRedirect 方法,该方法对于用户有多重含义。在进行基本认证和表单登录期间,将使用 sendRedirect 方法两次:
sendRedirect 方法最初在 Web 浏览器中显示基本认证或表单登录页面。它后来重定向 Web 浏览器回到初始请求的受保护的页面。sendRedirect(String URL) 方法告知 Web 浏览器使用 HTTP GET 请求来访问在 Web 地址中指定的页面。如果 HTTP POST 是向受保护的 JSP 文件或 Servlet 文件发出的第一个请求,并且先前未进行认证或登录,那么不会将 HTTP POST 传递到所请求的页面。但是,会传递 HTTP GET,这是因为基本认证和表单登录使用 sendRedirect 方法,它起 HTTP GET 请求的作用,尝试在进行登录之后显示所请求的页面。