From 82a81f0cca5baa5b921894b3fd3306f8bb133362 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florencio=20Hern=C3=A1ndez?= Date: Tue, 17 Sep 2024 12:16:48 +0100 Subject: [PATCH 1/2] Add the ability to use a callback in bypassAuth in permissions --- src/Rbac/Rbac.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Rbac/Rbac.php b/src/Rbac/Rbac.php index e86bf9c..d65eebf 100644 --- a/src/Rbac/Rbac.php +++ b/src/Rbac/Rbac.php @@ -170,7 +170,11 @@ protected function _matchPermission(array $permission, array|ArrayAccess $user, 'action' => $params['action'] ?? null, 'role' => $role, ]; - if (!$user && ($permission['bypassAuth'] ?? false) !== true) { + $bypass = $permission['bypassAuth'] ?? false; + if (is_callable($bypass)) { + $bypass = $bypass($user, $role, $request); + } + if (!$user && $bypass !== true) { return null; } foreach ($permission as $key => $value) { From fa97e76106843457b0ca6f495c93406d32098f5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florencio=20Hern=C3=A1ndez?= Date: Thu, 12 Dec 2024 12:52:40 +0000 Subject: [PATCH 2/2] Run pipeline