Skip to content
This repository was archived by the owner on Jun 12, 2021. It is now read-only.

Commit 4b2ad89

Browse files
committed
cookie dealer auto builder
in oidc-op conf.yaml get to work this configuration ```` cookie_dealer: class: oidcendpoint.cookie.CookieDealer kwargs: # these should be updated... sign_jwk: filename: data/oidc_op/private/cookie_sign_jwk.json sign_alg: 'SHA256' type: OCT kid: cookie_sign_key_id enc_jwk: ## otherwise do it yourself: jwkgen --kty SYM > data/oidc_op/private/cookie_enc_jwk.json filename: 'data/oidc_op/private/cookie_enc_jwk.json' type: OCT kid: cookie_enc_key_id default_values: name: oidc_op domain: *base_url path: / max_age: 3600 ````
1 parent 430fb74 commit 4b2ad89

File tree

2 files changed

+11
-11
lines changed

2 files changed

+11
-11
lines changed

src/oidcendpoint/cookie.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -300,7 +300,10 @@ def __init__(
300300
else:
301301
self.sign_key = SYMKey(k=sign_key)
302302
elif sign_jwk:
303-
self.sign_key = import_jwk(sign_jwk)
303+
if isinstance(sign_jwk, dict):
304+
self.sign_key = import_jwk(sign_jwk['filename'])
305+
else:
306+
self.sign_key = import_jwk(sign_jwk)
304307
else:
305308
self.sign_key = None
306309

@@ -312,7 +315,10 @@ def __init__(
312315
else:
313316
self.enc_key = SYMKey(k=enc_key)
314317
elif enc_jwk:
315-
self.enc_key = import_jwk(enc_jwk)
318+
if isinstance(enc_jwk, dict):
319+
self.enc_key = import_jwk(enc_jwk['filename'])
320+
else:
321+
self.enc_key = import_jwk(enc_jwk)
316322
else:
317323
self.enc_key = None
318324

src/oidcendpoint/oidc/session.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -381,11 +381,8 @@ def do_verified_logout(self, sid, client_id, alla=False, **kwargs):
381381
else:
382382
_res = self.logout_from_client(sid=sid, client_id=client_id)
383383

384-
try:
385-
bcl = _res["blu"]
386-
except KeyError:
387-
pass
388-
else:
384+
bcl = _res.get("blu")
385+
if bcl:
389386
# take care of Back channel logout first
390387
for _cid, spec in bcl.items():
391388
_url, sjwt = spec
@@ -402,10 +399,7 @@ def do_verified_logout(self, sid, client_id, alla=False, **kwargs):
402399
elif res.status_code >= 400:
403400
logger.info("failed to logout from {}".format(_cid))
404401

405-
try:
406-
return _res["flu"].values()
407-
except KeyError:
408-
return []
402+
return _res["flu"].values() if _res.get("fluu") else []
409403

410404
def kill_cookies(self):
411405
_ec = self.endpoint_context

0 commit comments

Comments
 (0)