2.2.24 MQQUEUEACCESSMASK

The MQQUEUEACCESSMASK bitfield enumeration values can be used to set the value of an ACCESS_MASK structure ([MS-DTYP] section 2.4.3), which is used to constrain the permissions for a Queue.

 typedef  enum 
 {
   MQSEC_DELETE_MESSAGE = 0x00000001,
   MQSEC_PEEK_MESSAGE = 0x00000002,
   MQSEC_WRITE_MESSAGE = 0x00000004,
   MQSEC_DELETE_JOURNAL_MESSAGE = 0x00000008,
   MQSEC_SET_QUEUE_PROPERTIES = 0x00000010,
   MQSEC_GET_QUEUE_PROPERTIES = 0x00000020,
   MQSEC_DELETE_QUEUE = 0x00010000,
   MQSEC_GET_QUEUE_PERMISSIONS = 0x00020000,
   MQSEC_CHANGE_QUEUE_PERMISSIONS = 0x00040000,
   MQSEC_TAKE_QUEUE_OWNERSHIP = 0x00080000,
   MQSEC_RECEIVE_MESSAGE = (MQSEC_DELETE_MESSAGE    | MQSEC_PEEK_MESSAGE),
   MQSEC_RECEIVE_JOURNAL_MESSAGE = (MQSEC_DELETE_JOURNAL_MESSAGE    | MQSEC_PEEK_MESSAGE),
   MQSEC_QUEUE_GENERIC_READ = (MQSEC_GET_QUEUE_PROPERTIES    | MQSEC_GET_QUEUE_PERMISSIONS    | MQSEC_RECEIVE_MESSAGE    | MQSEC_RECEIVE_JOURNAL_MESSAGE),
   MQSEC_QUEUE_GENERIC_WRITE = (MQSEC_GET_QUEUE_PROPERTIES    | MQSEC_GET_QUEUE_PERMISSIONS    | MQSEC_WRITE_MESSAGE),
   MQSEC_QUEUE_GENERIC_ALL = (MQSEC_RECEIVE_MESSAGE    | MQSEC_RECEIVE_JOURNAL_MESSAGE    | MQSEC_WRITE_MESSAGE | MQSEC_SET_QUEUE_PROPERTIES    | MQSEC_GET_QUEUE_PROPERTIES    | MQSEC_DELETE_QUEUE    | MQSEC_GET_QUEUE_PERMISSIONS    | MQSEC_CHANGE_QUEUE_PERMISSIONS    | MQSEC_TAKE_QUEUE_OWNERSHIP)
 } MQQUEUEACCESSMASK;

MQSEC_DELETE_MESSAGE:  Specifies the permission required by a security principal to delete messages from the queue.

MQSEC_PEEK_MESSAGE:  Specifies the permission required by a security principal to peek messages from the queue.

MQSEC_WRITE_MESSAGE:  Specifies the permission required by a security principal to insert messages into the queue.

MQSEC_DELETE_JOURNAL_MESSAGE:  Specifies the permission required by a security principal to delete messages from the queue journal associated with the queue.

MQSEC_SET_QUEUE_PROPERTIES:  Specifies the permission required by a security principal to modify the properties of the queue.

MQSEC_GET_QUEUE_PROPERTIES:  Specifies the permission required by a security principal to read the properties of the queue.

MQSEC_DELETE_QUEUE:  Specifies the permission required by a security principal to delete a queue.

MQSEC_GET_QUEUE_PERMISSIONS:  Specifies the permission required by a security principal to read the permissions for the queue.

MQSEC_CHANGE_QUEUE_PERMISSIONS:  Specifies the permission required by a security principal to modify the permissions for the queue.

MQSEC_TAKE_QUEUE_OWNERSHIP:  Specifies the permission required by a security principal to change the owner for the queue.

MQSEC_RECEIVE_MESSAGE:  Specifies the permission required by a security principal to destructively read a message from the queue.

MQSEC_RECEIVE_JOURNAL_MESSAGE:  Specifies the permission required by a security principal to destructively read a message from the queue journal associated with the queue.

MQSEC_QUEUE_GENERIC_READ:  Specifies the permission required by a security principal to read the queue properties, read the queue permissions, and destructively receive messages from the queue or the associated queue journal.

MQSEC_QUEUE_GENERIC_WRITE:  Specifies the permission required by a security principal to read the queue properties, read the queue permissions, and insert messages into the queue.

MQSEC_QUEUE_GENERIC_ALL:  Specifies the permission required by a security principal to perform all of the operations listed previously.