O'Reilly logo

Programming WCF Services, 3rd Edition by Juval Lowy

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Transfer Security

The next crucial aspect of security is how to transfer the message through the service bus to the service securely. The service bus refers to transfer security as end-to-end security. On top of message transfer, an important design consideration is which client credentials (if any at all) the message should contain. Transfer security is independent of how the client and the service authenticate themselves against the service bus.

The service bus offers four options for transfer security, represented by the enum EndToEndSecurityMode, defined as:

public enum EndToEndSecurityMode
{
   None,
   Transport,
   Message,
   TransportWithMessageCredential //Mixed
}

The four options are None, Transport, Message, and Mixed. None means just that—the message is not secured at all. Transport uses either SSL or HTTPS to secure the message transfer. Message security encrypts the body of the message so it can be sent over non-secured transports. Mixed uses Message security to contain the client’s credentials, but transfers the message over a secured transport.

You configure transfer security in the binding. While the relay bindings all default to Transport security, all the relay bindings offer at least one constructor that takes EndToEndSecurityMode as a construction parameter. You can also configure transfer security post construction by accessing the Security property and its Mode property, such as in the following example of a TCP relay binding:

public class NetTcpRelayBinding : NetTcpRelayBindingBase ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required