I need to access the SharePoint user profile service.
SharePoint quite nicely exposes: http://{Server}/_vti_bin/userprofileservice.asmx
It is authenticated, quite rightly so, however the user I am
accessing it with has permissions, however it still asks for username and
password.
accessing it with has permissions, however it still asks for username and
password.
I was getting this error:
The adapter failed to transmit message going to send port
“WcfSendPort_UserProfileServiceSoapOneWay” with URL
“http://{Server}/_vti_bin/userprofileservice.asmx”. It will be retransmitted
after the retry interval specified for this Send Port.
Details:”System.ServiceModel.FaultException: <soap:Envelope
xmlns:soap=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xmlns:xsd=”http://www.w3.org/2001/XMLSchema”><soap:Body><soap:Fault><faultcode>soap:Server</faultcode><faultstring>Server
was unable to process request. —>
System.ServiceModel.EndpointNotFoundException</faultstring><detail
/></soap:Fault></soap:Body></soap:Envelope>
“WcfSendPort_UserProfileServiceSoapOneWay” with URL
“http://{Server}/_vti_bin/userprofileservice.asmx”. It will be retransmitted
after the retry interval specified for this Send Port.
Details:”System.ServiceModel.FaultException: <soap:Envelope
xmlns:soap=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xmlns:xsd=”http://www.w3.org/2001/XMLSchema”><soap:Body><soap:Fault><faultcode>soap:Server</faultcode><faultstring>Server
was unable to process request. —>
System.ServiceModel.EndpointNotFoundException</faultstring><detail
/></soap:Fault></soap:Body></soap:Envelope>
Server was unable to process request. System.ServiceModel.EndpointNotFoundException
Not much help to me
After some searching I found I needed to use impersonation.
The main reason was from .net I can simply do:
WSService.Credentials = System.Net.CredentialCache.DefaultCredentials;
Now the current user is impersonated and if they have
permissions it works. GREAT.
permissions it works. GREAT.
I’m in BizTalk, and I’m on the WCF port
The port is using wcf-basichttp as the protocol, and it
should be able to just I have no idea how.
should be able to just I have no idea how.
Well the solution I found is rather simple.
Use a wcf-custom port.
Setup the basic-httpbinding.
First of all set the transport to client credential type
ntlm
ntlm
Then flip over to Behavior
It will be blank. Right
click end point behavior:
click end point behavior:
Select add extension.
Add client credentials and configure like so:
After doing this my error went away.