Moss · Catalog

Multiple roles

A principal with several roles holds the actions granted by any of its roles, as one catalog with one token. Example: Linus has usher and member, and Grace has member alone.

Action grants per role
{
  usher: ['programme', 'door.*'],
  member: ['programme', 'seats', 'me.*'],
}
Catalog for Grace (member)
['me.pass', 'me.tickets', 'programme', 'seats']
Roles of Linus
['usher', 'member']
Catalog for Linus
{
  ids: [
    'door.list',
    'me.pass',
    'me.tickets',
    'programme',
    'seats',
  ],
  hash: '2efe0d19',
}
Output matches the expected value

Computed when this site was built, by the installed package, which does not run in a browser. The site’s checks recompute it on every change.