我们正在整合的供应商提供了一些Web服务功能......他们用Java开发了它,并且给了我们一个示例客户端项目(在Java中)显示这些Web服务的消费。我们实际上想要用.NET来实现Web服务的消费/接口,但我们无法弄清楚安全性应该如何工作。从.NET调用Java WS - Java方式使用Apache Rampart,.NET等效
在他们的Java客户端示例中,它们似乎使用了一种名为“Apache Rampart”的东西。他们的代码中,看起来像这样:
public static void initSecurityPolicy(ServiceClient client) throws Exception
{
Options options = client.getOptions();
options.setProperty(RampartMessageData.KEY_RAMPART_POLICY,
loadPolicy("policy.xml"));
options.setUserName(USERID);
options.setPassword(PASSWD);
options.setTimeOutInMilliSeconds(READTIMEOUT);
client.engageModule("rampart");
}
有人能帮助我什么,我应该寻找,在.NET环境,要做到这相当于?目前,在我的.NET项目中,我可以很好地使用他们的WSDL,并且它生成的代理对象非常好,但是如果我尝试运行/调用任何函数,它会告诉我“缺少SOAP头”,并且我相信这是安全 - 有关。
他们还为我提供了policy.xml文件。我是一名初学.NET程序员,我通常依靠VStudio生成的代理来处理任何与WS相关的编程,所以我不确定如何处理该policy.xml文件,也不知道他们做了什么在.NET世界的上面的代码中。