INNER CODE UNIT · Python
_get_secret_key
IndominusByte/fastapi-jwt-auth · fastapi_jwt_auth/auth_jwt.py:76
def _get_secret_key(self, algorithm: str, process: str) -> str:
"""
Get key with a different algorithm
:param algorithm: algorithm for decode and encode token
:param process: for indicating get key for encode or decode token
:return: plain text or RSA depends on algorithm
"""
symmetric_algorithms, asymmetric_algorithms = {"HS256","HS384","HS512"}, requires_cryptography
if algorithm not in symmetric_algorithms and algorithm not in asymmetric_algorithms:
raise ValueError("Algorithm {} could not be found".format(algorithm))
if algorithm in symmetric_algorithms:
if not self._secret_key:
raise RuntimeError(
"authjwt_secret_key must be set when using symmetric algorithm {}".format(algorithm)