README
xo-acl-resolver
Xen-Orchestra internal: do ACLs resolution.
Install
Installation of the npm package:
> npm install --save xo-acl-resolver
Usage
import check from 'xo-acl-resolver'
// This object contains a list of permissions returned from
// xo-server's acl.getCurrentPermissions.
const permissions = { /* ... */ }
// This function should returns synchronously an object from an id.
const getObject = id => { /* ... */ }
// For a single object:
if (check(permissions, getObject, objectId, permission)) {
console.log(`${permission} set for object ${objectId}`)
}
// For multiple objects/permissions:
if (check(permissions, getObject, [
[ object1Id, permission1 ],
[ object12d, permission2 ],
])) {
console.log('all permissions checked')
}
Development
Installing dependencies
> npm install
Compilation
The sources files are watched and automatically recompiled on changes.
> npm run dev
Tests
> npm run test-dev
Contributions
Contributions are very welcomed, either on the documentation or on the code.
You may:
- report any issue you've encountered;
- fork and create a pull request.
License
ISC © Vates SAS