aboutsummaryrefslogtreecommitdiff
path: root/src/app/open-id.service.ts
diff options
context:
space:
mode:
authorMartin Schanzenbach <mschanzenbach@posteo.de>2020-08-13 16:11:45 +0200
committerMartin Schanzenbach <mschanzenbach@posteo.de>2020-08-13 16:11:45 +0200
commit4bd12049941df9993b19f75dedad0501c88a2e29 (patch)
tree493db16dc5c0fe90870e63f1334e8aee0de4c44d /src/app/open-id.service.ts
parent82965ba7dda078608c6413bcd8d0c718a9f1b3e0 (diff)
downloadreclaim-ui-4bd12049941df9993b19f75dedad0501c88a2e29.tar.gz
reclaim-ui-4bd12049941df9993b19f75dedad0501c88a2e29.zip
fix claim processing
Diffstat (limited to 'src/app/open-id.service.ts')
-rw-r--r--src/app/open-id.service.ts29
1 files changed, 23 insertions, 6 deletions
diff --git a/src/app/open-id.service.ts b/src/app/open-id.service.ts
index 47f3c38..f8590e5 100644
--- a/src/app/open-id.service.ts
+++ b/src/app/open-id.service.ts
@@ -346,13 +346,30 @@ export class OpenIdService {
346 return []; 346 return [];
347 } 347 }
348 var claims = []; 348 var claims = [];
349 var json = JSON.parse(this.params['claims'])['userinfo']; 349 var json = [];
350 for(var key in json) 350 try {
351 json = JSON.parse(this.params['claims']);
352 } catch(e) {
353 console.log(e);
354 return claims;
355 }
356 if (undefined === json) { return claims };
357 var userinfo = json['userinfo']
358 if (undefined === userinfo) { return claims };
359 var claimkeys = [];
360 for(var key in userinfo)
351 { 361 {
352 if (json[key]['attestation'] === true) 362 claims.push([key, userinfo[key]['essential'], userinfo[key]['attestation'], userinfo[key]['format']]);
353 { 363 claimkeys.push(key);
354 claims.push([key, json[key]['essential'], json[key]['attestation'], json[key]['format']]); 364 }
355 } 365 var idtoken = json['id_token'];
366 if (undefined === idtoken) { return claims };
367 for(var key in idtoken)
368 {
369 if (!claimkeys.includes(key))
370 {
371 claims.push([key, idtoken[key]['essential'], idtoken[key]['attestation'], idtoken[key]['format']]);
372 }
356 } 373 }
357 return claims; 374 return claims;
358 } 375 }