Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

SymmetricSecurityBindingElement::MessageProtectionOrder Property

 

Gets or sets the order of message encryption and signing for this binding.

Namespace:   System.ServiceModel.Channels
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

public:
property MessageProtectionOrder MessageProtectionOrder {
	MessageProtectionOrder get();
	void set(MessageProtectionOrder value);
}

Property Value

Type: System.ServiceModel.Security::MessageProtectionOrder

The MessageProtectionOrder that specifies how the message is protected. The default is SignBeforeEncrypt.

Exception Condition
ArgumentOutOfRangeException

set and value is undefined.

System_CAPS_noteNote

If there is nothing in the message that is encrypted, the signature element is not encrypted even when the MessageProtectionOrder property is set to SignBeforeEncryptAndEncryptSignature. This behavior occurs even with system-provided bindings. However, the WSDL generated by WCF still contains the <sp:EncryptSignature> assertion.

For a listing of the members and their descriptions, see MessageProtectionOrder.

The following code shows how to set this property.

// Create a SymmetricSecurityBindingElement.
SymmetricSecurityBindingElement ssbe = 
    new SymmetricSecurityBindingElement();

// Set the algorithm suite to one that uses 128-bit keys.
ssbe.DefaultAlgorithmSuite = SecurityAlgorithmSuite.Basic128;

   // Set MessageProtectionOrder to SignBeforeEncrypt.
ssbe.MessageProtectionOrder = MessageProtectionOrder.SignBeforeEncrypt;

.NET Framework
Available since 3.0
Return to top
Show:
© 2017 Microsoft