adding cache flag for public key loading
diff --git a/geronimo-jwt-auth-impl/src/main/java/org/apache/geronimo/microprofile/impl/jwtauth/jwt/SignatureValidator.java b/geronimo-jwt-auth-impl/src/main/java/org/apache/geronimo/microprofile/impl/jwtauth/jwt/SignatureValidator.java
index b46403e..f87dff3 100644
--- a/geronimo-jwt-auth-impl/src/main/java/org/apache/geronimo/microprofile/impl/jwtauth/jwt/SignatureValidator.java
+++ b/geronimo-jwt-auth-impl/src/main/java/org/apache/geronimo/microprofile/impl/jwtauth/jwt/SignatureValidator.java
@@ -49,10 +49,12 @@
 
     private Set<String> supportedAlgorithms;
     private String jcaProvider;
+    private boolean useCache;
     private final ConcurrentMap<String, PublicKey> publicKeyCache = new ConcurrentHashMap<>();
 
     @PostConstruct
     private void init() {
+        useCache = Boolean.parseBoolean(config.read("public-key.cache.active", "true"));
         supportedAlgorithms = Stream.of(config.read("header.alg.supported", "RS256").split(","))
                 .map(String::trim)
                 .map(s -> s.toLowerCase(Locale.ROOT))
@@ -104,7 +106,7 @@
     }
 
     private PublicKey toPublicKey(final String key, final String algo) {
-        PublicKey publicKey = publicKeyCache.get(key);
+        PublicKey publicKey = useCache ? publicKeyCache.get(key) : null;
         if (publicKey == null) {
             final byte[] decoded = Base64.getDecoder().decode(key
                     .replace("-----BEGIN RSA KEY-----", "")
@@ -121,7 +123,9 @@
                         final X509EncodedKeySpec keySpec = new X509EncodedKeySpec(decoded);
                         final KeyFactory keyFactory = KeyFactory.getInstance(algo);
                         publicKey = keyFactory.generatePublic(keySpec);
-                        publicKeyCache.putIfAbsent(key, publicKey);
+                        if (useCache) {
+                            publicKeyCache.putIfAbsent(key, publicKey);
+                        }
                         break;
                     }
                     case "EC": // TODO