RSA 令牌认证机制

Rivest Shamir Adleman (RSA) 认证机制用来简化“灵活管理”拓扑的安全性环境。它支持向“灵活管理”拓扑安全方便地注册新服务器这一功能。利用“灵活管理”拓扑,可以通过使用作业管理器来以本地或远程方式提交管理作业并对这些作业进行管理,该作业管理器会管理应用程序、执行产品维护、修改配置和控制应用程序服务器运行时。RSA 认证机制仅用于服务器到服务器管理认证,例如管理连接器和文件传输请求。RSA 认证机制不会替换 LTPA 或 Kerboros,以供应用程序使用。

注: RSA 令牌认证机制有助于实现以下灵活管理目标:保存基本概要文件配置并从安全性角度对它们进行隔离。此机制允许管理代理程序所管理的基本概要文件具有不同的轻量级第三方认证 (LTPA) 密钥、不同的用户注册表以及不同的管理用户。
要点: RSA 令牌与 RSA SecureId 令牌不相关。请注意,应用程序服务器没有对 SecureId 提供支持。

认证就是确定客户机在特定上下文中是哪个用户或者它被声明为哪个对象的过程。客户机可以是最终用户、机器或应用程序。WebSphere® Application Server 中的认证机制通常与用户注册表紧密合作。用户注册表是执行认证时认证机制查询的用户和组帐户存储库。认证机制负责创建凭证,它是成功认证的客户机用户的内部产品表示。并不是所有凭证都是同等创建的。凭证的能力由配置的认证机制确定。

认证过程

RSA 令牌认证机制确保,在两个管理进程之间交换 RSA 根签署者证书(15 年生存期)之后,不需要为管理请求在不同概要文件之间使安全性信息同步。RSA 个人证书(1 年生存期)用来对 RSA 令牌执行加密操作,并且可由长期的 RSA 根验证。RSA 令牌认证不同于 LTPA,在 LTPA 中,密钥是共享的,如果一端更改,那么所有端都需要更改。因为 RSA 令牌认证基于 PKI 基础结构,所以它受益于大型拓扑中此技术的可伸缩性和可管理性。

RSA 令牌比 LTPA 具有更高级的安全性功能;这包括使 RSA 令牌成为一次性令牌的现时标志值、很短的到期时间段(由于它是一次性令牌)以及根据目标 RSA 信任库中证书建立的信任。

RSA 令牌认证不会与安全套接字层 (SSL) 使用相同证书。这是 RSA 具有其自己的密钥库的原因。为了隔离针对 RSA 建立的信任,信任库、密钥库和根密钥库需要不同于 SSL 配置。
注: 对纯客户机提供的 SSL 个人证书通常由服务器使用的 SSL 根证书进行签名,并且这允许纯客户机将 RSA 令牌发送至服务器并充当管理员。对于 RSA 令牌认证机制,应该避免此情况。RSA 令牌认证机制具有其自己的对个人证书进行签名的根证书,这些个人证书用来对令牌的各部分进行加密和签名。
存储在 RSA 令牌中的数据基于客户机主体集的标识。客户机主体集可以基于 LTPA 或 Kerberos,但是 RSA 令牌不将此保护用于管理请求。在仍然维持标识的安全传输的同时,RSA 令牌更易于使用。RSA 令牌中的数据包括下列各项:
  • 版本
  • 现时标志
  • 到期
  • 领域
  • 主体
  • 访问标识
  • 角色(当前未使用)
  • 定制数据
通过创建属性对象、添加定制属性并使用以下方式将此属性对象添加至 WSCredential,可以将定制数据添加至发送端上的 WSCredential(在转至出站之前)。
import com.ibm.websphere.security.cred.WSCredential;

java.util.Properties props = new java.util.Properties();
props.setProperty("myAttribute", "myValue");
WSCredential.put ("customRSAProperties", props);
如果在目标进程上创建了主体集,那么可通过以下方式获取对这些属性的访问权。
java.util.Properties props = (java.util.Properties) WSCredential.get("customRSAProperties");

会将此数据放置到目标端上的散列表中,并且会在 Java™ 认证和授权服务 (JAAS) 登录中使用该散列表来获取与 RSA 令牌包含相同属性的目标上的主体集。在目标与 RSA 令牌包含相同属性的情况下,您可以在并非来自目标使用的领域的目标端上具有主体集。为了使此授权成功,除非标识为可信服务器标识,否则在管理授权表中需要跨领域映射。

本节稍后部分的图中概述了 RSA 令牌认证机制,并且描述了当将请求从作为客户机的服务器发送至目标服务器时发生的过程。作为客户机的服务器对用作输入以创建 RSA 令牌的线程具有管理主体集。需要的其他信息是目标服务器的 RSA 公用证书。此证书必须是通过在发送任何真实的请求之前向目标进程作出“引导程序”MBean 请求来检索到的。该目标引导程序请求会从目标进程中检索到该公用证书。当创建 RSA 令牌时,获取目标的公用证书的主要目的是为了对密钥进行加密。仅目标才能对密钥进行解密,密钥用来对用户数据进行加密。

本节中稍后的图概述了 RSA 令牌认证机制,并且描述了当将请求从作为客户机的服务器发送至目标服务器时发生的过程。作为客户机的服务器对用作输入以创建 RSA 令牌的线程具有管理主体集。需要的其他信息是目标服务器的 RSA 公用证书。此证书必须是通过在发送任何真实的请求之前向目标进程作出“引导程序”MBean 请求来检索到的。该目标引导程序请求会从目标进程中检索到该公用证书。当创建 RSA 令牌时,获取目标的公用证书的主要目的是为了对密钥进行加密。仅目标才能对密钥进行解密,密钥用来对用户数据进行加密。

客户机的专用密钥用来对密钥和用户数据进行签名。客户机的公用密钥嵌入在 RSA 令牌中并且在目标上进行验证。如果当在目标上调用 CertPath API 时,客户机的公用密钥不可信,那么 RSA 令牌验证无法继续。如果客户机的公用密钥可信,那么它可以用来验证密钥和用户数据签名。

基本目标是通过安全地传播必需信息来将客户机主体集转换为目标上的主体集。在目标上生成了该主体集之后,RSA 认证机制过程完成。


指示主题类型的图标 概念主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=csec_7rsa_token_auth
文件名:csec_7rsa_token_auth.html