D
Darlan Jr.
Hello,
I´m working on a Infopath Form which consumes an WCF Service. And I´ve
already configured a BasicHttpBinding on my WCF Service.
And until here, it works great!
The deal starts when I add the security configuration in the
BasicHttpBinding. After that, every time I try to create a Infopath Data
Connection to the WCF Service it shows me a Credential Prompt that always
comes back, no matter if I used the Domain Admin Credential.
In a few words, I can´t create a Infopath Data Connection to a WCF Service
which requires user authentication.
And there is another issue annoying me: If I create a basic Windows Forms
Application which consumes the same WCF Service through the same
BasicHttpBinding, it works fine.
If you wanna know, my WCF Service is hosted in IIS and here follows the
Web.config file:
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBinding_IContent">
<security mode="TransportCredentialOnly" >
<transport clientCredentialType="Ntlm"/>
</security>
</binding>
<binding name="BasicHttpBinding_IContentMT">
<security mode="TransportCredentialOnly" >
<transport clientCredentialType="Ntlm"/>
</security>
</binding>
</basicHttpBinding>
<wsHttpBinding>
<binding name="WSHttpBinding_IContent">
<security mode="Transport">
<transport clientCredentialType="Ntlm"/>
</security>
</binding>
<binding name="WSHttpBinding_IContentMT">
<security mode="Transport">
<transport clientCredentialType="Ntlm"/>
</security>
</binding>
</wsHttpBinding>
</bindings>
<services>
<service
behaviorConfiguration="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.ContentBehavior"
name="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.ContentAbstractor">
<endpoint address="" binding="wsHttpBinding"
contract="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.IContent">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="asmx" binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_IContent"
name="BasicHttpBinding_IContent"
contract="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.IContent" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8080/IContent/" />
</baseAddresses>
</host>
</service>
<service
behaviorConfiguration="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.ContentMTBehavior"
name="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.MultiTenantAbstractor">
<clear />
<endpoint address="" binding="wsHttpBinding"
contract="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.IContentMT">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="asmx" binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_IContentMT"
name="BasicHttpBinding_IContentMT"
contract="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.IContentMT"
/>
<host>
<baseAddresses>
<add baseAddress="http://localhost:8080/IContentMT/" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior
name="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.ContentBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
<behavior
name="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.ContentMTBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
I´m working on a Infopath Form which consumes an WCF Service. And I´ve
already configured a BasicHttpBinding on my WCF Service.
And until here, it works great!
The deal starts when I add the security configuration in the
BasicHttpBinding. After that, every time I try to create a Infopath Data
Connection to the WCF Service it shows me a Credential Prompt that always
comes back, no matter if I used the Domain Admin Credential.
In a few words, I can´t create a Infopath Data Connection to a WCF Service
which requires user authentication.
And there is another issue annoying me: If I create a basic Windows Forms
Application which consumes the same WCF Service through the same
BasicHttpBinding, it works fine.
If you wanna know, my WCF Service is hosted in IIS and here follows the
Web.config file:
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBinding_IContent">
<security mode="TransportCredentialOnly" >
<transport clientCredentialType="Ntlm"/>
</security>
</binding>
<binding name="BasicHttpBinding_IContentMT">
<security mode="TransportCredentialOnly" >
<transport clientCredentialType="Ntlm"/>
</security>
</binding>
</basicHttpBinding>
<wsHttpBinding>
<binding name="WSHttpBinding_IContent">
<security mode="Transport">
<transport clientCredentialType="Ntlm"/>
</security>
</binding>
<binding name="WSHttpBinding_IContentMT">
<security mode="Transport">
<transport clientCredentialType="Ntlm"/>
</security>
</binding>
</wsHttpBinding>
</bindings>
<services>
<service
behaviorConfiguration="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.ContentBehavior"
name="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.ContentAbstractor">
<endpoint address="" binding="wsHttpBinding"
contract="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.IContent">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="asmx" binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_IContent"
name="BasicHttpBinding_IContent"
contract="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.IContent" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8080/IContent/" />
</baseAddresses>
</host>
</service>
<service
behaviorConfiguration="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.ContentMTBehavior"
name="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.MultiTenantAbstractor">
<clear />
<endpoint address="" binding="wsHttpBinding"
contract="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.IContentMT">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="asmx" binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_IContentMT"
name="BasicHttpBinding_IContentMT"
contract="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.IContentMT"
/>
<host>
<baseAddresses>
<add baseAddress="http://localhost:8080/IContentMT/" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior
name="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.ContentBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
<behavior
name="PlatTec.Compl.Portal.ContentServices.ContentAbstractor.ContentMTBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>