nACL
The nACL object defines a set of nACLEntry objects
that consist of a user subject and a value that corresponds
to the operations permitted for that subject. With an
nACL object, it is possible to added, delete and modify
acl entries for specific subjects.
There are 3 different subclasses of the base nACLEntry
object. These are :
• nRealmACLEntry – defines permissions
for a specific subject on the Nirvana
Realm server itself
• nChannelACLEntry – defines permissions
for a subject on a channel
or queue
• nServiceACLEntry – defines permissions
for a subject on a Nirvana
P2P service
Each type of acl entry has a number of flags that can
be set to true or false in order to specify whether
the subject can or can't perform the operation.
The following flags apply to every ACL.
• Modify – Allows the subject to add/remove
ACL entries
• List – Allows the subject to get a list
of ACL entries
• Full Privileges – Has complete access
to the secured object
Nirvana Realm Server ACL permissions
The Realm Access Control Entry has the following controllable
flags
• Use Admin API – Can use the nAdminAPI
package
• Manage Realm – Can add / remove realms
from this realm
• Manage Joins - Can add/delete channel joins
• Manage P2P Services – Can create/destroy
P2P services
• Manage Channels – Can add/delete channels
on this realm
• Access The Realm – Can actually connect
to this realm
• Override Connection Count – Can bypass
the connection count on the realm
• Configure Realm – Can set run time parameters
on the realm
• Cluster - perform cluster operations, such
as create, delete or modify cluster information
Channel ACL permissions
The Channel Access Control Entry has the following
controllable flags
• Write – Can publish events to this
channel
• Read – Can subscribe for events on this
channel
• Purge – Can delete events on this channel
• Get Last EID – Can get the last event
Id on this channel
• Named - Can the user connect using a named
(durable) subscriber
Queue ACL permissions
The Queue Access Control Entry has the following controllable
flags
• Write – Can push events to this queue
• Read – Can peek the events on this queue
• Purge – Can delete events on this queue
• Pop – Can pop events from the queue
P2P Service permissions
The Service Access Control Entry has the following controllable
flags
• Connect – Can access this service
Wildcard Support
As well as being able to specify an access control entry
for a specific subject the subject itself can contain
wildcards. In this way you can specify access control
based on hostname or on username.
For example :
| ACL Entry |
Description |
| *@* |
Represents all users from all nodes |
| *@client1.com |
Represents all users from the node client1.com |
| username@nodename |
Represents the user "username" on the
node "nodename" |
| username@* |
Represents the user "username" on all
nodes |
|