我已经使用 HTTPS开发UserNamePasswordValidator
了一个自定义的 WCF 服务。basicHttpBinding
它适用于 .Net 客户端,使用 ClientCredentials 发送用户名和密码以进行身份验证。
但是,我需要从 Delphi XE 客户端调用它。如何使用 Delphi 发送等效的 .Net ClientCredentials?那可能吗?如果是,怎么做?如果不是,是否有替代方案?
Tks
编辑
以下是我在 .Net 中的客户端代码:
EndpointAddress oTransac = new EndpointAddress(GetAddress());
using (WebServiceClient oClient = new WebServiceClient ("httpbasic", oTransac))
{
oClient.ClientCredentials.UserName.UserName = "username";
oClient.ClientCredentials.UserName.Password = "password";
oClient.DoStuff();
}
编辑
我一直在做一些研究,我已经能够使用 SOAP Hearders 在 Delphi 和旧的 asmx Web 服务之间进行身份验证。我找到了下面的文章。我能否[WebMethod] [System.Web.Services.Protocols.SoapHeader("SoapHeader")]
使用文章的技术实现与旧版本相同的行为?
编辑赏金
得到标记为赏金的正确答案,我希望能够使用UserNamePasswordValidator
服务器端的 WCF 服务从 Delphi 调用 Web 服务。