2021-06-17 11:52:13 +02:00
|
|
|
from jose import JWTError, jwt
|
|
|
|
import werkzeug
|
|
|
|
import os
|
|
|
|
from loguru import logger
|
|
|
|
|
|
|
|
|
|
|
|
JWT_PUB_KEY = ""
|
|
|
|
try:
|
|
|
|
JWT_PUB_KEY = os.environ["JWT_PUB_KEY"]
|
|
|
|
except KeyError:
|
|
|
|
with open('/opt/app/config/authservice.pub', 'r') as f:
|
|
|
|
JWT_PUB_KEY = f.read()
|
|
|
|
|
|
|
|
|
|
|
|
def decodeToken(token):
|
|
|
|
try:
|
|
|
|
return jwt.decode(token, JWT_PUB_KEY, audience="hv2")
|
|
|
|
except JWTError as e:
|
|
|
|
logger.error("{}".format(e))
|
|
|
|
raise werkzeug.exceptions.Unauthorized()
|
|
|
|
|
2021-06-17 19:01:12 +02:00
|
|
|
|
2021-06-17 11:52:13 +02:00
|
|
|
def testToken(user, token_info):
|
2021-06-17 19:01:12 +02:00
|
|
|
return {
|
|
|
|
"message": f"You are user_id {user} and the provided token has been signed by this issuers. Fine.",
|
|
|
|
"details": token_info
|
|
|
|
}
|
2021-06-17 11:52:13 +02:00
|
|
|
|