From 2c7fb90f8c261f0df0a39f60f8c15ea516a347f0 Mon Sep 17 00:00:00 2001 From: Timo Bejan Date: Tue, 25 Oct 2022 16:29:45 +0300 Subject: [PATCH] RED-3800 fixed permissions to be generic --- src/lib/users/services/iqser-user.service.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/lib/users/services/iqser-user.service.ts b/src/lib/users/services/iqser-user.service.ts index befbf72..7891f94 100644 --- a/src/lib/users/services/iqser-user.service.ts +++ b/src/lib/users/services/iqser-user.service.ts @@ -18,7 +18,7 @@ import { IqserPermissionsService, IqserRolesService } from '../../permissions'; interface IToken { sub: string; - resource_access: { account: { roles: List }; redaction: { roles: List } }; + resource_access: { account: { roles: List }; [key: string]: { roles: List } }; } @Injectable() @@ -85,7 +85,8 @@ export abstract class IqserUserService< const token = await this._keycloakService.getToken(); const decoded: IToken = jwt_decode(token); const userId = decoded.sub; - this._permissionsService.load(decoded.resource_access.redaction.roles); + const rolesField = this._keycloakService.getKeycloakInstance().realm || ''; + this._permissionsService.load(decoded.resource_access[rolesField].roles); const roles = this._keycloakService.getUserRoles(true).filter(role => this._rolesFilter(role)); this._rolesService.load(roles);