private void enrichSubject(final Subject subject, final ReadOnlyJWTClaimsSet claims) { claims.getAllClaims().forEach((k, v) -> subject.getPrincipals().add(new KeyValuePrincipal(k, v, "claim"))); }
@Override public String getUsername(final ReadOnlyJWTClaimsSet claims) { final Object result = get(claims.getAllClaims(), new StringTokenizer(userClaim, ".")); String username = null; if (String.class.isInstance(result)) { username = (String) result; } else if (result != null) { username = String.valueOf(result); } if (username != null && username.length() > 0) { return username; } return "unknown_user"; }
String resolveJwt(final ReadOnlyJWTClaimsSet claimsSet, final String key) { final Object result = get(claimsSet.getAllClaims(), new StringTokenizer(key, ".")); final String value = String.class.isInstance(result) ? String.class.cast(result) : String.valueOf(result); EnvironmentEventLogger.lookupJWT(key, value); return value; }
public static void resolveJWT(final Resolver resolver) { final String token = resolver.resolveInternalToken(null); if (token == null) { // there might not be any bearer token in headers return; } final RequestContext requestContext = RequestContext.fromRequest(REQUESTS.get()); final ReadOnlyJWTClaimsSet claimSet = new Jwt().getClaimSet(token); final Map<String, Object> allClaims = claimSet.getAllClaims(); allClaims.keySet() .stream() .sorted() .forEach(key -> { final Object value = allClaims.get(key); eventHandler().event( variable( "jwt", key, String.class.isInstance(value) ? String.class.cast(value) : String.valueOf(value), routeName(requestContext))); }); }
static UserInfo createFromIdTokenClaims(final ReadOnlyJWTClaimsSet claims) throws java.text.ParseException { if (claims == null || claims.getAllClaims().size() == 0) { return null;