xo-acl-resolver

Xen-Orchestra internal: do ACLs resolution

Usage no npm install needed!

<script type="module">
  import xoAclResolver from 'https://cdn.skypack.dev/xo-acl-resolver';
</script>

README

xo-acl-resolver Build Status

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