From 01775bc95f551b506889b99352f711d9fc7b5cc2 Mon Sep 17 00:00:00 2001 From: Ishaan Jaff Date: Tue, 11 Mar 2025 11:07:42 -0700 Subject: [PATCH] don't show test key page to internal user --- ui/litellm-dashboard/src/components/leftnav.tsx | 4 ++-- ui/litellm-dashboard/src/utils/roles.ts | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/ui/litellm-dashboard/src/components/leftnav.tsx b/ui/litellm-dashboard/src/components/leftnav.tsx index 0bf5da57c6f..5990a50f9e5 100644 --- a/ui/litellm-dashboard/src/components/leftnav.tsx +++ b/ui/litellm-dashboard/src/components/leftnav.tsx @@ -21,7 +21,7 @@ import { ExperimentOutlined, ThunderboltOutlined, } from '@ant-design/icons'; -import { old_admin_roles, v2_admin_role_names, all_admin_roles, rolesAllowedToSeeUsage } from '../utils/roles'; +import { old_admin_roles, v2_admin_role_names, all_admin_roles, rolesAllowedToSeeUsage, rolesWithWriteAccess } from '../utils/roles'; const { Sider } = Layout; @@ -45,7 +45,7 @@ interface MenuItem { // Note: If a menu item does not have a role, it is visible to all roles. const menuItems: MenuItem[] = [ { key: "1", page: "api-keys", label: "Virtual Keys", icon: }, - { key: "3", page: "llm-playground", label: "Test Key", icon: }, + { key: "3", page: "llm-playground", label: "Test Key", icon: , roles: rolesWithWriteAccess }, { key: "2", page: "models", label: "Models", icon: , roles: all_admin_roles }, { key: "4", page: "usage", label: "Usage", icon: }, { key: "6", page: "teams", label: "Teams", icon: }, diff --git a/ui/litellm-dashboard/src/utils/roles.ts b/ui/litellm-dashboard/src/utils/roles.ts index 8ac2d7632ba..a50f06697b6 100644 --- a/ui/litellm-dashboard/src/utils/roles.ts +++ b/ui/litellm-dashboard/src/utils/roles.ts @@ -4,4 +4,5 @@ export const v2_admin_role_names = ["proxy_admin", "proxy_admin_viewer", "org_ad export const all_admin_roles = [...old_admin_roles, ...v2_admin_role_names]; export const internalUserRoles = ["Internal User", "Internal Viewer"]; -export const rolesAllowedToSeeUsage = ["Admin", "Admin Viewer", "Internal User", "Internal Viewer"]; \ No newline at end of file +export const rolesAllowedToSeeUsage = ["Admin", "Admin Viewer", "Internal User", "Internal Viewer"]; +export const rolesWithWriteAccess = ["Internal User", "Admin"]; \ No newline at end of file