|
import os |
|
from fastapi import Depends |
|
from supabase import create_client |
|
from core import logging as logger |
|
from core.utils.error_handling import create_error_response, raise_http_exception |
|
from fastapi.security import HTTPAuthorizationCredentials, HTTPBearer |
|
from dotenv import load_dotenv |
|
load_dotenv() |
|
|
|
security = HTTPBearer() |
|
|
|
supabase_client = create_client( |
|
os.getenv("SUPABASE_URL"), |
|
os.getenv("SUPABASE_KEY") |
|
) |
|
|
|
|
|
async def access_check_bearer(credentials: HTTPAuthorizationCredentials = Depends(security)): |
|
access_token = credentials.credentials |
|
try: |
|
supabase_client.auth.get_user(access_token) |
|
|
|
except Exception as e: |
|
logger.info(f">>> Invalid access token {e}<<<") |
|
raise_http_exception(code=401, |
|
message="Invalid Access Token", details=[ |
|
{"info": "Invalid access token or access token expired please login again"}]) |
|
|