Skip to content

Commit 4d074d0

Browse files
jopemachineclaude
andauthored
test(BA-4985): add component tests for auth security management (#9873)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 0ecb595 commit 4d074d0

3 files changed

Lines changed: 806 additions & 67 deletions

File tree

changes/9873.test.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Add component tests for auth security management

src/ai/backend/manager/services/auth/service.py

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -104,15 +104,21 @@ def __init__(
104104
async def get_role(self, action: GetRoleAction) -> GetRoleActionResult:
105105
group_role = None
106106
if action.group_id is not None:
107-
try:
108-
# TODO: per-group role is not yet implemented.
109-
await self._auth_repository.get_group_membership(action.group_id, action.user_id)
107+
if action.is_superadmin:
108+
# Superadmins have global access across all domains and groups.
110109
group_role = "user"
111-
except GroupMembershipNotFoundError as e:
112-
raise ObjectNotFound(
113-
extra_msg="No such project or you are not the member of it.",
114-
object_name="project (user group)",
115-
) from e
110+
else:
111+
try:
112+
# TODO: per-group role is not yet implemented.
113+
await self._auth_repository.get_group_membership(
114+
action.group_id, action.user_id
115+
)
116+
group_role = "user"
117+
except GroupMembershipNotFoundError as e:
118+
raise ObjectNotFound(
119+
extra_msg="No such project or you are not the member of it.",
120+
object_name="project (user group)",
121+
) from e
116122

117123
return GetRoleActionResult(
118124
global_role="superadmin" if action.is_superadmin else "user",

0 commit comments

Comments
 (0)