Java,使用用户名和密码访问安全的 WSO2 网络服务
Java, access secure WSO2 web service with Username and Password
我有一个 Maven 项目,并且已成功连接到使用 WSO2 创建的不安全 Web 服务。启用安全性后,如何通过凭据(即用户名和密码)连接到服务?
首先,我可以通过在 Java 代码本身中引入用户名和密码来快速完成吗?
我是否必须像我在几篇文章中看到的那样生成证书,或者是否有任何其他方法可以完成此操作?
我的 pom.xml
有以下条目
<execution>
<id>getTestService</id>
<goals>
<goal>wsdl2code</goal>
</goals>
<configuration>
<unpackClasses>true</unpackClasses>
<databindingName>xmlbeans</databindingName>
<packageName>com.test.esb</packageName>
<wsdlFile>http://test:8080/services/getTestService?wsdl</wsdlFile>
<syncMode>sync</syncMode>
</configuration>
</execution>
在我的 Java class 中,我使用以下代码调用该服务。
final TestServiceStub testStub = new TestServiceStub();
final TestServiceDocument testDoc =
TestServiceDocument.Factory.newInstance();
final TestService testReq = TestService.Factory.newInstance();
...
testDoc.setTestService(testReq);
testStub.TestService(testDoc);
不确定这是否涵盖您的情况,但是 this 博客 post 详细说明了如何访问 Java 中的用户名令牌安全服务。您需要在信任库中拥有服务器证书,并且需要向存根提供用户名和密码。
我有一个 Maven 项目,并且已成功连接到使用 WSO2 创建的不安全 Web 服务。启用安全性后,如何通过凭据(即用户名和密码)连接到服务?
首先,我可以通过在 Java 代码本身中引入用户名和密码来快速完成吗?
我是否必须像我在几篇文章中看到的那样生成证书,或者是否有任何其他方法可以完成此操作?
我的 pom.xml
有以下条目
<execution>
<id>getTestService</id>
<goals>
<goal>wsdl2code</goal>
</goals>
<configuration>
<unpackClasses>true</unpackClasses>
<databindingName>xmlbeans</databindingName>
<packageName>com.test.esb</packageName>
<wsdlFile>http://test:8080/services/getTestService?wsdl</wsdlFile>
<syncMode>sync</syncMode>
</configuration>
</execution>
在我的 Java class 中,我使用以下代码调用该服务。
final TestServiceStub testStub = new TestServiceStub();
final TestServiceDocument testDoc =
TestServiceDocument.Factory.newInstance();
final TestService testReq = TestService.Factory.newInstance();
...
testDoc.setTestService(testReq);
testStub.TestService(testDoc);
不确定这是否涵盖您的情况,但是 this 博客 post 详细说明了如何访问 Java 中的用户名令牌安全服务。您需要在信任库中拥有服务器证书,并且需要向存根提供用户名和密码。