最新修订日期 2008 年 11 月 14 日
SunTM OpenSSO Enterprise 8.0 是 OpenSSO 项目 (http://opensso.org/) 的组成部分,也是 Sun OpenSSO 服务器的商业版。
本发行说明也适用于 Sun OpenSSO Express。OpenSSO Enterprise 和 OpenSSO Express 本质上是同一产品,其区别是:
OpenSSO Enterprise 大约每 12 个月发行一次,由 Sun QA 工程对其执行全面的自动和手动测试,并且会定期为其提供修补程序和热修复程序。
OpenSSO Express 大约每 3 个月发行一次,由 Sun QA 工程对其执行全面的自动测试和适度的手动测试,但不会为其提供修补程序和热修复程序。有关详细信息,参见 OpenSSO Express 的常见问题解答:https://opensso.dev.java.net/public/about/faqcenter/SupportFAQ.html。
如果正在将 WebLogic Server 用作 Web 容器以部署 OpenSSO Enterprise 服务器,参见4077:在 WebLogic Server 上配置 OpenSSO Enterprise 需要新的 ldapjdk.jar。
目录
如果之前尚未安装 OpenSSO Enterprise,请执行以下基本步骤:
如有必要,安装、配置并启动OpenSSO Enterprise 8.0 支持的 Web 容器中介绍的某个 Web 容器。
从以下某个站点下载并解压缩 opensso_enterprise_80.zip 文件:
使用 Web 容器管理控制台或部署命令将 opensso.war 文件部署到 Web 容器。
或者,如果 Web 容器支持,也可以只将 WAR 文件复制到容器的自动部署目录。
可以使用 GUI 配置程序或命令行配置程序配置 OpenSSO Enterprise。
要启动 GUI 配置程序,请在浏览器中输入以下 URL:protocol://host.domain:port/deploy_uri
例如:http://openssohost.example.com:8080/opensso
如果 OpenSSO Enterprise 正在共存模式下访问 Access Manager 7.1 模式 (DIT),参见3961:amadmin 在共存模式中无法登录到 OpenSSO 控制台。
使用管理控制台或新的 ssoadm 命令行实用程序来执行其他配置。
要下载 3.0 版的策略代理,参见 https://opensso.dev.java.net/public/use/index.html。
可从以下站点获取 OpenSSO Enterprise 8.0 文档:
http://docs.sun.com/coll/1767.1
定期检查该站点以查看最新文档。
OpenSSO Enterprise 8.0 包含 Sun Java System Access Manager 和 Sun Java System Federation Manager 的早期发行版中的功能,例如访问管理、联合管理和 Web 服务安全性。OpenSSO Enterprise 还包含本部分中介绍的新增功能。
有关 3.0 版策略代理的新增功能,参见以下指南之一:
《Sun OpenSSO Enterprise Policy Agent 3.0 User’s Guide for J2EE Agents》
或
《Sun OpenSSO Enterprise Policy Agent 3.0 User’s Guide for Web Agents 》
简化安装和配置:
要安装 OpenSSO Enterprise,只需使用相应的 Web 容器管理控制台或命令行实用程序部署 opensso.war 文件。首次使用部署 URI (/opensso) 访问服务器时会导向到配置程序,可通过此程序执行初始化配置任务,例如指定管理员密码以及配置和用户数据存储库。
还可以使用 opensso.war 文件为分布式验证 UI 服务器、仅控制台、仅服务器、身份认证提供者 (Identity Provider, IDP) 搜索服务部署创建和部署特定 WAR 文件。
集中服务器和代理配置数据:
OpenSSO Enterprise 和 3.0 版策略代理的配置数据存储在集中配置数据系统信息库中。可以使用 OpenSSO Enterprise 管理控制台或新的 ssoadm 命令行实用程序指定配置值。无需再在 AMConfig.properties 或 AMAgent.properties 文件中设置属性。
许多配置属性为“可热交换的”,这表示无需在修改属性后重新启动 Web 容器。
通过嵌入式数据存储库选项,可在不安装 Sun Java System Directory Server 的情况下透明地存储 OpenSSO Enterprise 和 3.0 版策略代理配置数据。
执行 OpenSSO Enterprise 服务器的初始化配置的命令行配置程序(除 GUI 配置程序以外)。
OpenSSO Enterprise 管理控制台常见任务:
创建 SAMLv2 提供者。可以容易地创建 SAMLv2 托管的或远程身份认证提供者 (IDP) 或服务提供者 (Service Provider, SP)。
创建 Fedlet。Fedlet 是 SAMLv2 SSO 协议的轻量级服务提供者 (SP) 实现。Fedlet 允许身份认证提供者 (IDP) 启用没有实现联合的 SP。SP 只将 Fedlet 添加到一个 Java Web 应用程序,然后部署该应用程序。
测试联合连通性。可以对新的或现有联合部署进行测试或故障排除,以判断是否成功连接,并确定问题的来源。
已添加新的 Web 容器,如OpenSSO Enterprise 8.0 支持的 Web 容器中所述。
可以使用基于 JSR 196 SPI 的提供者将简化的 Web 服务安全性代理部署在 Glassfish 和 Sun Java System Application Server 9.1。
WS 联合身份验证支持身份联合规范。OpenSSO Enterprise 具体支持 WS 联合身份验证被动请求者配置文件。
已添加对 XACML 版本 2.0 的支持,具体而言是 XACMLAuthzDecisionQuery 和 XACMLAuthzDecisionStatement,如同在 XACML v2.0 的 SAML 2.0 配置文件中指定的一样。
“安全验证”和“属性交换”使应用程序可通过 IDP 和 SP 应用程序之间的安全传输提供用户验证和属性信息。
多个联合协议集线器允许 OpenSSO Enterprise IDP 像联合集线器一样在不同联合协议(例如 SAMLv2、ID-FF 和 WS 联合身份验证)之间执行单点注销。
SAMLv2 配置文件支持 IDP 代理、联合提供者、NameID 映射、ECP、验证查询和属性查询。
可在OpenSSO Enterprise 8.0 支持的 Web 容器上采用安全令牌服务 (Security Token Service, STS)。
支持 SAMLv2 声明故障转移。
新的命令行实用程序 (ssoadm) 可以配置 OpenSSO Enterprise 服务器和 3.0 版策略代理。
已添加对 Sun Identity Manager、SiteMinder 和 Oracle Access Manager 的集成。
支持服务标签。参见在 Sun Inventory 使用服务标签。
分布式验证 UI 服务器包括允许用户执行初始化配置任务(例如指定 OpenSSO Enterprise 服务器并提供分布式验证 UI 服务器的用户和密码)的配置程序。
分布式验证 UI 服务器还支持跨域单点登录 (Cross Domain Single Sign-on, CDSSO)。
国际化和本地化更改包括:
除英文之外,OpenSSO Enterprise 还支持法文、西班牙文、德文、日文、韩文、简体中文和繁体中文。
本地化文件默认捆绑在 opensso.war 文件中(与 Access Manager 7 2005Q4 和 Access Manager 7.1 不同,其本地化文件均位于单独的本地化软件包中)。
OpenSSO Enterprise 和 Express 发行版均包含 Unix、SecurID 和 SafeWord 验证模块。SecurID 目前是基于 Java 的验证模块。
升级支持包括:
从 Access Manager 6.3、7.0 或 7.1 以及 Federation Manager 7.0 升级到 OpenSSO Enterprise 8.0
策略代理从 2.2 版代理升级到 3.0 版
OpenSSO 8.0 启用了服务标签,从而可使用 Sun Inventory 来跟踪和组织 OpenSSO 产品(以及其他硬件和软件产品)。要使用服务标签,必须先注册产品。可以注册 OpenSSO Enterprise、OpenSSO Express 甚至是每晚构建版本 (Nightly build)。
需要 Sun 联机帐户 (Sun Online Account, SOA) 或 Sun Developer Network (SDN) 帐户才能注册。如果没有这些帐户,可以在产品注册过程中获得一个帐户。
要注册 OpenSSO 产品并开始使用服务标签,请执行以下步骤:
以 amadmin 的身份登录到 OpenSSO 管理控制台。
在控制台中的常见任务下,单击注册此产品。
如果没有 SOA 或 SDN 帐户,请提供信息以获得新帐户。
单击注册。
服务标签注册文件存储在 config-directory/deployuri/lib/registration 目录中。例如:opensso-config/opensso/lib/registration。
有关详细信息,参见:
Sun Inventory:https://inventory.sun.com/inventory/
服务标签的常见问题解答:http://servicetags.central/faq.html
检查这些站点以查看您的特定平台是否支持服务标签,或者是否需要确定是否已注册特定 OpenSSO 服务器。
本部分所述的 OpenSSO Enterprise 8.0 硬件和软件要求仅表示可在其中以 Sun Microsystems 提供的完全支持来进行部署的环境。不对未满足声明的要求的环境提供支持。
Sun Microsystems 对不支持本文档所述的 OpenSSO Enterprise 8.0 硬件和软件要求的环境不承担任何责任。Sun 强烈建议在开始安装和部署过程以前联系 Sun 专业服务组织。这可能需要支付额外的费用。
平台 |
支持的 Web 容器 |
---|---|
基于 SPARC、x86 和 x64 的系统上的 Solaris 10 OS SPARC 和 x86 系统上的 Solaris 9 OS |
除了 Geronimo Application Server 2.1.1(仅 Tomcat)之外的所有OpenSSO Enterprise 8.0 支持的 Web 容器 |
OpenSolaris |
Glassfish Application Server V2 UR1 和 UR2 Apache Tomcat 6.0.18 |
Red Hat Enterprise Linux 5(AMD 服务器上的 64 位基本和高级平台) Red Hat Enterprise Linux 4 服务器(AMD 服务器上的 64 位基本和高级平台) |
除了 Geronimo 以外的所有OpenSSO Enterprise 8.0 支持的 Web 容器 |
Ubuntu 8.0.4 |
Glassfish Application Server V2 UR1 和 UR2 Apache Tomcat 6.0.18 |
Windows Server 2003 标准版 Windows Server 2003 企业版 Windows Server 2003 数据中心版 |
除了 Geronimo 以外的所有OpenSSO Enterprise 8.0 支持的 Web 容器 |
64 位服务器上的 Windows Server 2003 R2 | |
Windows XP Windows Vista |
除了 Oracle Server、JBoss Application Server 和 Geronimo 以外的所有OpenSSO Enterprise 8.0 支持的 Web 容器 |
Windows 2008 Server |
Glassfish Application Server V2 UR1 和 UR2 Apache Tomcat 6.0.18 |
IBM AIX 5.3 |
IBM WebSphere Application Server 6.1 |
注:
|
Web 容器 |
注意事项 |
---|---|
Sun Java System Application Server 9.1 Update 1 和 Update 2 | |
Glassfish Application Server V2 UR1 和 UR2 |
Glassfish 站点:https://glassfish.dev.java.net/ Glassfish 下载位置: Glassfish V2 UR1:https://glassfish.dev.java.net/downloads/v2ur1-b09d.html Glassfish V2 UR2:https://glassfish.dev.java.net/downloads/v2ur2-b04.html |
Sun Java System Web Server 7.0 Update 3(32 位和 64 位) |
下载:http://www.sun.com/download/index.jsp 仅 Update 3。不支持 Update 1 和 Update 2。 |
Apache Tomcat 5.5.27 和 6.0.18 及更高版本 | |
BEA WebLogic Server 9.2 MP2 | |
BEA WebLogic Server 10 |
参见 http://www.oracle.com/appserver/index.html 以下站点列出了提供支持的操作系统: http://e-docs.bea.com/platform/suppconfigs/configs100/100_over/overview.html#1122259 |
Oracle Application Server 10g |
参见 http://www.oracle.com/technology/products/database/oracle10g 支持版本 10.1.3.1。 |
IBM WebSphere Application Server 6.1 | |
Apache Geronimo Application Server 2.1.1 |
参见 http://geronimo.apache.org/ 仅 支持在 Solaris 系统上与 Tomcat 的配合使用。 |
JBoss Application Server 4.x |
有关每个 Web 容器的注意事项和预部署任务的详细信息,参见《Sun OpenSSO Enterprise 8.0 Installation and Configuration Guide》中的第 2 章 “Deploying the OpenSSO Enterprise Web Container”。
OpenSSO Enterprise 8.0 |
支持的 JDK 版本 |
---|---|
服务器 |
JDK 1.5.x 或 1.6.x 支持的 Web 容器上的 64 位 JVM Solaris 虚拟内存要求。对于 Solaris 系统,虚拟内存至少要配置为 JVM 堆大小的两倍,特别是在 64 位模式中配置 JVM 且堆大小超过 4 GB 时。因此,可能需要增加操作系统的交换空间。 |
客户机 (OpenSSO SDK) |
JDK 1.4.x、1.5.x 或 JDK 1.6.x |
有关数据存储库的详细信息,参见《Sun OpenSSO Enterprise 8.0 Deployment Planning Guide》中的第 2 章 “Building the Deployment Architecture”。
组件 |
要求 |
---|---|
OpenSSO Enterprise 8.0 |
两个或两个以上的 OpenSSO Enterprise 实例必须在不同主机服务器上运行,并配置为负载平衡器后的站点。 负载平衡器没有任何特定要求。但是,支持基于 Cookie 的粘性配置的负载平衡器通常有着更好的性能。 |
Sun Java System Message Queue 4.1 |
Message Queue 代理必须在不同服务器的群集模式中运行。 |
Oracle Berkeley DB 4.6.18 |
Berkeley DB 客户机和数据库必须与 Message Queue 代理部署在相同的服务器上。 可在运行 OpenSSO Enterprise 实例的相同服务器上部署 Message Queue 代理和 Berkeley DB。但是为了改善性能,应该考虑在不同服务器上安装代理。 |
策略代理版本 |
OpenSSO Enterprise 支持 |
---|---|
3.0 版策略代理 |
OpenSSO Enterprise 支持新的 3.0 版 J2EE 和 Web 策略代理,包括新的 3.0 版功能。 有关详细信息(包括可用的 3.0 版代理),参见 http://docs.sun.com/coll/1322.1。 |
2.2 版策略代理 |
OpenSSO Enterprise 支持 2.2 版的 J2EE 和 Web 策略代理。 但是,使用 OpenSSO Enterprise 部署时,2.2 版的策略代理必须继续使用 2.2 版的功能。例如,代理必须将配置数据存储在本地的 AMAgent.properties 文件中,不支持 OpenSSO Enterprise 集中代理配置。 有关详细信息(包括可用的 2.2 版代理),参见 http://docs.sun.com/coll/1809.1。 |
2.1 版策略代理 |
OpenSSO Enterprise 不支持 2.1 版的策略代理。 |
浏览器 |
平台 |
---|---|
Firefox 2.0.0.x 和 3.0.x |
Windows Vista、Windows XP 和 Windows Server 2003 Solaris OS,9 版和 10 版 Red Hat Linux 4 和 5 |
Firefox 1.0.7 和 1.5 |
Windows XP Windows 2000 Solaris OS,9 版和 10 版 Red Hat Linux 4 和 5 |
Microsoft Internet Explorer 7 |
Windows Vista、Windows XP 和 Windows Server 2003 |
Microsoft Internet Explorer 6.0 SP1 |
Windows XP |
Microsoft Internet Explorer 6.0 SP1 |
Windows 2000 |
Mozilla 1.7.12 |
Solaris OS,9 版和 10 版 Windows XP Windows 2000 Red Hat Linux 4 和 5 |
有关 OpenSSO Enterprise 问题的详细信息,参见:
https://opensso.dev.java.net/servlets/ProjectIssues
在 WebLogic Server 上配置 OpenSSO Enterprise 失败,因为 weblogic.jar 绑定了较早的 ldapjdk.jar 文件。
Sun 提供了新的 ldapjdk.jar 文件,其中包含与安全性和性能相关的修复程序。必须为 WebLogic Server 9.2 和 WebLogic Server 10 提供以下解决方法。
解决方法。在 CLASSPATH 中,将 Sun ldapjdk.jar 放在 weblogic.jar 之前,如下所示:
在临时目录中,使用以下命令从 opensso.war 提取 ldapjdk.jar:
jar xvf opensso.war WEB-INF/lib/ldapjdk.jar
将上述提取的 ldapjdk.jar 复制到 WebLogic 的 lib 目录。
例如,对于 Solaris 或 Linux 系统中的 WebLogic Server 10,此目录为:BEA_HOME/weblogic_10.0/server/lib
对于 Windows 系统中的 WebLogic Server 9.2,此目录为:BEA_HOME\weblogic92\server\lib
将此 ldapjdk.jar 的路径添加到现有 classpath 之前,方法是编辑用于启动 WebLogic Server 的启动脚本。在以下示例中,BEA_HOME 是安装 WebLogic Server 的位置。
对于 Windows 系统中的 WebLogic 9.2,编辑:
BEA_HOME\weblogic92\samples\domains\wl_server\bin\startWebLogic.cmd
将 set CLASSPATH=%CLASSPATH%;%MEDREC_WEBLOGIC_CLASSPATH% 更改为:
set CLASSPATH=BEA_HOME\weblogic92\server\lib\ldapjdk.jar;%CLASSPATH%;%MEDREC_WEBLOGIC_CLASSPATH%
对于 Windows 系统中的 WebLogic 10,编辑:
BEA_HOME\wlserver_10.0\samples\domains\wl_server\bin\startWebLogic.cmd
将 set CLASSPATH=%CLASSPATH%;%MEDREC_WEBLOGIC_CLASSPATH% 更改为:
set CLASSPATH= BEA_HOME\wlserver_10.0\server\lib\ldapjdk.jar;%CLASSPATH%;%MEDREC_WEBLOGIC_CLASSPATH%
对于 Solaris 或 Linux 系统中的 WebLogic 9.2 MP2,编辑:
/bea/weblogic92/samples/domains/wl_server/bin/ startWebLogic.sh
或
/usr/local/bea/user_projects/domains/base_domain/bin/startWebLogic.sh
将 CLASSPATH="${CLASSPATH}${CLASSPATHSEP}${MEDREC_WEBLOGIC_CLASSPATH}" 更改为:
CLASSPATH= "BEA_HOME/weblogic92/server/lib/ldapjdk.jar${CLASSPATH}${CLASSPATHSEP}${MEDREC_WEBLOGIC_CLASSPATH}" |
对于 Solaris 或 Linux 系统中的 WebLogic 10,编辑:
/bea/wlserver_10.0/samples/domains/wl_server/bin/startWebLogic.sh
或
/bea/user_projects/domains/wl10_domain/bin/startWebLogic.sh
将 CLASSPATH="${CLASSPATH}${CLASSPATHSEP}${MEDREC_WEBLOGIC_CLASSPATH}" 更改为:
CLASSPATH= "BEA_HOME/wlserver_10.0/server/lib/ldapjdk.jar${CLASSPATH}${CLASSPATHSEP}${MEDREC_WEBLOGIC_CLASSPATH}"
重新启动服务器。
配置 OpenSSO Enterprise。
如果正在使用配置程序配置 WebLogic Server 9.2 MP2 或 10,并且完成配置花费的时间超过 600 秒,则会将以下错误返回到终端、WebLogic Server 域和服务器日志:
<Error> <WebLogicServer> <BEA-000337> <[STUCK] Exe cuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "681" seconds working on the request "Http Request: /opensso/setup/setSetup Progress", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace: ...
产生此错误是由于 WebLogic Server 超过了其“阻塞线程最长时间:”的默认值:600 秒。
解决方法。如果配置程序没有响应,则重新启动。同时,考虑将 WebLogic Server 的“阻塞线程最长时间”的值从默认的 600 秒更改为更大的值,例如 1200 秒。使用 WebLogic 控制台更改该值(base_domain >“环境”>“服务器”>“管理服务器”>“配置/调节”)。
在 WebLogic Server 8.1 中,为 ID-WSF 配置的 opensso-client-jdk14.war 会在查找服务时返回错误。
解决方法。在 weblogic-home/jdk142_08/jre/lib/ 下添加以下 JAR 文件:jax-qname.jar、namespace.jar、relaxngDatatype.jar、xalan.jar 和 xsdlib.jar。
xalan.jar 文件位于 opensso.war 的 WEB-INF/lib 目录。其他文件位于 opensso-client-jdk14.war 的 WEB-INF/lib 目录中。
该问题仅在以下情况出现:
配置数据存储库为 Sun Java System Directory Server。
尝试安装多台服务器。
amadmin 密码与 Directory Server 绑定 dn 密码不同。
解决方法。该解决方法包含两个部分:
确保配置 Directory Server 绑定 dn 密码与 amadmin 密码相同。
配置第二台其他 OpenSSO Enterprise 服务器。要安装第二台服务器并指向第一台 OpenSSO Enterprise 服务器的配置目录,只需访问第二台 OpenSSO Enterprise 服务器的“配置程序”页面,并在第 1 步和第 2 步中输入 amadmin 密码、Cookie 域以及其他详细信息。
不要在第 3 步中选择“添加到现有部署”。而是选择第一个实例选项,并提供与第一台服务器相同的 Directory Server 名称、端口、DN、密码以及加密密钥。然后按照常规处理配置。
在控制台添加高级属性导致 OpenSSO Enterprise 服务器返回错误。该问题在添加高级配置属性后发生。
解决方法。如果在控制台中更改了默认服务器配置,则必须重新启动 OpenSSO Enterprise 服务器 Web 容器。
如果将 Oracle Application Server 10g 10.1.3.1 版作为 Web 容器,则会出现异常错误,导致 OpenSSO Express 配置失败。
解决方法。配置 OpenSSO 前,向目标 Oracle Application Server 10g 服务器实例的“服务器属性”添加以下 JVM 选项:
-Doc4j.jmx.security.proxy.off=true
OpenSSO Enterprise 使用不合格的发件人名称 Identity-Server 提交电子邮件通知,造成在日志中返回错误条目。
解决方法。在以下文件中将发件人名称从 Identity-Server 更改为 Identity-Server@hostname.domainname:
在 amPasswordResetModuleMsgs.properties 中,更改 fromAddress.label。
在 amAuth.properties 中,更改 lockOutEmailFrom。
因为未初始化 TTL 属性,服务管理配置的生存时间 (Time to live, TTL) 不起作用。
在从 CRL 分布点扩展中获得证书撤销列表 (Certificate Revocation List, CRL) 后,OpenSSO Enterprise 不会在 LDAP 目录中存储 CRL。
在该方案中,OpenSSO Enterprise 部署在 Windows Vista 服务器的两个 Glassfish(或 Application Server 9.1)实例上。在配置第二个 OpenSSO Enterprise 实例期间,使用“添加到现有部署”选项的复制配置会挂起。
解决方法。Windows Vista 系统中依然存在此问题。对于 Vista 以外的 Windows 系统,添加以下 Glassfish(或 Application Server 9.1)JVM 选项:
-Dcom.sun.enterprise.server.ss.ASQuickStartup=false
Active Directory 数据存储库有时候会挂起系统。此问题在创建新的 Active Directory 数据存储库时也会出现。
解决方法。在 OpenSSO Enterprise 管理控制台中,禁用 Active Directory 的“LDAP 遵循引用”:
单击“访问控制”、“顶层领域”、“数据存储库”、“Active Directory 数据存储库名称”。
取消选中“LDAP 遵循引用”的“已启用”。
保存更改。
如果使用 AMSDK 插件配置 OpenSSO Enterprise,而且为 MMR 设置了目录服务器,则在目录服务器实例挂起时不会进行故障转移。
如果配置 Windows 桌面 SSO 验证模块以从 Windows Server 2003 的 Internet Explorer 6.0 执行 Kerberos 验证,则会返回“未找到任何配置”错误。
如果配置证书验证并启用“将证书与 CRL 匹配”,则验证会失败。另请参见相关问题4085:OpenSSO Enterprise 无法在 LDAP 目录中存储 CRL。
如果 OpenSSO Enterprise 管理员 (amadmin) 创建新领域(例如 myorg),并随后尝试按如下所示登录到新领域:
http://host:port/opensso/UI/Login?org=myorg
OpenSSO Enteprise 返回验证失败错误。
解决方法。以 amadmin 的身份只能登录到根领域(而且只能登录到“数据存储库”或“应用程序”模块)。
如果将根领域的验证模块更改为 DataStore 以外的模块,则 amadmin 无法登录到控制台。
解决方法。使用 http://host.domain/deployurl/UI/Login?module=DataStore 登录。
host:port/uri/samples 下的 index.html 显示:
1. Authentication Samples 2. ID-FF Sample 3. SAMLv2 Sample 4. Multi-Federation Protocols Sample
但是,index.html 中缺少以下到策略样例的链接:host:port/uri/samples/policy/policy-plugins.html
解决方法:在浏览器中打开 host:port/uri/samples/policy/policy-plugins.html 文件。
要为已启用 Java Security Manager 的 OpenSSO Web 容器启用 OCSP 检查,向 server.policy 文件(或对等文件)添加以下权限:
permission java.security.SecurityPermission "getProperty.ocsp.*";
如果生成仅控制台部署,则无法使用“控制台常见任务”创建 Fedlet,同时会产生表明没有 sp-extended.xml 的文件或目录的错误消息。仅控制台配置程序未设置 com.iplanet.services.configpath 属性。
解决方法。编辑 AMConfig.properties 文件并将 com.iplanet.services.configpath 属性设置为配置目录。例如:
com.iplanet.services.configpath=/consoleonly
只有 Access Manager 系统信息库 (Access Manager Repository, AMSDK) 数据存储库支持 Access Manager 角色策略主题。默认情况下,策略配置禁用该主题。因此,仅在数据存储库类型配置为使用 AMSDK 插件时启用 Access Manager 角色策略主题。
解压缩 ssoSessionTools.zip 后,运行 setup.bat 脚本无法安装会话脚本,并返回以下错误:
Unable to locate JRE meeting specification "1.4+"
解决方法。在 setup.bat 脚本中,从 java.exe 命令中删除 -version:"1.4+",然后重新运行脚本。
会话故障转移配置不会向已指定的服务器列表添加第二个 OpenSSO Enterprise 实例。
解决方法。使用 OpenSSO Enterprise 控制台或 ssoadm 实用程序来手动向服务器列表添加第二个服务器实例。
import-svc-cfg 子命令有时会失败,原因是 OpenSSO Enterprise 无法删除 Service Manager 数据存储库中的节点。以下方案可能造成此问题:
使用远程 Sun Java System Directory Server 作为配置数据存储库来配置 OpenSSO Enterprise。
使用 ssoadm export-svc-cfg 命令导出服务 XML 文件。
使用 ssoadm import-svc-cfg 命令重新导入第 2 步中获得的服务 XML 数据。
系统询问是否删除现有数据时,选择“是”。
返回以下错误消息:Unexpected LDAP exception occurred。
解决方法。重新执行 ssoadm import-svc-cfg 命令,直至成功完成。
此异常导致无法执行带有 get-realm 的 ssoadm 命令。
Logging configuration class "com.sun.identity.log.s1is.LogConfigReader" failed com.sun.identity.security.AMSecurityPropertiesException: AdminTokenAction: FATAL ERROR: Cannot obtain Application SSO token. Check AMConfig.properties for the following properties com.sun.identity.agents.app.username com.iplanet.am.service.password Logging configuration class "com.sun.identity.log.s1is.LogConfigReader" failed com.sun.identity.security.AMSecurityPropertiesException: AdminTokenAction: FATAL ERROR: Cannot obtain Application SSO token. Check AMConfig.properties for the following properties com.sun.identity.agents.app.username com.iplanet.am.service.password AdminTokenAction: FATAL ERROR: Cannot obtain Application SSO token. Check AMConfig.properties for the following properties com.sun.identity.agents.app.username com.iplanet.am.service.password
检查 amadmin 密码是否与服务管理数据存储库的目录管理员密码不同。如果是,请采用以下解决方法。
解决方法。按以下方法修改服务器配置 XML:
以 amadmin 的身份登录到 OpenSSO 控制台。
使用 ssoadm.jsp get-svrcfg-xml 获取服务器配置 XML。
使用 encode.jsp 编码 amadmin 密码。
设置 XML 中两处由 amadmin-password 表示的已编码的密码。例如:
<User name="User1" type="proxy"> <DirDN> cn=puser,ou=DSAME Users,dc=opensso,dc=java,dc=net </DirDN> <DirPassword> amadmin-password </DirPassword> </User> <User name="User2" type="admin"> <DirDN> cn=dsameuser,ou=DSAME Users,dc=opensso,dc=java,dc=net </DirDN> <DirPassword> amadmin-password </DirPassword> </User> <BaseDN> dc=opensso,dc=java,dc=net </BaseDN> </ServerGroup>
使用 ssoadm.jsp set-svrcfg-xml 设置更改的服务器配置 XML。
在运行 ssoadm 实用程序的 setup 脚本后,尝试运行 ssoadm 会返回 NoClassDefFoundError 错误。升级后的 OpenSSO Enterprise 实例会出现该问题。
解决方法。要使用 JSS,将 jss4.jar 添加到 classpath 并设置 LD_LIBRARY_PATH 环境变量。(如果正在使用默认 JCE,则无需将 jss4.jar 添加到 classpath。)
对于客户机 SDK 安装,默认禁用服务管理服务 (Service Management Service, SMS) 高速缓存。
解决方法:对于 Web 服务安全性 (Web Services Security, WSS) 应用程序,需要在 AMConfig.properties 文件中设置 com.sun.identity.sm.cache.enabled=false,否则问题 3171 的修复程序不起作用。
对于所有其他客户机 SDK 应用程序,在 AMConfig.properties 文件中设置 com.sun.identity.sm.cache.enabled=true 以启用 SMS 高速缓存,从而避免性能问题。
客户机 SDK WAR 文件配置程序将错误的共享密钥放在 AMConfig.properties 文件中
解决方法。将共享密钥值和密码加密密钥从 OpenSSO Enterprise 服务器复制到客户机 SDK AMConfig.properties 文件中(该文件位于 $HOME/OpenSSOCLient 目录下)。
3923:无法在 Oracle Application Server 的“控制台常见任务”页面中创建实体 (IDP 或 SP)
1977:WebSphere Application Server 6.1 上的 SAMLv2 样例 configure.jsp 文件失败
当 OpenSSO Enterprise 部署在 Oracle Application Server 中时,在“控制台常见任务”页面中创建实体(IDP 或 SP)会产生异常。
解决方法。当 opensso.war 部署在 Oracle Application Server 时,在部署计划视图中禁用 oracle.xml 文件的导入选项(“部署:部署设置”>“配置类加载”>“oracle.xml”)。
所有 ID-FF 日志记录都有相同的环境 ID(或登录 ID),即使它们属于不同用户。
logout.jsp 文件要求 JDK 1.5,但 IBM WebSphere Application Server 6.1 中 JSP 文件的 JDK 源级别设置为 JDK 1.3。
解决方法。参见1977:WebSphere Application Server 6.1 上的 SAMLv2 样例 configure.jsp 文件失败中的解决方法。
在 WebSphere Application Server 6.1 实例上,无法编译 /sample/saml2/sp/configure.jsp 和 /sample/saml2/idp/configure.jsp 文件。configure.jsp 文件要求 JDK 1.5,但 WebSphere Application Server 6.1 中 JSP 文件的 JDK 源级别设置为 JDK 1.3。
解决方法:编缉 JSP 引擎配置参数以将 JDK 源级别设置为 1.5:
打开 WEB-INF/ibm-web-ext.xmi 文件。
JSP 引擎配置参数存储在 WEB-INF/ibm-web-ext.xmi 文件的 Web 模块配置目录或 Web 模块二进制目录中:
配置目录。例如:
{WAS_ROOT}/profiles/profilename/config/cells/cellname/applications/ enterpriseappname/deployments/deployedname/webmodulename/
二进制目录,如果在“使用二进制配置”标记设置为“真”的情况下将应用程序部署到 WebSphere Application Server。例如:
{WAS_ROOT}/profiles/profilename/installedApps/nodename/ enterpriseappname/webmodulename/
删除 compileWithAssert 参数,方法是从文件中删除语句,或用注释标记(<!— 和 –>)将语句括起来。
添加值为 15 的 jdkSourceLevel 参数。例如:
<jspAttributes xmi:id="JSPAttribute_1" name="jdkSourceLevel" value="15"/>
注:文件内的 JSPAttribute_1 中的整数 (_1) 必须是唯一的。
保存 ibm-web-ext.xmi 文件。
重新启动应用程序。
有关 jdkSourceLevel 参数和其他 JSP 引擎配置参数的详细信息,参见:
如果根据 Web 服务安全性 (WSS) 的贷款样例设置代理服务器使用案例,并且以 wsp 以外的配置文件名称创建两个 Web 服务提供者 (Web Service Providers, WSP),则会出现错误。
解决方法。对于基于 JAX-WS/Web 应用程序的 Web 服务,使用静态端点作为 WSP 名称以支持多个 Web 服务。对于基于 EJB 的 Web 服务,使用默认 WSP 配置。
针对现有模式 (DIT) 配置 OpenSSO Enterprise 后无法登录到控制台,原因是没有使用配置期间输入的加密密钥(也就是早期 Access Manager 或 Federation Manager 实例中的加密密钥),而是生成错误的新加密密钥,这样会创建错误的 serverconfig.xml 文件。
解决方法。
更改为 OpenSSO Enterprise 配置目录。
将 AMConfig.properties 文件中的加密密钥更改为正确的值。
从之前的 Access Manager 或 Federation Manager 实例中复制 serverconfig.xml 的备份副本。
重新启动 OpenSSO Enterprise 服务器。
如果在共存模式中以 Access Manager 7.1 Directory Server 模式 (DIT) 配置 OpenSSO,并且非管理员用户登录到 OpenSSO 控制台,则此用户会进入到无效 URL。例如:
http://ssohost.example.com:8080/amserver/..amserver/base/AMAdminFrame。
解决方法。按如下方法编辑 URL:
protocol://host.domain:port/deploy_uri/idm/EndUser
例如:
http://ssohost.example.com:8080/amserver/idm/EndUser
如果在共存模式下以 Access Manager 7.1 Directory Server 模式 (DIT) 配置 OpenSSO,则尝试使用 LDAP 验证以 amadmin 登录到控制台会失败。
解决方法。要在共存模式下以 amadmin 登录到 OpenSSO 控制台,则添加 module=DataStore 查询参数。例如:
protocol://host.domain:port/deploy_uri/UI/Login/?module=DataStore
例如:
http://ssohost.example.com:8080/amserver/UI/Login/?module=DataStore
OpenSSO Enterprise 分布式验证 UI 服务器组件只能与 OpenSSO Enterprise 搭配使用。不支持以下方案:
分布式验证 UI 服务器 7.0 或 7.1 与 OpenSSO Enterprise 服务器搭配使用
OpenSSO Enterprise 分布式验证 UI 服务器与 Access Manager 7.0 或 7.1 服务器搭配使用
如果从 Access Manager 或 Federation Manager 之前的版本升级到 OpenSSO Enterprise 8.0,则 ID-FF 配置文件不起作用(除非同时升级 Access Manager 或 Federation Manager 模式)。
解决方法。尝试 ID-FF 配置文件之前,升级 Access Manager 或 Federation Manager 模式。有关升级模式的详细信息,参见《Sun OpenSSO Enterprise 8.0 Upgrade Guide》。
解决方法:要查看以 .txt 格式提供的本地化权利文件,需要使用为以下语言环境指定了本地化编码的浏览器:
法文 (fr):ISO–8859-1
西班牙文 (es):ISO–8859-1
德文 (de):ISO–8859-1
简体中文 (zh_CN):UTF-8
繁体中文 (zh_TW):UTF-8
韩文 (ko):UTF-8
日文 (ja):EUC-JP
在 OpenSSO 控制台中,如果转到“联合”>“SAML1.x 配置”,然后在“通用设置”部分创建具有多字节名称的新“可信赖伙伴”,则可信赖伙伴的名称显示为乱码。
在 CCK 和 JA 语言环境的 Geronimo Web 容器中,如果以 amadmin 之外的身份登录,则“访问控制”、“领域”、“常规”、“最终用户”页面 (http://host:port/deployuri/idm/EndUser) 中显示问号。
如果在非英文语言环境(例如法文)中登录到 OpenSSO 控制台,然后依次单击“帮助”和“搜索提示”,则右面的“帮助”面板会显示 404 错误。
解决方法。要以英文查看“搜索提示”,则将浏览器语言设置为英文,并刷新“联机帮助”窗口。
如果在 C 语言环境中启动 Web 容器并将浏览器设置为法文等语言,则登录到管理控制台以后,一些字符显示为乱码。
对于 CCJK 语言环境,密码重置页面 (http://host:port/deployuri/password) 没有本地化。
Unix 验证模块的 dounix_msgs.po 文件没有进行翻译,原因是 Unix 验证模块不会包含在未来的 OpenSSO Enterprise 发行版中。参见弃用通知和声明。
如果尝试使用带有非 UTF-8 字符的 org 或 module 参数登录到 OpenSSO 控制台,则登录会失败。例如:http://host:port/deployuri/UI/Login?module=Japanese-string&gx_charset=UTF-8。
解决方法。使用 UTF-8 URL 编码字符(例如 %E3%81%A6)代替本机字符。
如果 OpenSSO 控制台在西班牙文语言环境中,“2.2 Agents”的翻译丢失了 2.2。
如果 OpenSSO 控制台处于西班牙文语言环境中,则依次单击“配置”、“验证”和“证书”后会返回错误。
在简体中文 (zh_CN) 语言环境中,控制台联机帮助文本以英文(而不是中文)显示。如果将浏览器的首选语言设置为 zh_CN,则只有左侧树中的联机帮助文本以英文显示。如果将浏览器的首选语言设置为 zh,则所有联机帮助文本都以英文显示。
解决方法。将 zh_CN 联机帮助内容复制到 Web 容器的 webapps 目录下的新 zh 目录,然后重新启动 Web 容器。
例如,对于 Apache Tomcat,将 /Tomcat6.0.18/webapps/opensso/html/zh_CN/* 复制到名为 /Tomcat6.0.18/webapps/opensso/html/zh/ 的新目录。然后重新启动 Tomcat 容器。
在英文版权声明的法文部分中,“Etats-unis”缺少重音,“armes nucléaires,des missiles”处的逗号后缺少空格,“Etats - Unis”中不应包含空格。
支持从以下发行版升级到 OpenSSO Enterprise 8.0:
之前的发行版,包括 Sun Java System Directory Server 中的配置数据 |
此平台支持的升级 |
---|---|
Sun Java System Access Manager 7.1 服务器 同时部署 Java Enterprise System 安装程序和 WAR 文件 |
Solaris SPARC、Solaris x86、Linux 和 Windows 系统 |
Sun Java System Access Manager 7 2005Q4 服务器 |
Solaris SPARC、Solaris x86 和 Linux 系统 |
Sun Java System Access Manager 6 2005Q1 (6.3) 服务器 |
Solaris SPARC、Solaris x86 和 Linux 系统 |
Sun Java System Federation Manager 7.0 服务器 |
Solaris SPARC、Solaris x86、Linux 和 Windows 系统 |
升级过程包括升级现有 Access Manager 或 Federation Manager 服务器实例,以及存储在 Sun Java System Directory Server 中的相应配置数据。
有关升级步骤的详细信息,参见《Sun OpenSSO Enterprise 8.0 Upgrade Guide》。
未来的 OpenSSO Enterprise 发行版不会包含服务管理服务 (SMS) API(com.sun.identity.sm 软件包)和 SMS 模型。
未来的 OpenSSO Enterprise 发行版不会包含 Unix 验证模块和 Unix 验证帮助器 (amunixd)。
《Sun Java System Access Manager 7.1 发行说明》表明在未来的 OpenSSO Enterprise 发行版中不会包含 Access Manager com.iplanet.am.sdk 软件包(通常称为 Access Manager SDK (AMSDK)),以及所有相关的 API 和 XML 模板。现在没有可用的迁移选项,预计将来也不会提供。Sun Identity Manager 提供了可用的用户置备解决方案,而不是 AMSDK。有关 Identity Manager 的详细信息,参见 http://www.sun.com/software/products/identity_mgr/index.jsp。
如果您在使用 OpenSSO Enterprise 期间遇到问题,请联系 Sun 支持资源 (SunSolve),网址是 http://sunsolve.sun.com/。
此站点可以链接至知识库、联机支持中心和 Product Tracker,并取得维护程序和支持联系人的电话号码。
如果要求针对特定问题的帮助,请提供以下信息:
问题说明,包括问题发生时出现的情况以及它对操作的影响
计算机类型、操作系统版本、Web 容器和版本、JDK 版本以及 OpenSSO Enterprise 版本,包括所有可能影响问题的修补程序和其他软件
用于再现问题的详细步骤
所有错误日志或核心转储
Sun 致力于提高其文档的质量,并十分乐意收到您的意见和建议。转到 http://docs.sun.com/ 并单击 Feedback(反馈)。
请在相应的字段内填写完整的文档标题和文件号码。文件号码通常包含七位或九位数字,您可以在本书的标题页或文档最上部找到文件号码。例如,本书的标题为 Sun OpenSSO Enterprise 发行说明,文件号码是 820-7090。提出意见时您还需要在表格中输入文件的英文文件号码和标题。本文件的英文文件号码是 820-3745,文件标题为《Sun OpenSSO Enterprise 8.0 Release Notes》。
可以在以下位置找到其他有用的信息和资源:
Sun 软件产品:http://wwws.sun.com/software/
Sun 支持资源:http://sunsolve.sun.com/
Sun Developer Network (SDN):http://developers.sun.com/
Sun 开发者服务:http://www.sun.com/developers/support/
欲获得自本介质发行以来所发布的辅助功能,请联系 Sun 索取有关 "Section 508" 法规符合性的产品评估文档,以便确定哪些版本最适合部署辅助功能解决方案。可通过以下网址获取应用程序的更新版本:http://sun.com/software/javaenterprisesystem/get.html。
有关 Sun 在辅助功能方面所做出的努力,请访问 http://sun.com/access。
本文档引用了第三方 URL,并提供了其他相关信息。
Sun 对本文档中提到的第三方 Web 站点的可用性不承担任何责任。对于此类站点或资源中的(或通过它们获得的)任何内容、广告、产品或其他资料,Sun 并不表示认可,也不承担任何责任。对于因使用或依靠此类站点或资源中的(或通过它们获得的)任何内容、产品或服务而造成的或连带产生的实际或名义损坏或损失,Sun 概不负责,也不承担任何责任。
日期(修订) |
更改说明 |
---|---|
2008 年 11 月 14 日 (11) |
OpenSSO Enterprise 8.0 硬件和软件要求中添加了包括新问题和更改的最新更改。 |
2008 年 11 月 11 日 (10) |
最初发行版。 |
2008 年 8 月 26 日 (05) |
Early Access (EA) 发行版草稿。 |