From c510f6bb18900e7d5e38b61e811a7e9068151347 Mon Sep 17 00:00:00 2001 From: Ishaan Jaff Date: Wed, 12 Jun 2024 17:42:08 -0700 Subject: [PATCH 1/4] fix - error internal users see on SSO --- litellm/proxy/_types.py | 1 + 1 file changed, 1 insertion(+) diff --git a/litellm/proxy/_types.py b/litellm/proxy/_types.py index 1930a0faa34..ccc8ed34792 100644 --- a/litellm/proxy/_types.py +++ b/litellm/proxy/_types.py @@ -224,6 +224,7 @@ class LiteLLMRoutes(enum.Enum): "/key/delete", "/global/spend/logs", "/global/predict/spend/logs", + "/sso/get/logout_url", ] management_routes: List = [ # key From 18b28a1631a5b98f038d083ec0dad64b6d3cd6a6 Mon Sep 17 00:00:00 2001 From: Ishaan Jaff Date: Wed, 12 Jun 2024 19:30:37 -0700 Subject: [PATCH 2/4] fix - don't raise error when logout url does not load --- ui/litellm-dashboard/src/components/networking.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/ui/litellm-dashboard/src/components/networking.tsx b/ui/litellm-dashboard/src/components/networking.tsx index 4a53df12bac..0f03b9fe0ac 100644 --- a/ui/litellm-dashboard/src/components/networking.tsx +++ b/ui/litellm-dashboard/src/components/networking.tsx @@ -2405,7 +2405,6 @@ export const getProxyBaseUrlAndLogoutUrl = async ( if (!response.ok) { const errorData = await response.text(); - message.error(errorData, 10); throw new Error("Network response was not ok"); } From 8987f16507a380ed914c31aae6834afa5e6eb2c3 Mon Sep 17 00:00:00 2001 From: Ishaan Jaff Date: Wed, 12 Jun 2024 19:37:58 -0700 Subject: [PATCH 3/4] fix - sso pass correct role for user --- litellm/proxy/proxy_server.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/litellm/proxy/proxy_server.py b/litellm/proxy/proxy_server.py index 789acf89d0c..1bba35c82a6 100644 --- a/litellm/proxy/proxy_server.py +++ b/litellm/proxy/proxy_server.py @@ -879,6 +879,7 @@ async def user_api_key_auth( ## check for cache hit (In-Memory Cache) original_api_key = api_key # (Patch: For DynamoDB Backwards Compatibility) + _user_role = None if api_key.startswith("sk-"): api_key = hash_token(token=api_key) valid_token: Optional[UserAPIKeyAuth] = user_api_key_cache.get_cache( # type: ignore @@ -1512,7 +1513,7 @@ async def user_api_key_auth( ): return UserAPIKeyAuth( api_key=api_key, - user_role="app_owner", + user_role=_user_role, parent_otel_span=parent_otel_span, **valid_token_dict, ) From 490f5265ac2e5fa9eef5a42688b567d113930c65 Mon Sep 17 00:00:00 2001 From: Ishaan Jaff Date: Wed, 12 Jun 2024 19:38:31 -0700 Subject: [PATCH 4/4] fix model hub not loading --- litellm/router.py | 1 + 1 file changed, 1 insertion(+) diff --git a/litellm/router.py b/litellm/router.py index 251c9eebcd2..4d7a36a3865 100644 --- a/litellm/router.py +++ b/litellm/router.py @@ -3618,6 +3618,7 @@ class Router: except Exception: model_info = None # get llm provider + model, llm_provider = "", "" try: model, llm_provider, _, _ = litellm.get_llm_provider( model=litellm_params.model,