session-role-manager

A session based role mannger for node-casbin.

Usage no npm install needed!

<script type="module">
  import sessionRoleManager from 'https://cdn.skypack.dev/session-role-manager';
</script>

README

session-role-manager

NPM version NPM download Release

Session Role Manager is the Session-based role manager for node-casbin. With this library, node-casbin can load session-based role hierarchy (user-role mapping) from Casbin policy or save role hierarchy to it. The session is only active in the specified time range.

Installation

# Yarn
yarn add session-role-manager
# NPM
npm install session-role-manager --save

Example

import { newEnforcer } from 'casbin';
import { SessionRoleManager } from 'session-role-manager';

async function app() {
  const e = await newEnforcer('examples/rbac_model_with_sessions.conf', 'examples/rbac_policy_with_sessions.csv');

  // Use our role manager.
  const rm = new SessionRoleManager(10);
  e.setRoleManager(rm);
  await e.buildRoleLinks();
}

app();