From ebac60b314daaa902163ea8a2a5e35c671f81c37 Mon Sep 17 00:00:00 2001 From: Valentin Mihai Date: Fri, 13 Oct 2023 20:00:10 +0300 Subject: [PATCH] RED-7756 - Missing redirect to login page when trying to access tenant without being logged-in --- apps/red-ui/src/app/guards/if-logged-in.guard.ts | 8 +++++--- apps/red-ui/src/app/services/router-history.service.ts | 4 ++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/apps/red-ui/src/app/guards/if-logged-in.guard.ts b/apps/red-ui/src/app/guards/if-logged-in.guard.ts index 86651e9fe..58d22e3ba 100644 --- a/apps/red-ui/src/app/guards/if-logged-in.guard.ts +++ b/apps/red-ui/src/app/guards/if-logged-in.guard.ts @@ -43,9 +43,11 @@ export function ifLoggedIn(): AsyncGuard { await licenseService.loadLicenses(); const token = await keycloakService.getToken(); - const jwtToken = jwt_decode(token) as JwtToken; - const authTime = (jwtToken.auth_time || jwtToken.iat).toString(); - localStorage.setItem('authTime', authTime); + if (token) { + const jwtToken = jwt_decode(token) as JwtToken; + const authTime = (jwtToken.auth_time || jwtToken.iat).toString(); + localStorage.setItem('authTime', authTime); + } } const isLoggedIn = await keycloakService.isLoggedIn(); diff --git a/apps/red-ui/src/app/services/router-history.service.ts b/apps/red-ui/src/app/services/router-history.service.ts index 938ff679b..db9fd7123 100644 --- a/apps/red-ui/src/app/services/router-history.service.ts +++ b/apps/red-ui/src/app/services/router-history.service.ts @@ -28,11 +28,11 @@ export class RouterHistoryService { } }); const ref = effect(async () => { - if (this._tenantsService.activeTenantId.length === 0) { + const token = await this._keycloakService.getToken(); + if (this._tenantsService.activeTenantId.length === 0 || !token) { return; } - const token = await this._keycloakService.getToken(); const jwtToken = jwt_decode(token) as JwtToken; const authTime = (jwtToken.auth_time || jwtToken.iat).toString(); const localStorageAuthTime = localStorage.getItem('authTime');