实现定制认证令牌以进行安全性属性传播

本主题说明如何创建自己的认证令牌,它是在登录主题中设置的,并且在下游传播。

关于此任务

通过此实现,可以指定定制登录模块或应用程序可使用的认证令牌。如果您要实现以下某个任务,考虑写您自己的实现:
  • 将属性隔离在您自己的实现内。
  • 使用定制序列化对信息进行序列化。您必须反序列化目标中的字节,并将信息添加回线程。本任务还可能包含加密和解密。
  • 使用 getUniqueID 应用程序编程接口 (API) 影响主题的整体唯一性。
要点: WebSphere® Application Server 中的安全运行时不会使用定制认证令牌来强制认证。WebSphere Application Server 安全性运行时仅在以下情况使用此令牌:
  • 调用 setBytes 方法以进行序列化
  • 调用 getForwardable 方法以确定是否对认证令牌进行序列化。
  • 调用 getUniqueId 方法以实现唯一性
  • 调用 getName 和 getVersion 方法以将序列化字节添加到下游发送的令牌占位符。
所有其他使用都是定制实现。

要实现定制认证令牌,您必须完成以下步骤:

过程

  1. 编写 AuthenticationToken 接口的定制实现。 有许多不同的方法可用于实现 AuthenticationToken 接口。但是,应确保完全实现 AuthenticationToken 接口和令牌接口所需的方法。在实现此接口后,可以将它放入 app_server_root/classes 目录中。或者,可将类放入任何专用目录。但是,要确保 WebSphere Application Server 类装入器可找到此类,并且该类被授予了相应的许可权。可将 Java™ 归档 (JAR) 文件或包含此类的目录添加到 server.policy 文件,以便该类具有服务器代码所需的许可权。
    提示: 传播框架定义的所有令牌类型都具有类似的接口。令牌类型是实现 com.ibm.wsspi.security.token.Token 接口的标记接口。此接口定义大多数方法。如果您计划实现多个令牌类型,请考虑创建实现 com.ibm.wsspi.security.token.Token 接口的抽象类。所有令牌实现(包括认证令牌 )都可能扩展抽象类,并且会完成大部分工作。

    要查看 AuthenticationToken 接口的实现,请参阅示例:com.ibm.wsspi.security.token.AuthenticationToken 实现

  2. 在 WebSphere Application Server 登录期间添加和接收定制认证令牌。 本任务的实现通常是通过将定制登录模块添加到各种应用程序和系统登录配置。但是,要反序列化信息,必须插入定制登录模块。在登录模块中对该对象实例化后,那么可以在落实方法期间将该对象添加到主题。

    如果您只要将信息添加到传播的主题,请参阅传播定制 Java 可序列化对象以进行安全性属性传播。如果要确保传播此信息、执行自己的定制序列化,或者要对主题高速缓存指定唯一性,请考虑编写自己的认证令牌实现。

    示例:定制认证令牌登录模块中的代码样本说明如何确定登录是初始登录还是传播登录。这些登录类型之间的不同之处在于 WSTokenHolderCallback 回调是否包含传播数据。如果回调不包含传播数据,那么初始化新的定制认证令牌实现,并将它设置到主题中。如果回调包含传播数据,那么查找特定定制认证令牌 TokenHolder 实例,将字节数组转换回定制 AuthenticationToken 对象,并将它设置回主题中。代码样本显示两个实例。

    可在登录模块的落实阶段使认证令牌成为只读的。如果您没有使令牌成为只读的,那么属性可添加到应用程序中。

  3. 将定制登录模块添加到已包含 com.ibm.ws.security.server.lm.wsMapDefaultInboundLoginModule 登录模块的 WebSphere Application Server 系统登录配置中,以接收定制授权令牌的序列化版本。

    因为此登录模块依赖于共享状态下由 com.ibm.ws.security.server.lm.wsMapDefaultInboundLoginModule 登录模块添加的信息,所以在添加 com.ibm.ws.security.server.lm.wsMapDefaultInboundLoginModule 登录模块后添加此登录模块。有关如何将定制登录模块添加到现有登录配置的信息,请参阅“为 JAAS 的系统登录配置开发定制登录模块”。

结果

在完成这些步骤后,您已实现定制认证令牌。

指示主题类型的图标 任务主题



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