access-roles

1.0.3 • Public • Published

Node ACCESS ROLES

HOW TO INSTALL ?

npm install --save access-roles

HOW TO USE ?

var accessRoles = require('access-roles')(app);

accessRoles(options, callback)

Create a new accessRoles middleware function using the given options object and callback function.

options

  • roles (Required) Filename contains roles array:

    • path (Required): Handled by express.
    • methods (Default: ['GET']): HTTP methods array.
    • permissions (Required): Permissions allowed.
    • redirect Redirect a request, handled by express.
  • dataSource (Required) Object in req contains user info.

  • onSuccess Response on success.

  • onFailed Response on failed (Default: { status: 401, message: 'Not Authorized' }).

  • beforeEnter Called before enter.

  • callback The callback(err[name, message]).

Example

{
    "roles": [
        {
            "path": "/",
            "methods": ["GET"],
            "permissions": ["Admin"],
            "redirect": "/home"
        }
    ]
}
function onSuccess(req, res, next) {
    // ...
}
 
function onFailed(req, res, next) {
    // ...
}
 
function beforeEnter(req, res, next) {
    // req.userData = ...;
}
 
var options = {
    roles: './config/roles.json',
    dataSource: 'userData',
    onSuccess: onSuccess,
    onFailed: onFailed,
    beforeEnter: beforeEnter
};
accessRoles(options, (err) => {
    if (err) throw err;
});

TODO

  • Tests
  • Give me suggestions ??

LICENSE

GPL-3.0

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 1.0.3
    1
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 1.0.3
    1
  • 1.0.2
    0
  • 1.0.1
    0
  • 1.0.0
    0

Package Sidebar

Install

npm i access-roles

Weekly Downloads

1

Version

1.0.3

License

GPL-3.0

Unpacked Size

42.4 kB

Total Files

8

Last publish

Collaborators

  • ayoubamine