@@ -321,12 +321,12 @@ def add_jwk_dicts(self, keys):
321
321
self ._add_jwk_dicts (keys )
322
322
323
323
def _add_jwk_dicts (self , keys ):
324
- _new_keys = self ._jwk_dicts_to_keys (keys )
324
+ _new_keys = self .jwk_dicts_as_keys (keys )
325
325
if _new_keys :
326
326
self ._keys .extend (_new_keys )
327
327
self .last_updated = time .time ()
328
328
329
- def _jwk_dicts_to_keys (self , keys ):
329
+ def jwk_dicts_as_keys (self , keys ):
330
330
"""
331
331
Return JWK dictionaries as list of JWK objects
332
332
@@ -385,8 +385,6 @@ def _jwk_dicts_to_keys(self, keys):
385
385
386
386
return _new_keys
387
387
388
- self .last_updated = time .time ()
389
-
390
388
def _do_local_jwk (self , filename ):
391
389
"""
392
390
Load a JWKS from a local file
@@ -474,6 +472,7 @@ def do_remote(self):
474
472
LOGGER .error (err )
475
473
raise UpdateFailed (REMOTE_FAILED .format (self .source , str (err )))
476
474
475
+ new_keys = None
477
476
load_successful = _http_resp .status_code == 200
478
477
not_modified = _http_resp .status_code == 304
479
478
@@ -486,7 +485,7 @@ def do_remote(self):
486
485
487
486
LOGGER .debug ("Loaded JWKS: %s from %s" , _http_resp .text , self .source )
488
487
try :
489
- self ._add_jwk_dicts (self .imp_jwks ["keys" ])
488
+ new_keys = self .jwk_dicts_as_keys (self .imp_jwks ["keys" ])
490
489
except KeyError :
491
490
LOGGER .error ("No 'keys' keyword in JWKS" )
492
491
self .ignore_errors_until = time .time () + self .ignore_errors_period
@@ -507,6 +506,8 @@ def do_remote(self):
507
506
self .ignore_errors_until = time .time () + self .ignore_errors_period
508
507
raise UpdateFailed (REMOTE_FAILED .format (self .source , _http_resp .status_code ))
509
508
509
+ if new_keys is not None :
510
+ self ._keys = new_keys
510
511
self .last_updated = time .time ()
511
512
self .ignore_errors_until = None
512
513
return load_successful
0 commit comments