-permissions

Comprehensive sails.js user permissions and entitlements system. Supports user authentication with passport.js, role-based permissioning, object ownership, and row-level security.
Install
$ npm install sails-permissions sails-auth --save
Quickstart
Note: Complete documentation available in the sails-permissions wiki: https://github.com/tjwebb/sails-permissions/wiki
1. configure sailsrc
{
"generators": {
"modules": {
"permissions-api": "sails-permissions/generator"
}
}
}
2. run generator
$ sails generate permissions-api
3. Set environment variables
variable | description | default |
---|
ADMIN_USERNAME | admin username | admin |
ADMIN_EMAIL | admin user email address | admin@example.com |
ADMIN_PASSWORD | admin user password | admin1234 |
e.g in config/local.js (file is in .gitignore)
sails.config.permissions.adminUsername = 'admin'
sails.config.permissions.adminEmail = 'admin@example.com'
sails.config.permissions.adminPassword = 'admin1234'
4. update configs
config/policies.js
'*': [
'basicAuth',
'passport',
'sessionAuth',
'ModelPolicy',
'AuditPolicy',
'OwnerPolicy',
'PermissionPolicy',
'RolePolicy',
'CriteriaPolicy'
],
AuthController: {
'*': [ 'passport' ]
}
5. Login
You can now login using the aforementioned default login data or the admin settings you specified using the /auth/local
endpoint.
{
"identifier": "admin@example.com",
"password": "admin1234"
}
License
MIT
Maintained By

