This topic has not yet been rated - Rate this topic

MessageQueue.EncryptionRequired Property

Gets or sets a value that indicates whether the queue accepts only non-private (non-encrypted) messages.

Namespace:  System.Messaging
Assembly:  System.Messaging (in System.Messaging.dll)
[MessagingDescriptionAttribute("MQ_EncryptionRequired")]
public EncryptionRequired EncryptionRequired { get; set; }

Property Value

Type: System.Messaging.EncryptionRequired
One of the EncryptionRequired values. The default is None.
Exception Condition
MessageQueueException

An error occurred when accessing a Message Queuing method.

When you specify that encryption is required for the messages sent to a queue, only the message bodies are encrypted. The other members (for example, the Label and SenderId properties) cannot be encrypted.

Setting this property modifies the Message Queuing queue. Therefore, any other MessageQueue instances are affected by the change.

Encrypting a message makes the message private. You can specify the queue's encryption requirement to be None, Body, or Optional by setting the EncryptionRequired property appropriately. The UseEncryption setting of the message must correspond to the encryption requirement of the queue. If the message is not encrypted but the queue specifies Body, or if the message is encrypted but the queue specifies None, the message is rejected by the queue. If the sending application requests a negative acknowledgment message in this event, Message Queuing indicates the message's rejection to the sending application. If the UseDeadLetterQueue property is true, a message that fails encryption is sent to the dead-letter queue. Otherwise, the message is lost.

The following table shows whether this property is available in various Workgroup modes.

Workgroup mode

Available

Local computer

Yes

Local computer and direct format name

Yes

Remote computer

No

Remote computer and direct format name

No

The following code example gets and sets the value of a message queue's EncryptionRequired property.


// Set the queue's EncryptionRequired property value.
queue.EncryptionRequired = System.Messaging.EncryptionRequired.Optional;

// Display the new value of the queue's EncryptionRequired property.
Console.WriteLine("MessageQueue.EncryptionRequired: {0}",
    queue.EncryptionRequired);


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ