Update: Add variable

oh_security
TAMDeveloper13 2 months ago
parent 2919660504
commit e291959508

@ -1,7 +1,10 @@
from typing import Optional
from pydantic import BaseModel
class UserBase(BaseModel):
name: str
# Some users from auth service may not have a display name.
name: Optional[str] = None
role: str
user_id: str

@ -42,7 +42,10 @@ class JWTBearer(HTTPBearer):
user_info, message = self.verify_jwt(credentials.credentials, method, endpoint)
if not user_info:
message = message.get("message", "Invalid token or expired token.")
if isinstance(message, dict):
message = message.get("message") or message.get("detail") or "Invalid token or expired token."
else:
message = str(message) if message else "Invalid token or expired token."
raise HTTPException(
status_code=401, detail=message
)
@ -52,10 +55,9 @@ class JWTBearer(HTTPBearer):
from src.context import set_user_id, set_username, set_role
if hasattr(message, "user_id"):
set_user_id(str(message.user_id))
if hasattr(message, "username"):
set_username(message.username)
elif hasattr(message, "name"):
set_username(message.name)
username = getattr(message, "username", None) or getattr(message, "name", None)
if username:
set_username(username)
if hasattr(message, "role"):
set_role(message.role)

Loading…
Cancel
Save