委派

委派就是将进程安全身份从调用者传播到被调用对象。按照 Java™ Platform, Enterprise Edition (Java EE) 规范,当调用企业 Bean 时,Servlet 和企业 Bean 可以传播客户机或远程用户标识,它们也可以使用相应部署描述符中指定的另一个标识。

扩展支持在调用其他实体 Bean 时将企业 Bean 传播到服务器标识。可以采用三种类型的委派:
  • 委派 (RunAs) 客户机身份
  • 委派 (RunAs) 指定的身份
  • 代表 (RunAs) 系统标识
委派 (RunAs) 客户机身份
委派 (RunAs) 指定的身份
代表 (RunAs) 系统标识
注: 仅当使用服务器标识和密码时,RunAs 系统标识委派才有效。当使用 internalServerId 功能部件时,它将不会工作,因为不支持对系统标识进行 runAs。必须指定 RunAs 角色。当使用 internalServerID 时,对映射至管理员角色的用户标识和密码使用 RunAsSpecified。有关 internalServerId 的更多信息,请参阅管理角色和命名服务授权

EJB 规范仅支持 Enterprise JavaBeans (EJB) 级别的委派 (RunAs)。但是,扩展允许 EJB 方法级别的 RunAs 规范。对于 EJB 方法级别,RunAs 规范可以为相同企业 Bean 中的不同方法指定不同的 RunAs 角色。

在部署描述符(即,EJB 模块中的 ejb-jar.xml 文件和 Web 模块中的 web.xml 文件)中详细描述了 RunAs 规范。对 RunAs 规范的扩展包括在 ibm-ejb-jar-ext.xml 文件中。

对于包含从 RunAs 角色到用户的映射的每个应用程序都提供了 IBM 特有的绑定文件。此文件在 ibm-application-bnd.xml 文件中指定。

在应用程序启动期间,由运行时读取这些规范。下图说明了 WebSphere Application Server 安全性模型中实现的委派机制。
下图说明了 WebSphere Application Server 安全性模型中实现的委派机制。

委派过程

下面两个表有助于完成委派过程:
  • 资源到 RunAs 角色的映射表
  • RunAs 角色到用户标识和密码的映射表

使用“资源到 RunAs 角色”映射表以获取由 Servlet 或企业 Bean 使用的角色并将其传播到下一个企业 Bean 调用。

使用“RunAs 角色到用户标识和密码”映射表来获取属于 RunAs 角色的用户标识及其密码。

成功认证和授权后执行委派。在此过程中,委派模块查询“资源到 RunAs 角色”映射表以获取 RunAs 角色 (3)。委派模块查询“RunAs 角色到用户标识和密码”映射表,获取属于 RunAs 角色(4) 的用户。用户标识和密码用于创建新的凭证,它使用图中未显示的认证模块。

[AIX Solaris HP-UX Linux Windows][IBM i]产生的凭证作为调用凭证存储在“对象请求代理”(ORB) Current®对象中 (5)。Servlet 和企业 Bean 在调用其他企业 Bean 时从 ORB 当前对象中检取调用凭证 (6),然后调用下一个企业 Bean (7)。


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



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