rskit-authz
Canonical RBAC + ABAC authorization engine with role hierarchy, deny override, and default deny.
Highlights
Engineevaluates RBAC roles and ABAC policies together- role inheritance with wildcard resource/action permissions
- object-level role permissions via permission-local attribute conditions
- explicit deny policies always win
- unmatched requests resolve to
default deny AuthorizationLayercomposes policy checks as Tower middleware and denies missing request contextmatch_pattern/match_anymirror gokit and pykit wildcard semantics
Example
use HashMap;
use ;
let engine = new?;
let allowed = engine.check;
assert!;
# Ok::
Object-level constraints that limit a role grant should be attached to the Permission::conditions for that grant. Use explicit deny policies for constraints that must override every broad role or policy allow.