Browse Source

Remove special case for str

pull/616/head
Cristian Betivu 5 months ago
parent
commit
ae5d746f79
  1. 19
      src/keycloak/keycloak_openid.py

19
src/keycloak/keycloak_openid.py

@ -582,12 +582,9 @@ class KeycloakOpenID:
return raise_error_from_response(data_raw, KeycloakPostError)
@staticmethod
def _verify_token(token, key: Union[str, jwk.JWK, jwk.JWKSet, None], **kwargs):
def _verify_token(token, key: Union[jwk.JWK, jwk.JWKSet, None], **kwargs):
# keep the function free of IO
# this way it can be used by `decode_token` and `a_decode_token`
if isinstance(key, str):
key = "-----BEGIN PUBLIC KEY-----\n" + key + "\n-----END PUBLIC KEY-----"
key = jwk.JWK.from_pem(key.encode("utf-8"))
if key is not None:
leeway = kwargs.pop("leeway", 60)
@ -625,7 +622,12 @@ class KeycloakOpenID:
key = kwargs.pop("key", None)
if validate:
if key is None:
key = self.public_key()
key = (
"-----BEGIN PUBLIC KEY-----\n"
+ self.public_key()
+ "\n-----END PUBLIC KEY-----"
)
key = jwk.JWK.from_pem(key.encode("utf-8"))
else:
key = None
@ -1264,7 +1266,12 @@ class KeycloakOpenID:
key = kwargs.pop("key", None)
if validate:
if key is None:
key = await self.a_public_key()
key = (
"-----BEGIN PUBLIC KEY-----\n"
+ await self.a_public_key()
+ "\n-----END PUBLIC KEY-----"
)
key = jwk.JWK.from_pem(key.encode("utf-8"))
else:
key = None

Loading…
Cancel
Save