diff --git a/src/main/java/no/uio/ifi/localega/doa/services/AAIService.java b/src/main/java/no/uio/ifi/localega/doa/services/AAIService.java index 6bfa6a2..0e6565a 100644 --- a/src/main/java/no/uio/ifi/localega/doa/services/AAIService.java +++ b/src/main/java/no/uio/ifi/localega/doa/services/AAIService.java @@ -44,12 +44,12 @@ public class AAIService { */ public Collection getDatasetIds(String accessToken) { Collection visas = new ArrayList<>(); - if (StringUtils.countMatches(accessToken, '.') == 2) { // JWT access token + if (StringUtils.countMatches(accessToken, '.') == 2) { var tokenArray = accessToken.split("[.]"); - byte[] decodedHeader = Base64.getUrlDecoder().decode(tokenArray[0]); - String decodedHeaderString = new String(decodedHeader); + byte[] decodedPayload = Base64.getUrlDecoder().decode(tokenArray[1]); + String decodedPayloadString = new String(decodedPayload); Gson gson = new Gson(); - Set claims = gson.fromJson(decodedHeaderString, JsonObject.class).keySet(); + Set claims = gson.fromJson(decodedPayloadString, JsonObject.class).keySet(); boolean isVisa = claims.contains("ga4gh_visa_v1"); if (isVisa) {