[Java programming language only]

安全性 API

WebSphere® eXtreme Scale 采用开放式安全性体系结构。它提供了一个用于认证、授权和传输安全性的基本安全性框架,且需要用户实现插件以完成安全性基础结构。

下图显示针对 eXtreme Scale 服务器的客户机认证和授权的基本流程。

图 1. 客户机认证和授权流程
1. 客户机从凭证生成器请求凭证 2. 已生成要发送到服务器运行时的凭证。3. 将凭证发送到鉴别符
4. 凭证发送到鉴别符 5. 凭证发送到用户授权中心。
6. 认证发送到服务器运行时 7. 运行时将主体和许可权发送到 ObjectGrid 授权。8. ObjectGrid 授权将主体和许可权发送到授权服务

认证流程和授权流程如下所示。

认证流程

  1. 认证流程以 eXtreme Scale 客户机获取凭证开始。这通过 com.ibm.websphere.objectgrid.security.plugins.CredentialGenerator 插件完成。
  2. CredentialGenerator 对象知道如何生成有效的客户机凭证(例如,用户标识和密码对、Kerberos 凭单等)。会将此生成的凭证发送回客户机。
  3. 在客户机使用 CredentialGenerator 对象检索 Credential 对象后,会随 eXtreme Scale 请求一起将此 Credential 对象发送给 eXtreme Scale 服务器。
  4. eXtreme Scale 服务器在处理 eXtreme Scale 请求之前会认证 Credential 对象。然后,服务器使用 Authenticator 插件来认证 Credential 对象。
  5. Authenticator 插件提供对用户注册表的接口,例如,轻量级目录访问协议 (LDAP) 服务器或操作系统用户注册表。Authenticator 参考用户注册表并作出认证决策。
  6. 如果认证成功,那么会返回 Subject 对象以表示此客户机。

    授权流

    WebSphere eXtreme Scale 采用基于许可权的授权机制,且具有由不同许可权类表示的不同许可权类别。例如,com.ibm.websphere.objectgrid.security.MapPermission 对象提供用于读取、写入、插入、移除 ObjectMap 中数据条目以及使其失效的许可权。由于 WebSphere eXtreme Scale 支持随时可用的 Java™ 认证和授权服务 (JAAS) 授权,因此您可以通过提供授权策略使用 JAAS 来处理授权。

    另外,eXtreme Scale 还支持定制授权。定制授权通过插件 com.ibm.websphere.objectgrid.security.plugins.ObjectGridAuthorization 插入。 客户授权的流程如下所示。

  7. 服务器运行时将 Subject 对象和所需许可权发送给授权插件。
  8. 授权插件参考 Authorization 服务,并作出授权决策。如果为此 Subject 对象授予许可权,那么会返回值 true,否则,返回 false
  9. 该授权决策(true 或 false)会返回给服务器运行时。

安全性实现

本部分中的主题讨论如何规划安全 WebSphere eXtreme Scale 部署,以及如何规划插件实现。此部分基于各种安全性功能进行组织。在每个子主题中,您将了解相关插件以及如何实现插件。在认证部分中,您将了解如何连接到安全 WebSphere eXtreme Scale 部署环境。

客户机认证:客户机认证主题描述 WebSphere eXtreme Scale 客户机如何获取凭证以及服务器如何认证客户机。此部分还将讨论 WebSphere eXtreme Scale 客户机如何连接到安全 WebSphere eXtreme Scale 服务器。

授权:授权主题说明如何使用 ObjectGridAuthorization 来执行 JAAS 授权以及客户授权。

网格认证:数据网格认证主题讨论您可如何使用 SecureTokenManager 以安全传输服务器密钥。

Java 管理扩展 (JMX) 编程:WebSphere eXtreme Scale 服务器安全时,JMX 客户机可能需要将 JMX 凭证发送给服务器。