我有一个在IIS 7中托管的wcf服务。我有一个php soap客户端,我想用它来访问这个服务。它工作正常,没有安全性,但我希望能够将用户名和密码从php客户端传递到wcf服务,并通过我的自定义用户名验证器进行身份验证。我不是一个php开发人员,所以我不知道如何实际向服务发送用户名和密码,并让自定义用户名和密码验证器检索用户名和密码并验证它。这是php客户端的代码:
<?php
header('Content-Type: text/plain');
// Create a new soap client based on the service's metadata (WSDL)
$client = new SoapClient('http://localhost:88/ColorService.svc?wsdl',array);
$obj = array("colorId" => 2405);
$retval = $client->__soapCall('GetColorInfo',array($obj));
?>
这是我的wcf web.config中的basicHttpBinding配置。同样,我不确定这是否正确,以便从php客户端获取用户名/密码到wcf服务。
<basicHttpBinding>
<binding name="Basic">
<security mode="TransportCredentialOnly">
</security>
</binding>
</basicHttpBinding>
注意,如果我把clientCredentialType =“Basic”,IIS希望我启用基本身份验证,但我不希望通过IIS进行身份验证,我希望通过服务进行身份验证,具体由自定义用户名和密码验证程序处理。 / p>