From 0fb978467dcfc023a52d5db377c93f2c3517c99e Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Thu, 10 Jun 2021 16:45:07 +0200 Subject: [PATCH] idp_oidc: adapt to changes in jwcrypto 0.9.1 (#54740) --- src/authentic2_idp_oidc/utils.py | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/authentic2_idp_oidc/utils.py b/src/authentic2_idp_oidc/utils.py index 8382d144f..4ca6f75c7 100644 --- a/src/authentic2_idp_oidc/utils.py +++ b/src/authentic2_idp_oidc/utils.py @@ -55,11 +55,19 @@ def get_jwkset(): def get_first_sig_key_by_type(kty=None): if kty: for key in get_jwkset()['keys']: - if key._params['kty'] != kty: - continue - use = key._params.get('use') - if use is None or use == 'sig': - return key + # XXX: remove when jwcrypto version is over 0.9.1 everywhere + if hasattr(key, '_params'): + if key._params['kty'] != kty: + continue + use = key._params.get('use') + if use is None or use == 'sig': + return key + else: + if key['kty'] != kty: + continue + use = key.get('use') + if use is None or use == 'sig': + return key return None