mirror of
https://github.com/Tautulli/Tautulli.git
synced 2025-07-06 05:01:14 -07:00
Bump pyjwt from 2.9.0 to 2.10.0 (#2441)
* Bump pyjwt from 2.9.0 to 2.10.0 Bumps [pyjwt](https://github.com/jpadilla/pyjwt) from 2.9.0 to 2.10.0. - [Release notes](https://github.com/jpadilla/pyjwt/releases) - [Changelog](https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst) - [Commits](https://github.com/jpadilla/pyjwt/compare/2.9.0...2.10.0) --- updated-dependencies: - dependency-name: pyjwt dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Update pyjwt==2.10.0 --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com> [skip ci]
This commit is contained in:
parent
feca713b76
commit
dd9a35df51
9 changed files with 152 additions and 59 deletions
|
@ -297,7 +297,7 @@ class HMACAlgorithm(Algorithm):
|
|||
else:
|
||||
raise ValueError
|
||||
except ValueError:
|
||||
raise InvalidKeyError("Key is not valid JSON")
|
||||
raise InvalidKeyError("Key is not valid JSON") from None
|
||||
|
||||
if obj.get("kty") != "oct":
|
||||
raise InvalidKeyError("Not an HMAC key")
|
||||
|
@ -346,7 +346,9 @@ if has_crypto:
|
|||
try:
|
||||
return cast(RSAPublicKey, load_pem_public_key(key_bytes))
|
||||
except (ValueError, UnsupportedAlgorithm):
|
||||
raise InvalidKeyError("Could not parse the provided public key.")
|
||||
raise InvalidKeyError(
|
||||
"Could not parse the provided public key."
|
||||
) from None
|
||||
|
||||
@overload
|
||||
@staticmethod
|
||||
|
@ -409,10 +411,10 @@ if has_crypto:
|
|||
else:
|
||||
raise ValueError
|
||||
except ValueError:
|
||||
raise InvalidKeyError("Key is not valid JSON")
|
||||
raise InvalidKeyError("Key is not valid JSON") from None
|
||||
|
||||
if obj.get("kty") != "RSA":
|
||||
raise InvalidKeyError("Not an RSA key")
|
||||
raise InvalidKeyError("Not an RSA key") from None
|
||||
|
||||
if "d" in obj and "e" in obj and "n" in obj:
|
||||
# Private key
|
||||
|
@ -428,7 +430,7 @@ if has_crypto:
|
|||
if any_props_found and not all(props_found):
|
||||
raise InvalidKeyError(
|
||||
"RSA key must include all parameters if any are present besides d"
|
||||
)
|
||||
) from None
|
||||
|
||||
public_numbers = RSAPublicNumbers(
|
||||
from_base64url_uint(obj["e"]),
|
||||
|
@ -520,7 +522,7 @@ if has_crypto:
|
|||
):
|
||||
raise InvalidKeyError(
|
||||
"Expecting a EllipticCurvePrivateKey/EllipticCurvePublicKey. Wrong key provided for ECDSA algorithms"
|
||||
)
|
||||
) from None
|
||||
|
||||
return crypto_key
|
||||
|
||||
|
@ -581,13 +583,20 @@ if has_crypto:
|
|||
obj: dict[str, Any] = {
|
||||
"kty": "EC",
|
||||
"crv": crv,
|
||||
"x": to_base64url_uint(public_numbers.x).decode(),
|
||||
"y": to_base64url_uint(public_numbers.y).decode(),
|
||||
"x": to_base64url_uint(
|
||||
public_numbers.x,
|
||||
bit_length=key_obj.curve.key_size,
|
||||
).decode(),
|
||||
"y": to_base64url_uint(
|
||||
public_numbers.y,
|
||||
bit_length=key_obj.curve.key_size,
|
||||
).decode(),
|
||||
}
|
||||
|
||||
if isinstance(key_obj, EllipticCurvePrivateKey):
|
||||
obj["d"] = to_base64url_uint(
|
||||
key_obj.private_numbers().private_value
|
||||
key_obj.private_numbers().private_value,
|
||||
bit_length=key_obj.curve.key_size,
|
||||
).decode()
|
||||
|
||||
if as_dict:
|
||||
|
@ -605,13 +614,13 @@ if has_crypto:
|
|||
else:
|
||||
raise ValueError
|
||||
except ValueError:
|
||||
raise InvalidKeyError("Key is not valid JSON")
|
||||
raise InvalidKeyError("Key is not valid JSON") from None
|
||||
|
||||
if obj.get("kty") != "EC":
|
||||
raise InvalidKeyError("Not an Elliptic curve key")
|
||||
raise InvalidKeyError("Not an Elliptic curve key") from None
|
||||
|
||||
if "x" not in obj or "y" not in obj:
|
||||
raise InvalidKeyError("Not an Elliptic curve key")
|
||||
raise InvalidKeyError("Not an Elliptic curve key") from None
|
||||
|
||||
x = base64url_decode(obj.get("x"))
|
||||
y = base64url_decode(obj.get("y"))
|
||||
|
@ -623,17 +632,23 @@ if has_crypto:
|
|||
if len(x) == len(y) == 32:
|
||||
curve_obj = SECP256R1()
|
||||
else:
|
||||
raise InvalidKeyError("Coords should be 32 bytes for curve P-256")
|
||||
raise InvalidKeyError(
|
||||
"Coords should be 32 bytes for curve P-256"
|
||||
) from None
|
||||
elif curve == "P-384":
|
||||
if len(x) == len(y) == 48:
|
||||
curve_obj = SECP384R1()
|
||||
else:
|
||||
raise InvalidKeyError("Coords should be 48 bytes for curve P-384")
|
||||
raise InvalidKeyError(
|
||||
"Coords should be 48 bytes for curve P-384"
|
||||
) from None
|
||||
elif curve == "P-521":
|
||||
if len(x) == len(y) == 66:
|
||||
curve_obj = SECP521R1()
|
||||
else:
|
||||
raise InvalidKeyError("Coords should be 66 bytes for curve P-521")
|
||||
raise InvalidKeyError(
|
||||
"Coords should be 66 bytes for curve P-521"
|
||||
) from None
|
||||
elif curve == "secp256k1":
|
||||
if len(x) == len(y) == 32:
|
||||
curve_obj = SECP256K1()
|
||||
|
@ -834,7 +849,7 @@ if has_crypto:
|
|||
else:
|
||||
raise ValueError
|
||||
except ValueError:
|
||||
raise InvalidKeyError("Key is not valid JSON")
|
||||
raise InvalidKeyError("Key is not valid JSON") from None
|
||||
|
||||
if obj.get("kty") != "OKP":
|
||||
raise InvalidKeyError("Not an Octet Key Pair")
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue