interface IAuthorizationService
Since 0.1.0

Authorization service for RBAC with role hierarchy.

Methods

hasRole(
principal: IPrincipal,
role: string
): boolean

Check if a principal has a specific role (including inherited roles).

hasPermission(
principal: IPrincipal,
permission: string
): boolean

Check if a principal has a specific permission (direct or via role hierarchy).

hasAnyRole(
principal: IPrincipal,
roles: readonly string[]
): boolean

Check if a principal has any of the specified roles.

hasAllPermissions(
principal: IPrincipal,
permissions: readonly string[]
): boolean

Check if a principal has all of the specified permissions.

Usage

import { type IAuthorizationService } from "auth-plugin/src/index.ts";