mirror of
https://github.com/APIParkLab/APIPark.git
synced 2026-06-04 10:13:53 +08:00
update permit
This commit is contained in:
+59
-19
@@ -3,8 +3,9 @@ package access
|
||||
import (
|
||||
_ "embed"
|
||||
|
||||
yaml "gopkg.in/yaml.v3"
|
||||
|
||||
"github.com/eolinker/go-common/access"
|
||||
"gopkg.in/yaml.v3"
|
||||
)
|
||||
|
||||
type Access = access.Access
|
||||
@@ -24,22 +25,61 @@ func init() {
|
||||
access.Add(group, asl)
|
||||
|
||||
}
|
||||
//defaultRoles := access.Roles()
|
||||
//for group, rs := range defaultRoles {
|
||||
// p, has := access.GetPermit(group)
|
||||
// if !has {
|
||||
// continue
|
||||
// }
|
||||
//
|
||||
// for _, r := range rs {
|
||||
// for _, pm := range r.Permits {
|
||||
// apis, err := p.GetPermits(pm)
|
||||
// if err != nil {
|
||||
// continue
|
||||
// }
|
||||
// permit.AddPermitRule(pm, apis...)
|
||||
// }
|
||||
// }
|
||||
//
|
||||
//}
|
||||
}
|
||||
|
||||
const (
|
||||
SystemAnalysisRunViewView = "system.analysis.run_view.view"
|
||||
SystemApiPortalApiPortalView = "system.api_portal.api_portal.view"
|
||||
SystemSettingsAccountManager = "system.settings.account.manager"
|
||||
SystemSettingsAccountView = "system.settings.account.view"
|
||||
SystemSettingsAiProviderManager = "system.settings.ai_provider.manager"
|
||||
SystemSettingsAiProviderView = "system.settings.ai_provider.view"
|
||||
SystemSettingsApiGatewayManager = "system.settings.api_gateway.manager"
|
||||
SystemSettingsApiGatewayView = "system.settings.api_gateway.view"
|
||||
SystemSettingsDataSourceManager = "system.settings.data_source.manager"
|
||||
SystemSettingsDataSourceView = "system.settings.data_source.view"
|
||||
SystemSettingsGeneralManager = "system.settings.general.manager"
|
||||
SystemSettingsGeneralView = "system.settings.general.view"
|
||||
SystemSettingsLogConfigurationManager = "system.settings.log_configuration.manager"
|
||||
SystemSettingsLogConfigurationView = "system.settings.log_configuration.view"
|
||||
SystemSettingsRoleView = "system.settings.role.view"
|
||||
SystemSettingsSslCertificateManager = "system.settings.ssl_certificate.manager"
|
||||
SystemSettingsSslCertificateView = "system.settings.ssl_certificate.view"
|
||||
SystemWorkspaceApplicationManagerAll = "system.workspace.application.manager_all"
|
||||
SystemWorkspaceApplicationViewAll = "system.workspace.application.view_all"
|
||||
SystemWorkspaceServiceManagerAll = "system.workspace.service.manager_all"
|
||||
SystemWorkspaceServiceViewAll = "system.workspace.service.view_all"
|
||||
SystemWorkspaceTeamCreate = "system.workspace.team.create"
|
||||
SystemWorkspaceTeamManager = "system.workspace.team.manager"
|
||||
SystemWorkspaceTeamViewAll = "system.workspace.team.view_all"
|
||||
)
|
||||
|
||||
const (
|
||||
TeamConsumerApplicationManager = "team.consumer.application.manager"
|
||||
TeamConsumerAuthorizationManager = "team.consumer.authorization.manager"
|
||||
TeamConsumerAuthorizationView = "team.consumer.authorization.view"
|
||||
TeamConsumerSubscriptionManagerSubscribed = "team.consumer.subscription.manager_subscribed_services"
|
||||
TeamConsumerSubscriptionSubscribe = "team.consumer.subscription.subscribe"
|
||||
TeamConsumerSubscriptionViewSubscribed = "team.consumer.subscription.view_subscribed_service"
|
||||
TeamServiceApiManager = "team.service.api.manager"
|
||||
TeamServiceApiView = "team.service.api.view"
|
||||
TeamServiceApiDocManager = "team.service.api_doc.manager"
|
||||
TeamServiceApiDocView = "team.service.api_doc.view"
|
||||
TeamServiceReleaseManager = "team.service.release.manager"
|
||||
TeamServiceReleaseView = "team.service.release.view"
|
||||
TeamServiceServiceManager = "team.service.service.manager"
|
||||
TeamServiceServiceIntroManager = "team.service.service_intro.manager"
|
||||
TeamServiceServiceIntroView = "team.service.service_intro.view"
|
||||
TeamServiceSubscriptionManager = "team.service.subscription.manager"
|
||||
TeamServiceSubscriptionView = "team.service.subscription.view"
|
||||
TeamServiceUpstreamManager = "team.service.upstream.manager"
|
||||
TeamServiceUpstreamView = "team.service.upstream.view"
|
||||
TeamTeamConsumerManager = "team.team.consumer.manager"
|
||||
TeamTeamConsumerView = "team.team.consumer.view"
|
||||
TeamTeamMemberManager = "team.team.member.manager"
|
||||
TeamTeamMemberView = "team.team.member.view"
|
||||
TeamTeamServiceManager = "team.team.service.manager"
|
||||
TeamTeamServiceView = "team.team.service.view"
|
||||
TeamTeamTeamManager = "team.team.team.manager"
|
||||
TeamTeamTeamView = "team.team.team.view"
|
||||
)
|
||||
|
||||
@@ -71,19 +71,6 @@ system:
|
||||
guest_allow: true
|
||||
- name: manager
|
||||
value: 'manager'
|
||||
apis:
|
||||
- "POST:/api/v1/user/account"
|
||||
- "PUT:/api/v1/user/account"
|
||||
- "DELETE:/api/v1/user/account"
|
||||
- "POST:/api/v1/user/account/enable"
|
||||
- "POST:/api/v1/user/account/disable"
|
||||
- "POST:/api/v1/user/department"
|
||||
- "PUT:/api/v1/user/department"
|
||||
- "DELETE:/api/v1/user/department"
|
||||
- "POST:/api/v1/user/department/member"
|
||||
- "DELETE:/api/v1/user/department/member"
|
||||
- "POST:/api/v1/user/department/member/remove"
|
||||
- "POST:/api/v1/account/role"
|
||||
dependents:
|
||||
- system.settings.account.view
|
||||
- name: role
|
||||
@@ -92,11 +79,6 @@ system:
|
||||
- name: view
|
||||
guest_allow: true
|
||||
value: 'view'
|
||||
apis:
|
||||
- "GET:/api/v1/system/roles"
|
||||
- "GET:/api/v1/system/role"
|
||||
- "GET:/api/v1/team/roles"
|
||||
- "GET:/api/v1/team/role"
|
||||
- name: api gateway
|
||||
value: 'api_gateway'
|
||||
children:
|
||||
@@ -104,27 +86,18 @@ system:
|
||||
cname: 查看
|
||||
value: 'view'
|
||||
guest_allow: true
|
||||
apis:
|
||||
- "GET:/api/v1/cluster/nodes"
|
||||
- name: manager
|
||||
value: 'manager'
|
||||
apis:
|
||||
- "PUT:/api/v1/cluster/reset"
|
||||
- "POST:/api/v1/cluster/check"
|
||||
dependents:
|
||||
- system.settings.api_gateway.view
|
||||
- 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
|
||||
@@ -134,15 +107,8 @@ system:
|
||||
- name: view
|
||||
value: 'view'
|
||||
guest_allow: true
|
||||
apis:
|
||||
- "GET:/api/v1/certificates"
|
||||
- "GET:/api/v1/certificate"
|
||||
- name: manager
|
||||
value: 'manager'
|
||||
apis:
|
||||
- "POST:/api/v1/certificate"
|
||||
- "PUT:/api/v1/certificate"
|
||||
- "DELETE:/api/v1/certificate"
|
||||
dependents:
|
||||
- system.settings.ssl_certificate.view
|
||||
- name: data source
|
||||
@@ -151,13 +117,8 @@ system:
|
||||
- name: view
|
||||
value: 'view'
|
||||
guest_allow: true
|
||||
apis:
|
||||
- "GET:/api/v1/monitor/config"
|
||||
- name: manager
|
||||
value: 'manager'
|
||||
apis:
|
||||
- "POST:/api/v1/monitor/config"
|
||||
- "PUT:/api/v1/monitor/config"
|
||||
dependents:
|
||||
- system.settings.data_source.view
|
||||
- name: log configuration
|
||||
@@ -166,18 +127,8 @@ system:
|
||||
- name: view
|
||||
value: 'view'
|
||||
guest_allow: true
|
||||
apis:
|
||||
- "GET:/api/v1/dynamic/{name}/info"
|
||||
- "GET:/api/v1/dynamic/{name}/list"
|
||||
- "GET:/api/v1/dynamic/{name}/render"
|
||||
- name: manager
|
||||
value: 'manager'
|
||||
apis:
|
||||
- "POST:/api/v1/dynamic/{name}"
|
||||
- "PUT:/api/v1/dynamic/{name}/config"
|
||||
- "DELETE:/api/v1/dynamic/{name}/batch"
|
||||
- "PUT:/api/v1/dynamic/{name}/online"
|
||||
- "PUT:/api/v1/dynamic/{name}/offline"
|
||||
dependents:
|
||||
- system.settings.log_configuration.view
|
||||
team:
|
||||
@@ -190,17 +141,8 @@ team:
|
||||
- name: view
|
||||
value: 'view'
|
||||
guest_allow: true
|
||||
apis:
|
||||
- "GET:/api/v1/service/routers"
|
||||
- "GET:/api/v1/service/router/detail"
|
||||
- "GET:/api/v1/service/router/detail/simple"
|
||||
- "GET:/api/v1/service/router/define"
|
||||
- name: manager
|
||||
value: 'manager'
|
||||
apis:
|
||||
- "POST:/api/v1/service/router"
|
||||
- "PUT:/api/v1/service/router"
|
||||
- "DELETE:/api/v1/service/router"
|
||||
dependents:
|
||||
- team.service.api.view
|
||||
- name: api doc
|
||||
@@ -210,13 +152,8 @@ team:
|
||||
- name: view
|
||||
value: 'view'
|
||||
guest_allow: true
|
||||
apis:
|
||||
- "GET:/api/v1/service/api_doc"
|
||||
- name: manager
|
||||
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
|
||||
@@ -236,12 +173,8 @@ team:
|
||||
- name: view
|
||||
value: 'view'
|
||||
guest_allow: true
|
||||
apis:
|
||||
- "GET:/api/v1/service/upstream"
|
||||
- name: manager
|
||||
value: 'manager'
|
||||
apis:
|
||||
- "PUT:/api/v1/service/upstream"
|
||||
dependents:
|
||||
- team.service.upstream.view
|
||||
- name: release
|
||||
@@ -250,18 +183,8 @@ team:
|
||||
- name: view
|
||||
value: 'view'
|
||||
guest_allow: true
|
||||
apis:
|
||||
- "GET:/api/v1/service/releases"
|
||||
- "GET:/api/v1/service/release"
|
||||
- "GET:/api/v1/service/publishs"
|
||||
- "GET:/api/v1/service/publish/check"
|
||||
- "GET:/api/v1/service/release/preview"
|
||||
- "GET:/api/v1/service/publish/status"
|
||||
- name: manager
|
||||
value: 'manager'
|
||||
apis:
|
||||
- "POST:/api/v1/service/publish/release/do"
|
||||
- "DELETE:/api/v1/service/release"
|
||||
dependents:
|
||||
- team.service.release.view
|
||||
- name: subscription review
|
||||
@@ -270,16 +193,8 @@ team:
|
||||
- name: view
|
||||
value: 'view'
|
||||
guest_allow: true
|
||||
apis:
|
||||
- "GET:/api/v1/service/approval/subscribes"
|
||||
- "GET:/api/v1/service/approval/subscribe"
|
||||
- "GET:/api/v1/service/subscribers"
|
||||
- name: manager
|
||||
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
|
||||
@@ -287,10 +202,6 @@ team:
|
||||
children:
|
||||
- name: manager
|
||||
value: 'manager'
|
||||
apis:
|
||||
- "PUT:/api/v1/service/info"
|
||||
- "POST:/api/v1/team/service"
|
||||
- "DELETE:/api/v1/team/service"
|
||||
dependents:
|
||||
- team.service.service.manager
|
||||
- name: consumer
|
||||
@@ -305,38 +216,25 @@ team:
|
||||
- name: view subscribed services
|
||||
value: 'view_subscribed_service'
|
||||
guest_allow: true
|
||||
apis:
|
||||
- "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"
|
||||
dependents:
|
||||
- team.consumer.subscription.manager_subscribed_services
|
||||
- name: authorization
|
||||
value: 'authorization'
|
||||
children:
|
||||
- name: view
|
||||
value: 'view'
|
||||
guest_allow: true
|
||||
apis:
|
||||
- "GET:/api/v1/app/authorization"
|
||||
- "GET:/api/v1/app/authorizations"
|
||||
- "GET:/api/v1/app/authorization/details"
|
||||
- name: manager
|
||||
value: 'manager'
|
||||
apis:
|
||||
- "POST:/api/v1/app/authorization"
|
||||
- "PUT:/api/v1/app/authorization"
|
||||
- "DELETE:/api/v1/app/authorization"
|
||||
dependents:
|
||||
- team.consumer.authorization.view
|
||||
- name: consumer
|
||||
value: 'application'
|
||||
children:
|
||||
- name: manager
|
||||
value: 'manager'
|
||||
apis:
|
||||
- "PUT:/api/v1/app/info"
|
||||
- "POST:/api/v1/team/app"
|
||||
- name: team
|
||||
value: 'team'
|
||||
children:
|
||||
|
||||
@@ -5,18 +5,15 @@ import (
|
||||
"encoding/json"
|
||||
"strings"
|
||||
|
||||
"github.com/eolinker/eosc"
|
||||
"github.com/eolinker/go-common/pm3"
|
||||
)
|
||||
|
||||
var (
|
||||
//go:embed i18n/*
|
||||
i18nDirs embed.FS
|
||||
i18nData eosc.Untyped[string, map[string]string]
|
||||
defaultI18n = "zh-CN"
|
||||
i18nDirs embed.FS
|
||||
)
|
||||
|
||||
func init() {
|
||||
i18nData = eosc.BuildUntyped[string, map[string]string]()
|
||||
files, err := i18nDirs.ReadDir("i18n")
|
||||
if err != nil {
|
||||
panic(err)
|
||||
@@ -34,19 +31,6 @@ func init() {
|
||||
panic(err)
|
||||
}
|
||||
key := strings.TrimSuffix(f.Name(), ".json")
|
||||
i18nData.Set(key, tmp)
|
||||
pm3.I18nRegister(key, tmp)
|
||||
}
|
||||
}
|
||||
|
||||
func Get(i18n string) map[string]string {
|
||||
result, has := i18nData.Get(i18n)
|
||||
if has {
|
||||
return result
|
||||
}
|
||||
|
||||
result, has = i18nData.Get(defaultI18n)
|
||||
if !has {
|
||||
return make(map[string]string)
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user