Universal Messaging 10.3 | Administration Guide | Universal Messaging Administration API | Security | Queue Access Control List
 
Queue Access Control List
When you have connected to a realm, and have a reference to an nRealmNode object (see nRealmNode), and an nLeafNode (see nLeafNode (Channels and Queues)) that corresponds to a queue, you can access the node's ACL object. This object contains a list of nChannelACLEntry objects that represent a subject and a set permissions for various operations on a queue.
You can also, add, delete and modify acl entry objects. To obtain the queue ACL object, simply call the following method from a realm node:
Java, C#:
nLeafNode queue = realm.findNode("/eur/uk/orders");
nACL acl = queue.getACLs();
C++:
nLeafNode* queue = realm->findNode("/eur/uk/orders");
nACL* acl = queue->getACLs();
Once you have the acl object, you can then add, remove or modify acl entries:
nChannelACLEntry
To find a specific ACL entry from the queue ACL, you can search the ACL using the subject. For example, if I wished to change the default permissions for the *@* subject (i.e. the default permission for the queue), I could use the following code:
Java, C#:
nChannelACLEntry entry = acl.find("Everyone");
entry.setFullPrivileges(false):
acl.replace(entry);
queue.setACLs(acl);
C++:
nChannelACLEntry* entry = acl.find("Everyone");
entry->setFullPrivileges(false):
acl->replace(entry);
queue->setACLs(acl);
which would set the full privileges flag to false for the default subject.
Click here to see example of how to add queue ACLs programmatically or to see example of modifying ACLs using the enterprise manager.
For more information on Universal Messaging Administration, please see the API documentation, and the Enterprise Manager Guide.