(feat) proxy use jwts for UI

This commit is contained in:
ishaan-jaff 2024-01-31 18:13:00 -08:00
parent 1cc7c50680
commit 7d244ca710

View file

@ -3143,7 +3143,7 @@ async def auth_callback(request: Request):
user_id = getattr(result, "first_name", "") + getattr(result, "last_name", "") user_id = getattr(result, "first_name", "") + getattr(result, "last_name", "")
response = await generate_key_helper_fn( response = await generate_key_helper_fn(
**{"duration": "24hr", "models": [], "aliases": {}, "config": {}, "spend": 0, "user_id": user_id, "team_id": "litellm-dashboard"} # type: ignore **{"duration": "1hr", "models": [], "aliases": {}, "config": {}, "spend": 0, "user_id": user_id, "team_id": "litellm-dashboard"} # type: ignore
) )
key = response["token"] # type: ignore key = response["token"] # type: ignore
@ -3163,11 +3163,16 @@ async def auth_callback(request: Request):
else: else:
proxy_base_url += "/ui" proxy_base_url += "/ui"
litellm_dashboard_ui = proxy_base_url litellm_dashboard_ui = proxy_base_url
import jwt
jwt_token = jwt.encode(
{"user_id": user_id, "key": key}, "secret", algorithm="HS256"
)
litellm_dashboard_ui += ( litellm_dashboard_ui += (
"?userID=" "?userID="
+ user_id + user_id
+ "&accessToken=" + "&token="
+ key + jwt_token
+ "&proxyBaseUrl=" + "&proxyBaseUrl="
+ os.getenv("PROXY_BASE_URL") + os.getenv("PROXY_BASE_URL")
) )