我正在使用asp.net 4.0应用程序,无法弄清楚如何将WSS-Password类型传递给我的web服务调用。
希望有人能帮帮我。
我正在尝试调用这个Web服务
https://link.hertz.com/AuthenticationWebservice/authenticateAdmin?wsdl
我已经说过,我需要通过以下信息与web服务进行身份验证:
username => "webServiceUserName"
password => "webServicePassword"
WSS-Password Type => "PasswordDigest"
我正在使用asp.net 4.0应用程序,无法弄清楚如何将WSS-Password类型传递给我的web服务调用。
我已经在我的asp.net应用程序中添加了这个服务url作为服务引用,并且我在我的asp.net页面中使用以下代码:
service1.AuthenticateAdminClient myClient = new service1.AuthenticateAdminClient();
myClient.ClientCredentials.UserName.UserName = "webServiceUserName";
wsClient.ClientCredentials.UserName.Password = "webServicePassword";
myClient.authenticateAdminCredentials(myUserName, myPassword, myDomain);
提前致谢
哈里
我们使用了这个例子,它为我们工作。我们只是在SecurityHeader:
中更改了"泛型" if (PasswordType == PasswordType.Digest)
{
writer.WriteAttributeString("Type", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest");
writer.WriteString(ComputePasswordDigest(SystemPassword, nonce, created));
}
else if (PasswordType == PasswordType.Text)
{
writer.WriteAttributeString("Type", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText");
writer.WriteString(SystemPassword);
}