public boolean isValid()

in src/main/java/com/epam/digital/data/platform/restapi/core/service/JwtValidationService.java [79:98]


  public <O> boolean isValid(Request<O> input) {
    if (!jwtValidationEnabled) {
      return true;
    }

    String accessToken = getTokenFromInput(input);
    JWTClaimsSet jwtClaimsSet = getClaimsFromToken(accessToken);
    if (isExpiredJwt(jwtClaimsSet)) {
      throw new JwtExpiredException("JWT is expired");
    }
    String jwtIssuer = jwtClaimsSet.getIssuer();
    String issuerRealm = jwtIssuer.substring(jwtIssuer.lastIndexOf("/") + 1);

    if (keycloakConfigProperties.getRealms().contains(issuerRealm)) {
      PublicKey keycloakPublicKey = allowedRealmsRepresentations.get(issuerRealm).getPublicKey();
      return isVerifiedToken(accessToken, keycloakPublicKey);
    } else {
      throw new JwtValidationException("Issuer realm is not valid");
    }
  }