Question

I have a client that wants to invoke a web service. I have a web service(asmx) , a default.aspx that can show the claims . I have a test STS that my web service trusts. I tested and sts can send correct claims and also web service seems to get them if I go through default.aspx page that shows the claims. I created a proxy(using Visual Studio "add service reference") for client to call the web service. I could not find a way about how to call web service from client programatically so that it will authenticate through my STS. I am calling like below but sts returns the claims response to client where it should return to web service and invoke the web service function.

MyClient =  MyWebServiceSoapClient("MyWebServiceSoap", "http://127.0.0.1:81/MyService.asmx?whr=http%3a%2f%2flocalhost%3a25919%2fteststs%2fdefault.aspx%3fwa%3dwsignin1.0%26wtrealm%3dhttp%3a%2f%2f127.0.0.1%3a81%2fmyservice.asmx");
MyClient.MyServiceFunction();
Was it helpful?

Solution

I wrote a C# library that enables you to get a SAML token from a 3rd party STS and subsequently ADFS to eventually authenticate to SharePoint. It may be of some help:

http://www.huggill.com/2012/02/04/claims-proxy-a-c-sharp-library-for-calling-claims-protected-web-services/

OTHER TIPS

Check samples in the Identity Training Kit or the "A Guide to Claims based Identity" for examples.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top