Skip to content

Commit 9c77086

Browse files
committed
CH-103 Fix username match
1 parent 8f52735 commit 9c77086

1 file changed

Lines changed: 9 additions & 3 deletions

File tree

  • libraries/cloudharness-common/cloudharness/auth

libraries/cloudharness-common/cloudharness/auth/keycloak.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -442,13 +442,19 @@ def get_user(self, user_id, with_details=False) -> User:
442442
raise UserNotFound(user_id)
443443
except InvalidToken as e:
444444
raise UserNotFound(user_id)
445+
445446

446447
else:
447-
found_users = admin_client.get_users({"username": user_id})
448+
found_users = admin_client.get_users({"username": user_id, "exact": True})
448449
if len(found_users) == 0:
449450
raise UserNotFound(user_id)
450-
user = admin_client.get_user(found_users[0]['id']) # Load full data
451-
451+
try:
452+
user = admin_client.get_user(found_users[0]['id']) # Load full data
453+
except KeycloakGetError as e:
454+
raise UserNotFound(user_id)
455+
except InvalidToken as e:
456+
raise UserNotFound(user_id)
457+
452458
user.update({
453459
"userGroups": admin_client.get_user_groups(user_id=user['id'], brief_representation=not with_details),
454460
'realmRoles': admin_client.get_realm_roles_of_user(user['id'])

0 commit comments

Comments
 (0)