The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

App::Dochazka::REST::Dispatch::ACL - ACL module

VERSION

Version 0.300

DESCRIPTION

This module provides helper code for ACL checks.

EXPORTS

PACKAGE VARIABLES

The 'check_acl' routine uses a hash to look up which privlevels satisfy a given ACL profile.

FUNCTIONS

check_acl

Compare ACL profile of a resource, $profile, with the privlevel of the current employee, $privlevel. If the former is at least as high as the latter, the function returns true, otherwise false.

check_acl_context

Check ACL and compare with eid in request body. This routine is designed for resources that have an ACL profile of 'active'. If the request body contains an 'eid' property, it is checked against the current user's EID. If they are different and the current user's priv is 'active', DOCHAZKA_FORBIDDEN_403 is returned; otherwise, undef is returned to signify that the check passed.