![[z/OS]](../images/ngzos.gif)
WebSphere Application Server for z/OS 的安全性注意事项
在 WebSphere Application Server for z/OS 上受支持的功能
WebSphere® Application Server for z/OS® 支持下列功能。
功能 | 附加信息 |
---|---|
RunAs EJB | 有关更多信息,请参阅委派。 |
Servlet 的 RunAs | 有关更多信息,请参阅委派。 |
基于 SAF 的 IIOP 协议 | 有关更多信息,请参阅公共安全互操作性 V2 和安全认证服务 (SAS) 客户机配置。 |
z/OS 连接器设施 | 有关更多信息,请参阅资源恢复服务 (Resource Recovery Services, RRS)。 |
管理安全性 | 有关更多信息,请参阅管理安全性。 |
应用程序安全性 | 有关更多信息,请参阅应用程序安全性。 |
Java 2 安全性 | 有关更多信息,请参阅Java 2 安全性。 |
禁用安全性 | 有关更多信息,请参阅禁用管理安全性。 |
SAF 密钥环 | 有关更多信息,请参阅使用具有 Java 安全套接字扩展的系统授权工具密钥环。 |
认证功能 | 认证功能示例:基本、SSL 数字证书、基于表单的登录、安全性约束以及信任关联拦截器 |
J2EE 安全性资源 | 有关更多信息,请参阅任务概述:保护资源。 |
Web 认证 (LTPA) | 有关更多信息,请参阅配置轻量级第三方认证机制。 |
使用 LTPA 的 IIOP | 有关更多信息,请参阅轻量级第三方认证。 |
WebSphere 应用程序绑定 | 可以使用 WebSphere 应用程序绑定来提供用户至角色的映射。 |
与操作系统线程同步 | 有关更多信息,请参阅Java 线程标识和操作系统线程标识。 |
SAF 注册表 | 有关更多信息,请参阅选择注册表或存储库。 |
身份断言 | For more information, see身份断言。 |
认证协议 | 示例:z/SAS,
CSIV2 有关更多信息,请参阅认证协议支持。 |
CSIv2 一致性级别“0” | 有关更多信息,请参阅Security planning overview。 |
JAAS 编程模型 WebSphere 扩展 | 有关更多信息,请参阅将 Java 认证和授权服务编程模型用于 Web 认证。 |
使用 SAF 的分布式身份映射 | 有关更多信息,请参阅使用 SAF 的分布式身份映射。 |
所有基本 WebSphere Application Server 都提供了下列功能:
- 使用 RunAs:使用 RunAs 来更改调用者、服务器或角色的标识。此指定现在是 Servlet 规范的一部分。
- 支持基于 SAF 的 IIOP 认证协议:WebSphere Application Server Network Deployment 使用安全认证服务 (SAS) 来进行因特网 ORB 间协议 (IIOP) 认证。z/OS 具有它自己的 SAS 版本,称为
z/OS
安全认证服务 (z/SAS)(功能相似,但是机制不同),并且它处理下列功能:例如,本地安全性、基于安全套接字层 (SSL) 的授权、具有系统授权工具 (SAF) 映射的数字证书以及 SAF 身份断言。要点: 只有在 V6.0.x 与 V6.1 单元中联合的先前版本服务器之间才支持 z/SAS。
- 基于 SAF 的授权和 RunAs 功能:将 SAF (EJBROLE) 概要文件用于许可和委派安全性信息。
- 支持 z/OS 连接器设施:不是使用存储了用户标识和密码的别名,而是支持传播本地操作系统标识的能力。
- 对于 HTTP 和 IIOP 的 SAF 密钥环支持:将 SystemSSL 用于 HTTP、IIOP 和 SAF 密钥环支持。您也可以使用 JSSE。
- 认证功能:在 V9.0 和 V5 中,Web 认证机制(例如,基本、SSL 数字证书、基于表单的登录、安全性约束和信任关联拦截器)提供了相同的功能。
- J2EE 资源的授权:Java 2 Platform, Enterprise Edition (J2EE) 资源的授权使用的角色与 V4 中使用的角色相似,并将这些角色用作描述符。
- 安全性启用:可以全局启用或禁用安全性。当服务器启动时会打开某个级别的安全性,但直到管理员设置了安全性才启用安全性。
- 使用 LTPA 和 SWAM 的 Web 认证:支持使用轻量级第三方认证 (LTPA) 或简单 WebSphere 认证机制 (SWAM) 的单点登录 (SSO)。注: 在 WebSphere Application Server V9.0 中,已不推荐使用 SWAM,将来的发行版中将移除此认证机制。
- 使用 LTPA 的 IIOP 认证:支持使用 LTPA 的 IIOP 认证。
- WebSphere Application Bindings for Authorization:现在支持 WebSphere Application Bindings for Authorization。
- 与操作系统线程同步:支持应用程序与操作系统线程同步。
- J2EE 基于角色的命名安全性:使用 J2EE 角色来保护对名称空间的访问。新的角色和任务是 cosNamingRead、cosNamingWrite、cosNamingCreate 和 cosNamingDelete。
- 基于角色的管理安全性:限定安全性的角色是:
- 监视员(权限最低且为只读)
- 操作员(可以作运行时更改)
- 配置员(可以监视和配置特权)
- 管理员(权限最高)
- 部署者(供 wsadmin 用于对应用程序执行配置操作和运行时操作)
- Adminsecuritymanager(可以将用户映射至管理角色并管理权限组)
有关管理角色的更多信息,请参阅管理角色。
将 WebSphere Application Server for z/OS 与其他 WebSphere Application Server 平台进行比较
主要类似之处:
- 可插入的安全模型:可以在 IIOP公共安全互操作性 V2 (CSIv2)、Web 信任认证、Java 管理扩展 (JMX) 连接器或者“Java 认证和授权服务”(JAAS) 编程模型中认证可插入的安全模型。您必须完成下列任务:
- 确定哪个注册表适当以及需要哪些认证(令牌)机制
- 确定注册表是本地注册表还是远程注册表,并且确定应该使用哪些 Web 授权 - Web 授权包括简单 WebSphere 认证机制 (SWAM) 和轻量级第三方认证 (LTPA)注: 在 WebSphere Application Server V9.0 中,已不推荐使用 SWAM,将来的发行版中将移除此认证机制。
主要差异包括:
- SAF 注册表:因为 z/OS 跨综合系统而不是单个服务器,所以本地操作系统注册表在 z/OS 上提供高级功能。z/OS 提供用户映射、授权和委派功能的证书。
- 身份断言:使用可信的服务器或 CBIND 来获取服务器执行声明所需的权限。分布式平台需要将服务器放置在可信服务器列表中。z/OS 要求服务器标识具有特定的 CBIND 权限。声明类型是 SAF 用户标识、专有名称 (DN) 和 SSL 客户机证书。
- IIOP 客户机的 zSAS 和 SAS 认证协议:因为 z/SAS 支持 RACF® PassTickets,所以它与 SAS 不同。WebSphere Distributed 中的 SAS 层使用“公共对象请求代理体系结构”(CORBA) 可移植拦截器来实现“安全关联服务”,而 z/OS 并不是这样。
- CORBA 功能: z/OS 不支持 CORBA 安全接口(包括 CORBA current、LoginHelper、Credential 和 ServerSideAuthenticator 模型)。CORBA 功能已迁移至 JAAS。
在 WebSphere Application Server V9.0 中已不推荐使用 LoginHelp 应用程序编程接口 (API)。有关更多信息,请参阅将公共对象请求代理体系结构程序化登录迁移到 Java 认证和授权服务(CORBA 和 JAAS)。
- 认证协议:CSIv2 是 z/OS 安全服务器的对象管理组 (OMG) 规范,并在启用 WebSphere 安全性时自动启用。这是一种涉及到下面这三层的方法:1) 用于保护消息的安全套接字层/传输层安全性 (SSL/TLS);2) 用于用户标识和密码“类属安全性服务用户名密码”(GSSUP) 的辅助客户机认证层;3) 中间服务器(它必须特地为目标服务器授权)用于身份断言的安全性属性层。
符合 J2EE 1.3
要符合 J2EE,涉及到下列方面:
- CSIv2 一致性级别“0”:这是一种对象管理组 (OMG)(与 z/OS 安全服务器相关)规范,它通常是 CORBA 支持的一部分。CSIv2 当启用安全性时自动启用。
- 使用 Java 2 安全性:有“启用安全性”和“启用 Java 2 安全性”,并且 Java2 的缺省值是“打开”。这提供细颗粒度访问控制,与基于主体集的授权相比,它是基于代码的。每个类属于一个特别的域。Java 2 安全性保护的许可权包括文件访问权、网络访问权、套接字、现有 Java 虚拟机 (JVM)、属性管理和线程。安全管理器是 Java 2 用来管理安全性和强制执行必需的保护的一种机制。对 Java 2 安全性的扩展包括使用动态策略(基于许可权资源类型而不是基于代码)、使用在模板概要文件中为资源定义的特定缺省许可权和使用过滤器文件禁用策略。
- 使用 JAAS 编程:JAAS 编程包括用于认证的 API 的标准集合。JAAS 是战略的授权和认证机制。IBM® Developer Kit for Java Technology Edition V5 随 WebSphere VV9.0 一起提供,但是提供了一些扩展。
- 使用 servlet RunAs 功能:分布式平台(不是 z/OS 平台)上的 WebSphere Application Server 将此功能称为委派策略。您可以更改标识作为系统、调用者或角色(用户)运行。此功能现在是 Servlet 规范的一部分。认证过程涉及到使用用户标识和密码,然后将别名映射至适当的 XML 文件或 EJBROLE,以查找 RunAs 角色的用户标识。
在 API/SPI 级别与 WebSphere Application Server Network Deployment 的一致性
如果在应用程序编程接口或服务提供程序编程接口 (API/SPI) 级别与 WebSphere Application Server Network Deployment 一致,那么更容易从 z/OS 上的 WebSphere Application Server Network Deployment 中部署应用程序。WebSphere Application Server Network Deployment 中的增强功能或者不推荐使用的功能也是
z/OS 中的增强功能或不推荐使用的功能。但是,这不意味着
z/OS 客户不需要执行迁移。在 API/SPI 级别与 WebSphere WebSphere Application Server Network Deployment 的一致性包括:
- JAAS 编程模型的 WebSphere Application Server 扩展:授权模型是用于 JAAS 编程的 Java 2 安全模型的扩展(因此它使用 J2EE 模型)。对已认证用户标识执行基于主题的认证。与仅仅使用用户标识和密码登录不同,现在有一个登录进程,该进程包括创建登录上下文、传递提示输入用户标识和密码的回调处理程序,并登录。WebSphere Application Server for z/OS 提供了登录模块、用来检索必需数据的回调处理程序、回调、WSSubject 选项、getCallerSubject 和 getRunAsSubject。
- 使用 WebSphere Application Server 安全性 API:z/OS 支持 WebSphere Application Server 安全性 API。
- 使用安全 JMX 连接器:JMX 连接器可以与用户标识和密码凭证配合使用。两个连接器类型是 RMI 和 SOAP/HTTPS(且都用于管理)。SOAP 连接器使用 JSSE SSL 指令表。RMI 连接器遵守与 IIOP 机制(例如 CSIv2)相同的优点和限制。