26 lines
509 B
Python
26 lines
509 B
Python
import csv
|
|
import jwt
|
|
import time
|
|
|
|
|
|
def load_api_key(csv_path="apiKey.csv"):
|
|
with open(csv_path, newline="", encoding="utf-8") as f:
|
|
reader = csv.DictReader(f)
|
|
return next(reader)
|
|
|
|
|
|
def generate_token():
|
|
data = load_api_key()
|
|
|
|
identity = data["identity"]
|
|
secret = data["secret"]
|
|
|
|
iat = int(time.time())
|
|
exp = iat + 60 # <= 64 сек
|
|
|
|
payload = {"iss": identity, "iat": iat, "exp": exp}
|
|
|
|
token = jwt.encode(payload, secret, algorithm="HS512")
|
|
|
|
return token
|