1- #NODE ACL - Access Control Lists for Node
1+ # NODE ACL - Access Control Lists for Node
22
33This module provides a minimalistic ACL implementation inspired by Zend_ACL.
44
@@ -14,13 +14,13 @@ A Redis, MongoDB and In-Memory based backends are provided built-in in the modul
1414
1515Follow [ manast] ( http://twitter.com/manast ) for news and updates regarding this library.
1616
17- ##Status
17+ ## Status
1818
1919[ ![ BuildStatus] ( https://secure.travis-ci.org/OptimalBits/node_acl.png?branch=master )] ( http://travis-ci.org/OptimalBits/node_acl )
2020[ ![ Dependency Status] ( https://david-dm.org/OptimalBits/node_acl.svg )] ( https://david-dm.org/OptimalBits/node_acl )
2121[ ![ devDependency Status] ( https://david-dm.org/OptimalBits/node_acl/dev-status.svg )] ( https://david-dm.org/OptimalBits/node_acl#info=devDependencies )
2222
23- ##Features
23+ ## Features
2424
2525- Users
2626- Roles
@@ -57,7 +57,7 @@ npm install acl
5757* [ middleware] ( #middleware )
5858* [ backend] ( #backend )
5959
60- ##Examples
60+ ## Examples
6161
6262Create your acl module by requiring it and instantiating it with a valid backend instance:
6363
@@ -205,6 +205,7 @@ app.put('/blogs/:id/comments/:commentId', acl.middleware(3, 'joed', 'post'), fun
205205## Methods
206206
207207<a name="addUserRoles"/>
208+
208209### addUserRoles( userId, roles, function(err) )
209210
210211Adds roles to a given user id.
@@ -220,6 +221,7 @@ __Arguments__
220221---------------------------------------
221222
222223<a name="removeUserRoles"/>
224+
223225### removeUserRoles( userId, roles, function(err) )
224226
225227Remove roles from a given user.
@@ -235,6 +237,7 @@ __Arguments__
235237---------------------------------------
236238
237239<a name="userRoles" />
240+
238241### userRoles( userId, function(err, roles) )
239242
240243Return all the roles from a given user.
@@ -249,6 +252,7 @@ __Arguments__
249252---------------------------------------
250253
251254<a name="roleUsers" />
255+
252256### roleUsers( rolename, function(err, users) )
253257
254258Return all users who has a given role.
@@ -263,6 +267,7 @@ __Arguments__
263267---------------------------------------
264268
265269<a name="hasRole" />
270+
266271### hasRole( userId, rolename, function(err, hasRole) )
267272
268273Return boolean whether user has the role
@@ -278,6 +283,7 @@ __Arguments__
278283---------------------------------------
279284
280285<a name="addRoleParents" />
286+
281287### addRoleParents( role, parents, function(err) )
282288
283289Adds a parent or parent list to role.
@@ -293,6 +299,7 @@ __Arguments__
293299---------------------------------------
294300
295301<a name="removeRoleParents" />
302+
296303### removeRoleParents( role, parents, function(err) )
297304
298305Removes a parent or parent list from role.
@@ -310,6 +317,7 @@ __Arguments__
310317---------------------------------------
311318
312319<a name="removeRole" />
320+
313321### removeRole( role, function(err) )
314322
315323Removes a role from the system.
@@ -338,6 +346,7 @@ __Arguments__
338346---------------------------------------
339347
340348<a name="allow" />
349+
341350### allow( roles, resources, permissions, function(err) )
342351
343352Adds the given permissions to the given roles over the given resources.
@@ -365,6 +374,7 @@ __Arguments__
365374---------------------------------------
366375
367376<a name="removeAllow" />
377+
368378### removeAllow( role, resources, permissions, function(err) )
369379
370380Remove permissions from the given roles owned by the given role.
@@ -383,6 +393,7 @@ __Arguments__
383393---------------------------------------
384394
385395<a name="allowedPermissions" />
396+
386397### allowedPermissions( userId, resources, function(err, obj) )
387398
388399Returns all the allowable permissions a given user have to
@@ -402,6 +413,7 @@ __Arguments__
402413---------------------------------------
403414
404415<a name="isAllowed" />
416+
405417### isAllowed( userId, resource, permissions, function(err, allowed) )
406418
407419Checks if the given user is allowed to access the resource for the given
@@ -418,6 +430,7 @@ __Arguments__
418430
419431---------------------------------------
420432<a name="areAnyRolesAllowed" />
433+
421434### areAnyRolesAllowed( roles, resource, permissions, function(err, allowed) )
422435
423436Returns true if any of the given roles have the right permissions.
@@ -433,6 +446,7 @@ __Arguments__
433446
434447---------------------------------------
435448<a name="whatResources" />
449+
436450### whatResources(role, function(err, {resourceName: [permissions]})
437451
438452Returns what resources a given role has permissions over.
@@ -459,6 +473,7 @@ __Arguments__
459473---------------------------------------
460474
461475<a name="middleware" />
476+
462477### middleware( [numPathComponents, userId, permissions] )
463478
464479Middleware for express.
@@ -476,6 +491,7 @@ __Arguments__
476491---------------------------------------
477492
478493<a name="backend" />
494+
479495### backend( db, [prefix] )
480496
481497Creates a backend instance. All backends except Memory require driver or database instance. ` useSingle` is only applicable to the MongoDB backend.
@@ -504,7 +520,7 @@ var redisBackend = new acl.redisBackend(client);
504520
505521Creates a new Redis backend using Redis client ` client` .
506522
507- ##Tests
523+ ## Tests
508524
509525Run tests with ` npm` (requires mocha):
510526` ` ` javascript
@@ -516,7 +532,7 @@ Run tests with `npm` (requires mocha):
516532- Support for denials (deny a role a given permission)
517533
518534
519- ##License
535+ ## License
520536
521537(The MIT License)
522538
0 commit comments