update permission

This commit is contained in:
Liujian
2024-10-28 18:27:37 +08:00
parent 9526fa294a
commit 66559785ea
4 changed files with 292 additions and 380 deletions
+16 -19
View File
@@ -85,10 +85,7 @@ func (i *imlProviderModule) Providers(ctx context.Context) ([]*ai_dto.ProviderIt
})
items := make([]*ai_dto.ProviderItem, 0, len(providers))
for _, v := range providers {
defaultLLM, has := v.DefaultModel(model_runtime.ModelTypeLLM)
if !has {
continue
}
item := &ai_dto.ProviderItem{
Id: v.ID(),
Name: v.Name(),
@@ -97,6 +94,10 @@ func (i *imlProviderModule) Providers(ctx context.Context) ([]*ai_dto.ProviderIt
Sort: v.Sort(),
}
if info, has := providerMap[v.ID()]; has {
defaultLLM, has := v.GetModel(info.DefaultLLM)
if !has {
continue
}
item.Configured = true
item.DefaultLLM = defaultLLM.ID()
item.DefaultLLMLogo = defaultLLM.Logo()
@@ -279,10 +280,13 @@ func (i *imlProviderModule) UpdateProviderConfig(ctx context.Context, id string,
if !errors.Is(err, gorm.ErrRecordNotFound) {
return err
}
//defaultLLm, ok := p.DefaultModel(model_runtime.ModelTypeLLM)
//if !ok {
// return fmt.Errorf("ai provider default llm not found")
//}
if input.DefaultLLM == "" {
defaultLLM, has := p.DefaultModel(model_runtime.ModelTypeLLM)
if !has {
return fmt.Errorf("ai provider default llm not found")
}
input.DefaultLLM = defaultLLM.ID()
}
info = &ai.Provider{
Id: id,
Name: p.Name(),
@@ -344,20 +348,13 @@ func (i *imlProviderModule) UpdateProviderDefaultLLM(ctx context.Context, id str
})
}
func (i *imlProviderModule) getAiProviders(ctx context.Context, clusterId string) ([]*gateway.DynamicRelease, error) {
list, err := i.providerService.List(ctx, clusterId)
if err != nil {
return nil, err
}
func (i *imlProviderModule) getAiProviders(ctx context.Context) ([]*gateway.DynamicRelease, error) {
list, err := i.providerService.List(ctx)
if err != nil {
return nil, err
}
providers := make([]*gateway.DynamicRelease, 0, len(list))
for _, p := range list {
if !p.Status {
// 关闭
continue
}
cfg := make(map[string]interface{})
err = json.Unmarshal([]byte(p.Config), &cfg)
if err != nil {
@@ -380,7 +377,7 @@ func (i *imlProviderModule) getAiProviders(ctx context.Context, clusterId string
return providers, nil
}
func (i *imlProviderModule) initGateway(ctx context.Context, clusterId string, clientDriver gateway.IClientDriver) error {
providers, err := i.getAiProviders(ctx, clusterId)
providers, err := i.getAiProviders(ctx)
if err != nil {
return err
}
@@ -397,7 +394,7 @@ func (i *imlProviderModule) initGateway(ctx context.Context, clusterId string, c
if err != nil {
return err
}
err = client.Online(ctx, providers...)
err = client.Online(ctx, p)
if err != nil {
return err
}
+152 -235
View File
@@ -1,21 +1,75 @@
system:
- name: organization
# cname: '组织管理'
value: 'organization'
- name: workspace
value: 'workspace'
children:
- name: member
# cname: '成员'
value: 'member'
- name: consumer
value: 'application'
children:
- name: view all consumer
value: 'view_all'
guest_allow: true
- name: manager all consumer
value: "manager_all"
dependents:
- system.workspace.consumer.view_all
- name: service
value: 'service'
children:
- name: view all service
value: 'view_all'
guest_allow: true
- name: manager all consumer
value: "manager_all"
dependents:
- system.workspace.service.view_all
- name: team
value: 'team'
children:
- name: view all team
value: 'view_all'
guest_allow: true
- name: create
value: 'create'
- name: manager
value: 'manager'
dependents:
- system.workspace.team.view_all
- name: api portal
value: 'api_portal'
children:
- name: api portal
value: 'api_portal'
children:
- name: view
value: 'view'
guest_allow: true
- name: analysis
value: 'analysis'
children:
- name: run view
value: 'run_view'
children:
- name: view
value: 'view'
guest_allow: true
- name: system settings
value: 'settings'
children:
- name: general
value: 'general'
children:
- name: view
value: 'view'
guest_allow: true
- name: manager
value: 'manager'
- name: account
value: 'account'
children:
- name: view
# cname: '查看'
value: 'view'
guest_allow: true
apis:
- "GET:/api/v1/user/accounts"
- "GET:/api/v1/user/departments"
- name: manager
# cname: '管理'
value: 'manager'
apis:
- "POST:/api/v1/user/account"
@@ -31,93 +85,20 @@ system:
- "POST:/api/v1/user/department/member/remove"
- "POST:/api/v1/account/role"
dependents:
- system.organization.member.view
- name: team
cname: '团队'
value: 'team'
children:
- name: view
# cname: '查看'
value: 'view'
guest_allow: true
apis:
- "GET:/api/v1/manager/teams"
- "GET:/api/v1/manager/team"
- name: manager
# cname: '管理'
value: 'manager'
apis:
- "POST:/api/v1/manager/team"
- "PUT:/api/v1/manager/team"
- "DELETE:/api/v1/manager/team"
dependents:
- system.organization.team.view
- system.settings.account.view
- name: role
# cname: '角色'
value: 'role'
children:
- name: view system role
cname: '查看系统角色'
- name: view
guest_allow: true
value: 'view_system_role'
value: 'view'
apis:
- "GET:/api/v1/system/roles"
- "GET:/api/v1/system/role"
- name: view team role
cname: '查看团队角色'
guest_allow: true
value: 'view_team_role'
apis:
- "GET:/api/v1/team/roles"
- "GET:/api/v1/team/role"
- name: System Settings
# cname: '系统设置'
value: 'settings'
children:
- name: service classification
# cname: '服务分类'
value: 'service_classification'
children:
- name: view
# cname: '查看'
value: 'view'
guest_allow: true
# apis:
# - "GET:/api/v1/catalogues"
- name: manager
# cname: '管理'
value: 'manager'
apis:
- "POST:/api/v1/catalogue"
- "PUT:/api/v1/catalogue"
- "DELETE:/api/v1/catalogue"
- "PUT:/api/v1/catalogue/sort"
dependents:
- system.settings.service_classification.view
- name: General
# cname: 常规设置
value: 'general'
children:
- name: view
# cname: 查看
value: 'view'
guest_allow: true
apis:
# - "GET:/api/v1/setting"
- name: manager
# cname: 管理
value: 'manager'
apis:
# - "PUT:/api/v1/setting"
dependents:
- system.settings.general.view
- name: Devops
# cname: 运维
value: 'devops'
children:
- name: cluster
cname: 集群
value: 'cluster'
- name: api gateway
value: 'api_gateway'
children:
- name: view
cname: 查看
@@ -126,53 +107,63 @@ system:
apis:
- "GET:/api/v1/cluster/nodes"
- name: manager
# cname: 管理
value: 'manager'
apis:
- "PUT:/api/v1/cluster/reset"
- "POST:/api/v1/cluster/check"
- name: ai provider
value: 'ai_provider'
children:
- name: view
value: 'view'
guest_allow: true
apis:
- "GET:/api/v1/ai/providers"
- "GET:/api/v1/ai/provider/config"
- name: manager
value: 'manager'
apis:
- "PUT:/api/v1/ai/provider/config"
- "PUT:/api/v1/ai/provider/default-llm"
dependents:
- system.settings.ai_provider.view
- name: ssl certificate
cname: 证书
value: 'ssl_certificate'
children:
- name: view
# cname: 查看
value: 'view'
guest_allow: true
apis:
- "GET:/api/v1/certificates"
- "GET:/api/v1/certificate"
- name: manager
# cname: 管理
value: 'manager'
apis:
- "POST:/api/v1/certificate"
- "PUT:/api/v1/certificate"
- "DELETE:/api/v1/certificate"
dependents:
- system.devops.ssl_certificate.view
- name: Data Source
# cname: '数据源'
- system.settings.ssl_certificate.view
- name: data source
value: 'data_source'
children:
- name: view
# cname: '查看'
value: 'view'
guest_allow: true
apis:
- "GET:/api/v1/monitor/config"
- name: manager
# cname: '管理'
value: 'manager'
apis:
- "POST:/api/v1/monitor/config"
- "PUT:/api/v1/monitor/config"
dependents:
- system.settings.data_source.view
- name: log configuration
# cname: 日志
value: 'log_configuration'
children:
- name: view
# cname: 查看
value: 'view'
guest_allow: true
apis:
@@ -180,7 +171,6 @@ system:
- "GET:/api/v1/dynamic/{name}/list"
- "GET:/api/v1/dynamic/{name}/render"
- name: manager
# cname: 管理
value: 'manager'
apis:
- "POST:/api/v1/dynamic/{name}"
@@ -189,93 +179,13 @@ system:
- "PUT:/api/v1/dynamic/{name}/online"
- "PUT:/api/v1/dynamic/{name}/offline"
dependents:
- system.devops.log_configuration.view
- name: ai provider
# cname: AI 模型供应商
value: 'ai_provider'
children:
- name: view
# cname: 查看
value: 'view'
guest_allow: true
apis:
- "GET:/api/v1/ai/providers"
- "GET:/api/v1/ai/provider/config"
- name: manager
# cname: 管理
value: 'manager'
apis:
- "PUT:/api/v1/ai/provider/config"
- "PUT:/api/v1/ai/provider/default-llm"
dependents:
- system.devops.ai_provider.view
- name: dashboard
# cname: 仪表盘
value: 'dashboard'
children:
- name: run view
# cname: 运行视图
value: 'run_view'
children:
- name: view
# cname: 查看
value: 'view'
guest_allow: true
apis:
- "GET:/api/v1/monitor/overview/invoke"
- "GET:/api/v1/monitor/overview/message"
- "GET:/api/v1/monitor/overview/top10"
- "GET:/api/v1/monitor/overview/summary"
- name: workspace
# cname: 工作空间
value: 'workspace'
children:
- name: application
# cname: 应用
value: 'application'
children:
- name: view all application
# cname: 查看所有应用
value: 'view_all'
guest_allow: true
apis:
- "GET:/api/v1/apps"
- name: service
# cname: 服务
value: 'service'
children:
- name: view all service
# cname: 查看所有服务
value: 'view_all'
guest_allow: true
apis:
- "GET:/api/v1/services"
- name: team
# cname: 团队
value: 'team'
children:
- name: view all team
# cname: 查看所有团队
value: 'view_all'
guest_allow: true
apis:
- "GET:/api/v1/manager/teams"
- name: api market
value: 'api_market'
children:
- name: view
value: 'view'
guest_allow: true
apis:
- "GET:/api/v1/catalogue/services"
- "GET:/api/v1/catalogue/service"
- system.settings.log_configuration.view
team:
- name: service
value: 'service'
children:
- name: router
value: 'router'
- name: api
value: 'api'
children:
- name: view
value: 'view'
@@ -291,43 +201,53 @@ team:
- "POST:/api/v1/service/router"
- "PUT:/api/v1/service/router"
- "DELETE:/api/v1/service/router"
dependents:
- team.service.api.view
- name: api doc
cname: API文档
value: 'api_doc'
children:
- name: view
# cname: 查看
value: 'view'
guest_allow: true
apis:
- "GET:/api/v1/service/api_doc"
- name: manager
# cname: 管理
value: 'manager'
apis:
- "PUT:/api/v1/service/api_doc"
- "POST:/api/v1/service/api_doc/upload"
dependents:
- team.service.api_doc.view
- name: service intro
value: 'service_intro'
children:
- name: view
value: 'view'
guest_allow: true
- name: manager
value: 'manager'
dependents:
- team.service.service_intro.view
- name: upstream
cname: 上游
value: 'upstream'
children:
- name: view
# cname: 查看
value: 'view'
guest_allow: true
apis:
- "GET:/api/v1/service/upstream"
- name: manager
# cname: 管理
value: 'manager'
apis:
- "PUT:/api/v1/service/upstream"
dependents:
- team.service.upstream.view
- name: release
# cname: 发布
value: 'release'
children:
- name: view
# cname: 查看
value: 'view'
guest_allow: true
apis:
@@ -338,18 +258,16 @@ team:
- "GET:/api/v1/service/release/preview"
- "GET:/api/v1/service/publish/status"
- name: manager
# cname: 管理
value: 'manager'
apis:
- "POST:/api/v1/service/publish/release/do"
# - "PUT:/api/v1/service/publish/execute"
- "DELETE:/api/v1/service/release"
- name: subscription management
# cname: 订阅方管理
dependents:
- team.service.release.view
- name: subscription review
value: 'subscription'
children:
- name: view
# cname: 查看
value: 'view'
guest_allow: true
apis:
@@ -357,50 +275,48 @@ team:
- "GET:/api/v1/service/approval/subscribe"
- "GET:/api/v1/service/subscribers"
- name: manager
# cname: 管理
value: 'manager'
apis:
- "POST:/api/v1/service/approval/subscribe"
- "POST:/api/v1/service/subscriber"
- "DELETE:/api/v1/service/subscriber"
dependents:
- team.service.subscription.view
- name: service
# cname: 服务管理
value: 'service'
children:
- name: manager
# cname: 管理
value: 'manager'
apis:
- "PUT:/api/v1/service/info"
- "POST:/api/v1/team/service"
- "DELETE:/api/v1/team/service"
- name: application
cname: 应用
value: 'application'
dependents:
- team.service.service.manager
- name: consumer
value: 'consumer'
children:
- name: subscription Service
- name: subscription service
cname: 订阅服务
value: 'subscription'
children:
- name: view
# cname: 查看
value: 'view'
- name: allow subscribe service
value: 'subscribe'
- name: view subscribed services
value: 'view_subscribed_service'
guest_allow: true
apis:
- "GET:/api/v1/application/subscriptions"
- name: manager
# cname: 管理
value: 'manager'
- "GET:/api/v1/application/subscription"
- name: manager subscribed services
value: 'manager_subscribed_services'
apis:
- "POST:/api/v1/catalogue/service/subscribe"
- "POST:/api/v1/application/subscription/cancel"
- "POST:/api/v1/application/subscription/cancel_apply"
- name: authorization
# cname: 访问授权
value: 'authorization'
children:
- name: view
# cname: 查看
value: 'view'
guest_allow: true
apis:
@@ -408,60 +324,61 @@ team:
- "GET:/api/v1/app/authorizations"
- "GET:/api/v1/app/authorization/details"
- name: manager
# cname: 管理
value: 'manager'
apis:
- "POST:/api/v1/app/authorization"
- "PUT:/api/v1/app/authorization"
- "DELETE:/api/v1/app/authorization"
- name: application
# cname: 应用
- name: consumer
value: 'application'
children:
- name: manager
# cname: 管理
value: 'manager'
apis:
- "PUT:/api/v1/app/info"
- "POST:/api/v1/team/app"
- "DELETE:/api/v1/app"
- name: team
# cname: 团队
value: 'team'
children:
- name: service
value: 'service'
children:
- name: view
value: 'view'
guest_allow: true
- name: manager
value: 'manager'
dependents:
- team.team.service.view
- name: consumer
value: 'consumer'
children:
- name: view
value: 'view'
guest_allow: true
- name: manager
value: 'manager'
dependents:
- team.team.consumer.view
- name: member
# cname: 成员
value: 'member'
children:
- name: view
# cname: 查看
value: 'view'
guest_allow: true
apis:
- "GET:/api/v1/team/members"
- "GET:/api/v1/team/members/toadd"
- name: manager
# cname: 管理
value: 'manager'
apis:
- "POST:/api/v1/team/member"
- "DELETE:/api/v1/team/member"
- "PUT:/api/v1/team/member/role"
- name: team
# cname: 团队管理
dependents:
- team.team.member.view
- name: team settings
value: 'team'
children:
- name: view
# cname: '查看'
value: 'view'
guest_allow: true
apis:
- "GET:/api/v1/manager/teams"
- "GET:/api/v1/manager/team"
- name: manager
# cname: '管理'
value: 'manager'
apis:
- "POST:/api/v1/manager/team"
- "PUT:/api/v1/manager/team"
- "DELETE:/api/v1/manager/team"
dependents:
- team.team.team.view
+104 -108
View File
@@ -2,163 +2,159 @@ system:
- name: super admin
value: super_admin
permits:
- system.dashboard.run_view.view
- system.devops.ai_provider.manager
- system.devops.ai_provider.view
- system.devops.cluster.manager
- system.devops.cluster.view
- system.devops.data_source.manager
- system.devops.data_source.view
- system.devops.log_configuration.manager
- system.devops.log_configuration.view
- system.devops.ssl_certificate.manager
- system.devops.ssl_certificate.view
- system.organization.member.manager
- system.organization.member.view
- system.organization.role.view_system_role
- system.organization.role.view_team_role
- system.organization.team.manager
- system.organization.team.view
- system.analysis.run_view.view
- system.api_portal.api_portal.view
- system.settings.account.manager
- system.settings.account.view
- system.settings.ai_provider.manager
- system.settings.ai_provider.view
- system.settings.api_gateway.manager
- system.settings.api_gateway.view
- system.settings.data_source.manager
- system.settings.data_source.view
- system.settings.general.manager
- system.settings.general.view
- system.settings.service_classification.manager
- system.settings.service_classification.view
- system.workspace.api_market.view
- system.settings.log_configuration.manager
- system.settings.log_configuration.view
- system.settings.role.view
- system.settings.ssl_certificate.manager
- system.settings.ssl_certificate.view
- system.workspace.application.manager_all
- system.workspace.application.view_all
- system.workspace.service.manager_all
- system.workspace.service.view_all
- system.workspace.team.create
- system.workspace.team.manager
- system.workspace.team.view_all
supper: true
- name: team admin
value: team_admin
permits:
- system.organization.role.view_team_role
- system.organization.team.manager
- system.organization.team.view
- system.workspace.api_market.view
- system.workspace.application.view_all
- system.workspace.service.view_all
- system.workspace.team.view_all
- system.api_portal.api_portal.view
- system.workspace.team.create
- name: devops admin
value: devops_admin
permits:
- system.dashboard.run_view.view
- system.devops.ai_provider.manager
- system.devops.ai_provider.view
- system.devops.cluster.manager
- system.devops.cluster.view
- system.devops.data_source.manager
- system.devops.data_source.view
- system.devops.log_configuration.manager
- system.devops.log_configuration.view
- system.devops.ssl_certificate.manager
- system.devops.ssl_certificate.view
- system.workspace.api_market.view
- system.analysis.run_view.view
- system.api_portal.api_portal.view
- system.settings.ai_provider.manager
- system.settings.ai_provider.view
- system.settings.api_gateway.manager
- system.settings.api_gateway.view
- system.settings.data_source.manager
- system.settings.data_source.view
- system.settings.general.manager
- system.settings.general.view
- system.settings.log_configuration.manager
- system.settings.log_configuration.view
- system.settings.ssl_certificate.manager
- system.settings.ssl_certificate.view
- system.workspace.application.view_all
- system.workspace.service.view_all
- system.workspace.team.view_all
- system.settings.general.manager
- system.settings.general.view
- system.settings.service_classification.manager
- system.settings.service_classification.view
- name: general member
value: member
permits:
- system.workspace.api_market.view
- system.api_portal.api_portal.view
default: true
- name: guest
value: guest
permits:
- system.settings.service_classification.view
- system.devops.cluster.view
- system.devops.log_configuration.view
- system.devops.ssl_certificate.view
- system.devops.monitor.view
- system.organization.member.view
- system.organization.role.view_system_role
- system.organization.role.view_team_role
- system.organization.team.view
- system.workspace.api_market.view
- system.workspace.application.view_all
- system.workspace.service.view_all
- system.workspace.team.view_all
- system.dashboard.run_view.view
team:
- name: team admin
value: team_admin
permits:
- team.application.application.manager
- team.application.authorization.manager
- team.application.authorization.view
- team.application.subscription.manager
- team.application.subscription.view
- team.service.api_doc.view
- team.consumer.application.manager
- team.consumer.authorization.manager
- team.consumer.authorization.view
- team.consumer.subscription.manager_subscribed_services
- team.consumer.subscription.subscribe
- team.consumer.subscription.view_subscribed_service
- team.service.api.manager
- team.service.api.view
- team.service.api_doc.manager
- team.service.router.manager
- team.service.router.view
- team.service.api_doc.view
- team.service.release.manager
- team.service.release.view
- team.service.service.manager
- team.service.service_intro.manager
- team.service.service_intro.view
- team.service.subscription.manager
- team.service.subscription.view
- team.service.upstream.manager
- team.service.upstream.view
- team.team.consumer.manager
- team.team.consumer.view
- team.team.member.manager
- team.team.member.view
- team.team.service.manager
- team.team.service.view
- team.team.team.manager
- team.team.team.view
supper: true
- name: service admin
value: service_admin
permits:
- team.service.service.manager
- team.service.upstream.manager
- team.service.upstream.view
- team.service.api_doc.view
- team.service.api.manager
- team.service.api.view
- team.service.api_doc.manager
- team.service.router.manager
- team.service.router.view
- team.service.subscription.manager
- team.service.subscription.view
- team.service.api_doc.view
- team.service.release.manager
- team.service.release.view
- team.service.service.manager
- team.service.service_intro.manager
- team.service.service_intro.view
- team.service.subscription.manager
- team.service.subscription.view
- team.service.upstream.manager
- team.service.upstream.view
- team.team.consumer.view
- team.team.member.view
- team.team.service.manager
- team.team.service.view
- team.team.team.view
- name: service developer
value: service_developer
permits:
- team.service.upstream.manager
- team.service.upstream.view
- team.service.api_doc.view
- team.service.api.manager
- team.service.api.view
- team.service.api_doc.manager
- team.service.router.manager
- team.service.router.view
- team.service.api_doc.view
- team.service.release.manager
- team.service.release.view
- team.team.member.view
- name: application admin
value: application_admin
permits:
- team.application.application.manager
- team.application.authorization.manager
- team.application.authorization.view
- team.application.subscription.manager
- team.application.subscription.view
- team.team.member.view
- name: application developer
value: application_developer
permits:
- team.application.authorization.view
- team.application.subscription.manager
- team.application.subscription.view
- team.team.member.view
default: true
- name: guest
value: guest
permits:
- team.application.authorization.view
- team.application.subscription.view
- team.service.router.view
- team.service.release.view
- team.service.service.manager
- team.service.service_intro.manager
- team.service.service_intro.view
- team.service.subscription.manager
- team.service.subscription.view
- team.service.upstream.manager
- team.service.upstream.view
- team.team.consumer.view
- team.team.member.view
- team.team.team.view
- team.team.service.view
- team.team.team.view
- name: consumer admin
value: consumer_admin
permits:
- team.consumer.application.manager
- team.consumer.authorization.manager
- team.consumer.authorization.view
- team.consumer.subscription.manager_subscribed_services
- team.consumer.subscription.subscribe
- team.consumer.subscription.view_subscribed_service
- team.team.consumer.manager
- team.team.consumer.view
- team.team.member.view
- team.team.service.view
- team.team.team.view
- name: consumer developer
value: consumer_developer
permits:
- team.consumer.application.manager
- team.consumer.authorization.manager
- team.consumer.authorization.view
- team.consumer.subscription.subscribe
- team.consumer.subscription.view_subscribed_service
- team.team.consumer.view
- team.team.member.view
- team.team.service.view
- team.team.team.view
default: true
+20 -18
View File
@@ -1,44 +1,46 @@
{
"ai provider": "AI供应商",
"api market": "API门户",
"account": "账号",
"ai provider": "AI模型供应商",
"analysis": "分析报告",
"api": "API",
"api doc": "API文档",
"application": "应用",
"application admin": "应用管理员",
"application developer": "应用开发者",
"authorization": "鉴权",
"cluster": "集群",
"dashboard": "仪表盘",
"api gateway": "API网关",
"api portal": "API门户",
"authorization": "访问授权",
"consumer": "消费者",
"consumer admin": "消费者管理员",
"consumer developer": "消费者开发者",
"create": "创建",
"data source": "数据源",
"devops": "运维",
"devops admin": "运维管理员",
"general": "常规设置",
"general member": "普通成员",
"guest": "访客",
"log configuration": "日志配置",
"manager": "管理",
"manager all consumer": "管理所有消费者",
"manager subscribed services": "管理已订阅的服务",
"member": "成员",
"organization": "组织管理",
"release": "发布",
"role": "角色",
"router": "路由",
"run view": "运行视图",
"service": "服务",
"service admin": "服务管理员",
"service classification": "服务目录",
"service developer": "服务开发者",
"service intro": "服务文档",
"ssl certificate": "SSL证书",
"subscription management": "订阅方管理",
"allow subscribe service": "允许订阅服务",
"subscription review": "订阅审核",
"subscription service": "订阅服务",
"super admin": "超级管理员",
"system settings": "系统设置",
"team": "团队",
"team settings": "团队设置",
"team admin": "团队管理员",
"upstream": "上游",
"view": "查看",
"view all application": "查看所有应用",
"view all consumer": "查看所有消费者",
"view all service": "查看所有服务",
"view all team": "查看所有团队",
"view system role": "查看系统角色",
"view team role": "查看团队角色",
"view subscribed services": "查看已经订阅的服务",
"workspace": "工作空间"
}
}