SYSK 393: Error: Cannot obtain Metadata (RESOLVED)

Not all error messages are created equal, and some of them are less helpful than others.  Here is one I came across —  “Metadata contains a reference that cannot be resolved…  An exception was thrown in a call to a WSDL export extension:System.ServiceModel.Description.DataContractSerializerOperationBehavior contract…  Type ‘YourNamespace.YourClass’ cannot be serialized. Consider marking it with the DataContractAttribute…

0

SYSK 389: How to set ClientCredentials via Configuration file in Client

I’m working on a project where a service hosted elsewhere requires Windows authentication.  As a consultant, my computer is not on the customer’s domain, so, using my logged-on Windows credentials won’t do any good.  And, doing nothing results in the following exception:  “The caller was not authenticated by the service.” and inner exception is “The…

0

SYSK 388: Differences between basicHttpBinding and wsHttpBinding

Doing a web search for a difference between basicHttpBinding and wsHttpBinding, I find just generic references to basicHttpBinding being a basic implementation of SOAP1.1, and wsHttpBinding supporting all the WS-* spec. So, I did a side by side comparison using Microsoft Service Configuration Editor – differences (in available settings and defaults) are indicated by red…

1

SYSK 374: Role Based Authorization for WCF Services through Configuration Files

Traditionally, to implement role based authorization in .NET you would use PrincipalPermission attributes, e.g.:   [PrincipalPermission(SecurityAction.Demand, Name = “YourDomain\\User1”, Role = “YourDomain\\Role1”)] public void MethodX(…) {     . . . }   In my opinion, there are two problems with this approach:   1.    At development time you need to make a decision on which…

1

SYSK 373: How to Impersonate the Original Caller When Calling the WCF Service in ASP.NET by Configuration Only

If your WCF services use role based authorization, and you need to pass the identity of the end user (original caller), you have a few options:   1.    Use <identity impersonate=”true” /> in web.config   This is not my preference since there is quite a bit of overhead with doing security context switching for every…

0