更新平台治理

This commit is contained in:
wangjiming
2026-08-17 09:15:36 +08:00
parent de9c8e4ffe
commit 6c1bf61ff7
13 changed files with 561 additions and 339 deletions

View File

@@ -79,6 +79,7 @@ const menuGroups: MenuGroup[] = [
items: [
{ key: 'tenants', label: '租户管理', icon: 'fa-building', to: '/tenants', permission: 'user-settings' },
{ key: 'projects', label: '项目空间', icon: 'fa-folder', to: '/projects', permission: 'user-settings' },
{ key: 'resource-acl', label: '资源授权', icon: 'fa-key', to: '/resource-acl', permission: 'user-settings' },
{ key: 'audit-logs', label: '审计日志', icon: 'fa-history', to: '/audit-logs', permission: 'user-settings' },
{ key: 'approval-templates', label: '审批模板', icon: 'fa-list-alt', to: '/approval-templates', permission: 'user-settings' },
{ key: 'approval-instances', label: '审批中心', icon: 'fa-check-square', to: '/approval-instances', permission: 'user-settings' },
@@ -94,17 +95,30 @@ const menuGroups: MenuGroup[] = [
},
]
/**
* 菜单可见性过滤规则(基于 governance-user-guide.md 设计):
*
* 1. admin 用户:可以看到所有菜单
* 2. 非 admin 用户:
* - 默认可见所有业务菜单(模型训练、评测、推理、数据集、数据处理、转换、性能、日志等)
* - 仅以下菜单对非 admin 不可见:
* - user-settings用户设置、租户管理、项目空间、审批模板/中心、审计日志)
* - compute算力节点/GPU 分配)
*
* 注意移除了旧的权限码permission code过滤逻辑
* 非管理员用户默认拥有所有业务功能的访问权限。
*/
const ADMIN_ONLY_PERMISSIONS: PermissionCode[] = ['user-settings', 'compute']
const visibleMenuGroups = computed(() =>
menuGroups
.map((group) => ({
...group,
items: group.items.filter((item) => {
if (!auth.hasPermission(item.permission)) return false
// user-settings 权限对应的菜单仅管理员可见
if (item.permission === 'user-settings' && !auth.isAdmin) return false
// 算力节点仅管理员可见
if (item.permission === 'compute' && !auth.isAdmin) return false
return true
// admin 可以看到所有菜单
if (auth.isAdmin) return true
// 非 admin 用户:仅隐藏管理员专属菜单
return !ADMIN_ONLY_PERMISSIONS.includes(item.permission)
}),
}))
.filter((group) => group.items.length > 0),