未提供用户名.在ClientCredentials中指定用户名

use*_*540 7 c# asp.net wcf web-services c#-4.0

我创建一个带有客户端凭据的WCF应用程序.它在内部正常工作,而我从其他项目调用和调用此服务意味着我收到了错误消息.

The username is not provided. Specify username in ClientCredentials.
Run Code Online (Sandbox Code Playgroud)

请帮我解决这个问题.

<bindings>
  <wsHttpBinding>
 <binding name="WSHttpBinding_IWcfService" closeTimeout="00:01:00"
                openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
                bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard"
                maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
                messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true"
                allowCookies="false">
                <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
                    maxBytesPerRead="4096" maxNameTableCharCount="16384" />
                <reliableSession ordered="true" inactivityTimeout="00:10:00"
                    enabled="false" />
                <security mode="TransportWithMessageCredential">
                    <transport clientCredentialType="None" proxyCredentialType="None"
                        realm="" />
                    <message clientCredentialType="UserName" negotiateServiceCredential="true"
                        algorithmSuite="Default" />
                </security>
            </binding>
  </wsHttpBinding>
</bindings>
<client>
 <endpoint address="https://wcfauthtest.sbs.in:448/WcfService.svc/WcfService.svc"
                binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_IWcfService"
                contract="AuthTest.IWcfService" name="WSHttpBinding_IWcfService">
                <identity>
                    <dns value="localhost" />
                </identity>
 </endpoint>
</client>
Run Code Online (Sandbox Code Playgroud)

有帮助吗?

Sea*_*y84 5

您是否在客户端/消费者端指定了凭证:

WcfService.UserName.UserName = "user";
WcfService.UserName.Password = "pass";
Run Code Online (Sandbox Code Playgroud)

在对代码中的WCF服务进行任何调用之前,应提供这些凭据。