From 14690a378fbf884c9377a5c7f4c2fe1fd75c988a Mon Sep 17 00:00:00 2001 From: MythEclipse Date: Fri, 26 Sep 2025 01:30:00 +0700 Subject: [PATCH] feat: Allow access for users with Administrator permission in permissions guard --- imphnen-iam/src/v1/permissions/permissions_guard.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/imphnen-iam/src/v1/permissions/permissions_guard.rs b/imphnen-iam/src/v1/permissions/permissions_guard.rs index 8a1abbb..3a2a00e 100644 --- a/imphnen-iam/src/v1/permissions/permissions_guard.rs +++ b/imphnen-iam/src/v1/permissions/permissions_guard.rs @@ -45,6 +45,12 @@ pub async fn permissions_guard( // Check permissions from database let user_permissions: Vec = user.role.permissions.as_ref().unwrap_or(&vec![]).iter().filter_map(|p| p.as_ref().and_then(|pp| pp.name.clone())).collect(); + + // If user has Administrator permission, allow all + if user_permissions.contains(&"Administrator".to_string()) { + return Ok((claims, state)); + } + for required in &required_permissions { let required_str = required.to_string(); if !user_permissions.contains(&required_str) {