问题标签 [rampart]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
19283 浏览

eclipse - 请求中缺少 wsse:Security 标头

我尝试使用本教程 第 19-22 页向我的轴 2 项目添加壁垒安全性

所以一切看起来都很好,但是当我切换到soapUI视角来尝试测试服务时,我提出的请求是:

它给了我一个回应:

所以我添加了安全头,我的请求和教程中写的一样

但反应是一样的

0 投票
1 回答
2400 浏览

eclipse - NullPointerException 在我的轴 2 Web 服务客户端中具有壁垒安全性

我在 Eclipse 中创建了带有壁垒 ws 安全性的 axs 2 Web 服务(这是我遵循的 教程 TUTORIAL PAGE - 18-21

我通过添加此代码和参与 RAMPART MODULE 在 service.xml 中应用了该策略

然后我创建 Web 服务客户端 - 这是代码

但它给了我一个例外

0 投票
1 回答
673 浏览

axis2 - 线程“main”java.lang.ArrayIndexOutOfBoundsException: 1 当我运行我的 Web 服务客户端时出现异常

我创建了一个名为“testUpdate”的动态 Web 项目(当然我不会忘记将动态 Web 模块版本更改为 2.5,并且在配置中我选择了 Axis 2 Web 服务

  1. 我将这两个类添加到我的动态网络项目中:

SimpleService .java 和 PWCBHandler.java

  1. 我右键单击 SimpleService.java -> 新建 -> 其他 -> Web 服务来创建我的 Web 服务

  2. 我不会忘记将所有 jar 文件从壁垒分布复制到 testUpdate/WebContent/WEB_INF/lib 和所有 .mar 模块到 testUpdate/WebContent/WEB_INF/modules

  3. 我更改了 services.xml 文件,所以它看起来像

    /li>
  4. 我右键单击 testUpdate -> RUN AS _> 在服务器上运行(并且我的 Web 服务部署成功)

  5. 文件 -> 新建 -> 其他 -> Web 服务客户端

并在服务定义中粘贴 SimpleService 的 wsdl 文件的 url

( http://localhost:9091/testUpdate/services/SimpleService?wsdl)

  1. 我将 testcl.java 类添加到我的 Web 服务客户端。这是代码

    /li>
  2. 我不要忘记更改 webSercice_client/WebContent/axis2-web/conf/axis2.xml 并添加

    /li>
  3. 但是当我将 testCl 作为 Java Application 运行时,它给了我一个异常

    用法:$java Client endpoint_address client_repo_path 线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException: 1 at com.gismo.testcl.main(testcl.java:24)

0 投票
0 回答
4654 浏览

java - 线程“主”org.apache.axis2.AxisFault 中的异常:1

我尝试使用具有壁垒安全性的轴 2 Web 服务。
我被这个问题困扰了三天,但知道我得到了这个例外:


这是我的 PWCBhanler,.java

这是我的 service.xml

<


在我的客户端 policy.xml 中,与来自servoces.xml 的策略的唯一区别是我添加了 <ramp:user>bob</ramp:user>

这是我的client.java


!!!请注意我的 prvicy.xml 我更改了

我得到了例外:回调处理程序没有为用户提供密码:mari

所以看来我的客户端代码正在阅读 policy.xml

0 投票
1 回答
629 浏览

axis2 - 了解壁垒引擎的工作原理

我知道 Apache Rampart 配置允许提供密码回调处理程序类,可用于提供 Rampart 引擎构建用户名令牌和在发送消息时创建签名所需的密码。它写道,每当 Rampart Engine 需要密码来创建用户名令牌时,它将创建一个 WSPasswordCallback 实例,设置它从 Rampart 配置的参数中提取的适当标识符,并通过 handle 方法将其传递给密码回调类。但正如你所见,我使用了基于策略的配置!

所以我有几个问题想看看我是否理解了所有这些:

  1. 我是从这里壁垒引擎提取适当的用户名的地方吗?wsse:Username>bob</wsse:Username>'+

  2. 在它提取它之后,它通过句柄方法将它传递给我们的 PWCBHandler 类。如果用户名正确,我们的 handle 方法会设置适当的密码。

  3. 最重要的是——因为我必须在最后通过 javascript 使用我的 web 服务,所以我提供了我的 soap 请求。但是正如您所看到的,我同时提供了用户名和密码,但我看不到安全性在哪里,因为每个人都可以看到我的用户名和密码。这是正确的吗。我怎样才能使它更安全。

这是我的代码。


  1. 这是我的 PassWordCallback.java 类的代码

    ublic void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException { for (int i = 0; i < callbacks.length; i++) {

    /li>

这是我来自javascript的soaprequest

0 投票
1 回答
1821 浏览

web-services - java.lang.NoSuchMethodError: org.apache.ws.security.WSSConfig.setHandleCustomPasswordTypes(Z)VI am

我收到以下错误。我正在使用 WSS4j1.5.8,即 Rampart 1.5 和 AXIS2-1.4:

java.lang.NoSuchMethodError: org.apache.ws.security.WSSConfig.setHandleCustomPasswordTypes(Z)V

当我使用 Rampart 1.4 即 wss4j 1.5.7 和 AXIS2 1.4 时,它给了我以下错误:

java.lang.NoSuchMethodError: org.apache.ws.security.WSSecurityEngineResult.get(Ljava/lang/Object;)Ljava/lang/Object;

这里至少调用 PasswordCallbackHandler 类但给出了上述错误。

0 投票
2 回答
4486 浏览

axis2 - 客户端在调用安全 Web 服务时出错

我编写了一个调用 web 服务的客户端。我的客户是:

我在回调处理程序中的处理方法是:

现在的问题是当我通过我的客户端代码调用这个代理服务时,我得到了异常

但同样的代码也适用于用 eclipse 编写的另一个 Web 服务。我究竟做错了什么?期待您的回答。提前致谢

0 投票
3 回答
9370 浏览

java - 使用带有 JKS 和二进制安全令牌密钥标识符的 Apache Rampart 进行签名

我必须调用客户提供的 Web 服务(出于这个原因,下面的一些信息被屏蔽了)。我已经获得了一个 java 密钥库,其中包含我需要用来生成签名以包含在我的请求的 WSSecurity 标头中的私钥。

此外,我收到了一个有效的 SoapUI 项目,该项目使用适当的安全配置实现了此服务。soapUI 中的传出安全配置将“密钥标识符类型”设置为“二进制安全令牌”

我正在尝试使用 Apache Rampart 在我的 Java 应用程序中设置此调用。我注意到 OutflowSecurity 配置中没有等效于“二进制安全令牌”的密钥标识符,所以我正在尝试以下操作。这是我的axis2.xml文件中的相关片段:

这是我的 crypto.properties 文件的内容:

问题是,当我尝试使用此配置执行服务时,出现以下错误:

我已经尝试了所有不同的 signatureKeyIdentifiers 选项,但没有任何运气。谁能帮我弄清楚从这里去哪里调试这个问题?

谢谢!

0 投票
2 回答
8788 浏览

java - Axis2:无法接合 Rampart 模块

尝试在 Axis2 中使用 Rampart 实现 WS-Security 时出现以下错误。

我在嵌入式模式下使用轴(在我的耳朵里)。没有安全实施,服务工作正常。我已在 services.xml 和 WSDL 中包含该策略。使用 Jboss 和 JDK6 请在下面找到文件。

Axis2.xml

服务.XML

客户存根

0 投票
1 回答
824 浏览

axis2 - java.lang.NullPointerException 当我从数据库中提取壁垒引擎的密码时

我尝试使用应该从数据库中提取的壁垒和纯文本密码将壁垒安全性添加到我的轴 2 Web 服务

我做了什么

1.我已经在数据库中存储了“bobPW”密码的哈希值和盐

在我的 PWCBHandler.java 类中

•我得到存储在密码和盐 •我用存储的盐散列pwcb.getPassword() •检查这个散列密码是否等于存储的密码

但是我在这些行中得到空点异常

但真正让我抓狂的问题是,我确定我从数据库中提取了密码和盐,因为我已经在 java 应用程序中测试了 getdataforchecking 并且一切都很好


代码

p

这是完整的堆栈跟踪