@@ -259,11 +259,11 @@ def __init__(
259
259
self .source = None
260
260
if isinstance (keys , dict ):
261
261
if "keys" in keys :
262
- self .do_keys (keys ["keys" ])
262
+ self ._do_keys (keys ["keys" ])
263
263
else :
264
- self .do_keys ([keys ])
264
+ self ._do_keys ([keys ])
265
265
else :
266
- self .do_keys (keys )
266
+ self ._do_keys (keys )
267
267
else :
268
268
self ._set_source (source , fileformat )
269
269
if self .local :
@@ -290,9 +290,9 @@ def _set_source(self, source, fileformat):
290
290
291
291
def _do_local (self , kid ):
292
292
if self .fileformat in ["jwks" , "jwk" ]:
293
- self .do_local_jwk (self .source )
293
+ self ._do_local_jwk (self .source )
294
294
elif self .fileformat == "der" :
295
- self .do_local_der (self .source , self .keytype , self .keyusage , kid )
295
+ self ._do_local_der (self .source , self .keytype , self .keyusage , kid )
296
296
297
297
def _local_update_required (self ) -> bool :
298
298
stat = os .stat (self .source )
@@ -304,7 +304,11 @@ def _local_update_required(self) -> bool:
304
304
self .last_local = stat .st_mtime
305
305
return True
306
306
307
+ @keys_writer
307
308
def do_keys (self , keys ):
309
+ return self ._do_keys (keys )
310
+
311
+ def _do_keys (self , keys ):
308
312
"""
309
313
Go from JWK description to binary keys
310
314
@@ -366,7 +370,7 @@ def do_keys(self, keys):
366
370
367
371
self .last_updated = time .time ()
368
372
369
- def do_local_jwk (self , filename ):
373
+ def _do_local_jwk (self , filename ):
370
374
"""
371
375
Load a JWKS from a local file
372
376
@@ -380,14 +384,14 @@ def do_local_jwk(self, filename):
380
384
with open (filename ) as input_file :
381
385
_info = json .load (input_file )
382
386
if "keys" in _info :
383
- self .do_keys (_info ["keys" ])
387
+ self ._do_keys (_info ["keys" ])
384
388
else :
385
- self .do_keys ([_info ])
389
+ self ._do_keys ([_info ])
386
390
self .last_local = time .time ()
387
391
self .time_out = self .last_local + self .cache_time
388
392
return True
389
393
390
- def do_local_der (self , filename , keytype , keyusage = None , kid = "" ):
394
+ def _do_local_der (self , filename , keytype , keyusage = None , kid = "" ):
391
395
"""
392
396
Load a DER encoded file amd create a key from it.
393
397
@@ -418,7 +422,7 @@ def do_local_der(self, filename, keytype, keyusage=None, kid=""):
418
422
if kid :
419
423
key_args ["kid" ] = kid
420
424
421
- self .do_keys ([key_args ])
425
+ self ._do_keys ([key_args ])
422
426
self .last_local = time .time ()
423
427
self .time_out = self .last_local + self .cache_time
424
428
return True
@@ -465,7 +469,7 @@ def do_remote(self):
465
469
466
470
LOGGER .debug ("Loaded JWKS: %s from %s" , _http_resp .text , self .source )
467
471
try :
468
- self .do_keys (self .imp_jwks ["keys" ])
472
+ self ._do_keys (self .imp_jwks ["keys" ])
469
473
except KeyError :
470
474
LOGGER .error ("No 'keys' keyword in JWKS" )
471
475
self .ignore_errors_until = time .time () + self .ignore_errors_period
@@ -538,9 +542,9 @@ def update(self):
538
542
try :
539
543
if self .local :
540
544
if self .fileformat in ["jwks" , "jwk" ]:
541
- updated = self .do_local_jwk (self .source )
545
+ updated = self ._do_local_jwk (self .source )
542
546
elif self .fileformat == "der" :
543
- updated = self .do_local_der (self .source , self .keytype , self .keyusage )
547
+ updated = self ._do_local_der (self .source , self .keytype , self .keyusage )
544
548
elif self .remote :
545
549
updated = self .do_remote ()
546
550
except Exception as err :
@@ -840,7 +844,7 @@ def load(self, spec):
840
844
"""
841
845
_keys = spec .get ("keys" , [])
842
846
if _keys :
843
- self .do_keys (_keys )
847
+ self ._do_keys (_keys )
844
848
845
849
for attr , default in self .params .items ():
846
850
val = spec .get (attr )
0 commit comments