Welcome to MSDN Blogs Sign in | Join | Help

October 2007 - Posts

Checking for ServiceSecurityContext

When authorizing a client, how do I tell the difference between a connection with anonymous security and a connection with no security? Anonymous security turns out to offer a surprising amount of protection even though you have no idea who the caller

Better Proxy Clients

I was in a meeting last week with a few WCF users at Microsoft when they asked about performance issues creating client proxies. The first service pack for WCF, which ships at the same time as Orcas, includes some performance fixes for the most frequently
Posted by Nicholas Allen | 0 Comments
Filed under: ,

Videos from MIX UK

Session videos from the UK version of the 2007 MIX conference are now available for download. Go to the session schedule page for the conference and choose to either watch or download videos for the sessions that are available. It looks like about two-thirds
Posted by Nicholas Allen | 0 Comments
Filed under:

Substituting for TryAccept

We're back to the channel pump for another round. In the previous channel pump article we had introduced an asynchronous coroutine between the main channel pump loop and a callback on acquiring a channel throttle. This use of coroutines let us suspend
Posted by Nicholas Allen | 1 Comments
Filed under: ,

No Session Before Sending

When you create a sessionful channel, that implies the existence of some correlation factor for all of the messages that are associated with the session. For example, the correlation factor for a TCP session is that all of the messages travel over the

When Certificates are Required

I'm trying to use a username and password with message security but I'm being told that I need to have a certificate on the client or the server depending on the configuration. Is it possible to send username credentials without issuing a certificate?

Extensibility

One of the frequently repeated phrases around SOA development is that SOA allows you to build composite applications that span heterogeneous environments. It's tough to put a perspective on how heterogeneous an environment can be until you look at surveys
Posted by Nicholas Allen | 1 Comments
Filed under:

SOA & Business Process Conference Next Week

Microsoft is hosting a conference on SOA and Business Processes here in Redmond next week running from October 29th to November 2nd. It looks like the final agenda is now available at the conference website for those of you that are attending and want
Posted by Nicholas Allen | 2 Comments
Filed under:

Best Practice for Channel Shapes

The hierarchy of channels derives from the single interface IChannel. By itself, IChannel is not particularly interesting because it doesn't introduce any new methods for communication. Each channel shape, such as IInputChannel or IDuplexSessionChannel,

Controlling HTTP Caching

Is HttpResponse.Cache the preferred way to control caching? HttpResponse is only available in ASP.NET compatibility mode. No, you don't need ASP.NET compatibility mode to set cache headers. In fact, almost everything from HttpResponse can be done by attaching
Posted by Nicholas Allen | 3 Comments
Filed under: , ,

Body is a Stream

I've answered this question before but it continues to keep being asked so I'll answer it again. This comes up most often when someone is trying to log messages, either through the official message logging feature or on their own by calling ToString.
Posted by Nicholas Allen | 5 Comments
Filed under: , ,

Shutting Down a Channel

A common corner-case in programming is what happens when multiple operations are attempted at the same time. One way to avoid the troubles of this corner-case is to simply prohibit having multiple operations occur simultaneously. However, it typically

Configuring SSL Certificates for Windows Vista

The documentation for configuring a port with an SSL certificate shows example commands using the httpcfg.exe program. Starting with Windows Vista, httpcfg.exe was replaced in function by the netsh program that comes with the operating system. This is

Two Videos on Orcas

With all the things that were happening during the summer, I evidently missed out on two Channel 9 videos that were done on the Orcas version of WCF. These cover some of the features that are new in the upcoming .Net Framework 3.5 release. In the first

AtomPub RFC Released

There's a newly minted RFC 5023 out this week covering the Atom Publishing Protocol. AtomPub is an application protocol for drafting and publishing a collection of documents over HTTP. It comes almost two years after the related Atom XML syndication format
Posted by Nicholas Allen | 0 Comments
Filed under:

ContractNamespaceAttribute

Back when I did an overview of custom namespaces , I omitted any namespace declarations that wouldn't appear in the final metadata. One of those declarations is the default namespace for data contracts. I had two example data contracts, one for faults

Unblocking Flow Throttles

Last time, we were looking at how to control flow through a channel pump by introducing the concept of a throttle. The implementation of the throttle was a semaphore, allowing us to limit the number of channels active in the system at any point in time.
Posted by Nicholas Allen | 3 Comments
Filed under: ,

Flow Throttles

When programming using channels, the common usage pattern for the server is to sit in a loop accepting channels. This loop, sometimes called a pump, cycles through each time accepting a channel and initiating some work. Let's look at the most basic channel
Posted by Nicholas Allen | 2 Comments
Filed under: ,

Server.MapPath

How do I use % Feature X% from ASP.NET in a WCF service? ASP.NET has an HTTP-centric application model with many great features specialized for web development in IIS. WCF is transport and host agnostic. Out of the box, WCF supports most of the features
Posted by Nicholas Allen | 8 Comments
Filed under: , , ,

Stripping Out Extra Endpoints

I want my service to have a set of endpoints that are conditionally enabled. Is it possible to put all of the endpoint definitions in a single configuration file rather than changing configuration depending on the conditions? Due to the design of configuration,

SOAP Extensions

What replacement in WCF should I be using for an ASP.NET SoapExtension? A SOAP extension is an extensibility point in ASMX that allows processing of SOAP messages during sending and receiving. WCF has many extensibility points for processing messages

Always Begin with Accept

Inside a service, there's a fundamental loop running whose job it is to create channels for the incoming connections to the service. There's another loop that runs later, which you may argue is equally fundamental, that reads messages from each channel

Help for Policy Authors

The W3C Web Services Policy Working Group is putting together a pair of documents to help policy users and authors with the new version of WS-Policy. This includes an explanation of how policy works and best practices for policy authors. There's currently
 
Page view tracker