安全性配置和启用错误
使用此信息来对配置或启用安全性问题进行故障诊断。
- 未设置 LTPA 密码。 验证失败错误消息
setupClient.bat 或 setupClient.sh 文件未正常工作
Java HotSpot 服务器 VM 警告
- 如果已成功配置安全性,但现在在访问 Web 资源或管理控制台时迂到问题,请参阅 启用安全性后的错误或访问问题。
- NMSV0610I: A NamingException is being thrown from a javax.naming.Context implementation
- 性能 Servlet 显示权限错误,但是无法提供统计信息
- 在配置 Tivoli JACC 提供程序之后迁移用户和组时,显示 "名称" 值无效
- Sun JDK 无法读取应用程序服务器创建的 PKCS12 密钥库
- 不支持不安全的资源调用安全资源
有关诊断和解决安全性相关问题的一般提示,请参阅有关 对安全性组件进行故障诊断 的信息。
LTPA password not set. validation failed 错误消息
未设置 LTPA 密码。 在保存管理或应用程序安全设置之后,验证失败
消息在管理控制台中显示为错误
- 选择 。
- 完成此密码并确认密码字段。
- 单击“确定”。
- 再次尝试设置管理或应用程序安全性。
setupClient.bat 或 setupClient.sh 文件没有正常工作
Windows 操作系统上的 setupClient.bat 文件和 Linux® 和基于 UNIX 的平台上的 setupClient.sh 文件错误地指定了 SOAP 安全属性文件的位置。set CLIENTSOAP=-Dcom.ibm.SOAP.ConfigURL=file:%WAS_HOME%/properties/soap.client.props![[AIX HP-UX Solaris]](../images/unix.gif)
CLIENTSOAP=-Dcom.ibm.SOAP.ConfigURL=file:$WAS_HOME/properties/soap.client.props- 移除
file:后面的前导斜杠 (/)。 - 将
sas更改为soap。
Java HotSpot Server VM 警告
Java HotSpot(TM) Server VM warning:
Unexpected Signal 11 occurred under user-defined signal handler 0x7895710a要解决此错误,请应用 Hewlett Packard for Java™ 建议的修复程序,该程序来自 Hewlett Packard 支持站点,网址为 URL : http://www.hp.com.有关 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 版本 6.1中,当启用管理安全性时,将锁定管理服务。 但是,如果未启用应用程序安全性,那么不会对入局请求进行认证提问,因此,没有任何凭证可供性能 Servlet 用来访问管理服务。
如果启用了管理安全性,那么还必须启用应用程序安全性,以便性能 Servlet 能够处理入局请求。
Name value is invalid在配置 Tivoli JACC 提供程序后迁移用户和组时显示
当您使用 migrateEAR 实用程序来迁移配置 Tivoli ® Access Manager JACC 提供程序后对控制台用户和组所作的更改时, systemOut.log 文件中显示以下配置错误。
当您使用 migrateEAR 实用程序来迁移在配置 Tivoli Access Manager 的 JACC 提供程序之后对控制台用户和组所作的更改时,作业日志文件的相应输出中将显示以下配置错误。
<specialSubjects> name value is invalid
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 和 Application Server 所使用的 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 请求的作用,尝试在进行登录之后显示所请求的页面。