LehongWu's picture
Upload folder using huggingface_hub
982bad4 verified
"""Signed bearer tokens when session cookies are not stored (e.g. some HF Space proxies)."""
from itsdangerous import BadSignature, SignatureExpired, URLSafeTimedSerializer
from web.backend.config import get_session_secret
_MAX_AGE = 14 * 24 * 3600
def create_auth_token() -> str:
s = URLSafeTimedSerializer(get_session_secret())
return s.dumps({"web_auth": True, "v": 1})
def verify_auth_token(token: str) -> bool:
try:
s = URLSafeTimedSerializer(get_session_secret())
data = s.loads(token, max_age=_MAX_AGE)
return (
isinstance(data, dict)
and data.get("v") == 1
and data.get("web_auth") is True
)
except (BadSignature, SignatureExpired):
return False