java - 在 web 服务调用上传递 LPTA token 不起作用

标签 java security websphere ltpa

我有一个使用 j2ee 安全性的 j2ee web 应用程序,因此用户的身份从 WebSEAL 传播到在 WAS7 中运行的应用程序。我现在正在尝试进行 SOAP web 服务调用并在该 web 服务调用中传播用户身份。为此,我使用 WSSubject 调用获取 LTPA (WSCredential) 和 LPTA2 (SingleSignOnToken),并将它们附加到使用的 Web 服务调用。

bp.getRequestContext().put(Constants.REQUEST_TRANSPORT_PROPERTIES,sendTransportHeaders);

其中 bp 是我的 BindingProvider。这一切都应该工作。但是当我调用 webservices 时,我得到了这个异常。

Cause =java.io.IOException: Unable to deserialize the Subjects in this Context

我查看了 LTPA token 中的字段,一切似乎都是正确的( token 和我正在调用的 j2ee 安全领域 Web 服务之间的相同领域, token 是可转发的,等等),我在网上找不到太多关于这个错误的信息,除了(似乎不相关的)尝试将其传递到 EJB 的情况和领域不匹配的情况。

有什么想法吗?谢谢。

最佳答案

你能清楚地说明你想在这里做什么吗?

您应该能够仅通过配置透明地传递 LTPA token ,而不是尝试编写一些代码来实现相同的目的。

Web 应用程序向另一个 WebSphere 服务器发出 Web 服务调用。

快速阅读一下。 http://www.ibm.com/developerworks/websphere/techjournal/0607_desprets/0607_desprets.html

WAS7 中的东西应该与 WAS V6 非常相似。

HTH

芒露

关于java - 在 web 服务调用上传递 LPTA token 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7713145/

相关文章:

php - 如何保护项目免受黑客攻击?

html - 基于源的安全模型是什么意思?

java - 我的应用程序启动后如何加载/初始化我的类?

java - 为什么我没有使用100%?

java - 抽象类和继承者: is it possible to "pull up" .parent()在这里?

java - 在 O(n) 时间内找到数组中的重复元素

.net - guid 的安全性是否值得信任,或者如果可以强制系统生成许多已知的 guid,它们是否可以预测?

java - SAX 解析异常 : The prefix "xsi" for attribute "xsi:schemaLocation" is not bound

Windows 7 上的 Java 7 64 位 : how to switch java versions

GUI中的java温度转换