impersonate fix

This commit is contained in:
Timo Bejan 2023-09-28 12:00:04 +03:00
parent bb2a899da3
commit c11d1915a2
2 changed files with 5 additions and 2 deletions

View File

@ -10,6 +10,7 @@ import jwt_decode from 'jwt-decode';
export interface JwtToken {
auth_time: number;
iat: number;
}
export function ifLoggedIn(): AsyncGuard {
@ -42,7 +43,8 @@ export function ifLoggedIn(): AsyncGuard {
await licenseService.loadLicenses();
const token = await keycloakService.getToken();
const authTime = (jwt_decode(token) as JwtToken).auth_time.toString();
const jwtToken = jwt_decode(token) as JwtToken;
const authTime = (jwtToken.auth_time || jwtToken.iat).toString();
localStorage.setItem('authTime', authTime);
}

View File

@ -33,7 +33,8 @@ export class RouterHistoryService {
}
const token = await this._keycloakService.getToken();
const authTime = (jwt_decode(token) as JwtToken).auth_time;
const jwtToken = jwt_decode(token) as JwtToken;
const authTime = (jwtToken.auth_time || jwtToken.iat).toString();
const localStorageAuthTime = localStorage.getItem('authTime');
if (authTime.toString() !== localStorageAuthTime) {