From aa41d0396fe386da402dbdb351d62f40c41558e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Toma=C5=BE=20Jerman?= Date: Thu, 3 Oct 2024 13:46:11 +0200 Subject: [PATCH] Redo export RBAC rules --- server/compose/chart.cue | 1 - server/compose/module.cue | 1 - server/compose/namespace.cue | 1 - server/compose/page.cue | 1 - server/compose/rest/chart.go | 3 -- server/compose/rest/module.go | 4 -- server/compose/rest/namespace.go | 17 +++---- server/compose/rest/page.go | 3 -- server/compose/service/access_control.gen.go | 52 -------------------- 9 files changed, 7 insertions(+), 76 deletions(-) diff --git a/server/compose/chart.cue b/server/compose/chart.cue index 0342256ab..6b5a7f0ea 100644 --- a/server/compose/chart.cue +++ b/server/compose/chart.cue @@ -99,7 +99,6 @@ chart: { "read": {} "update": {} "delete": {} - "export": description: "Access to export charts" } } diff --git a/server/compose/module.cue b/server/compose/module.cue index ee89c78a0..d8fbbae86 100644 --- a/server/compose/module.cue +++ b/server/compose/module.cue @@ -118,7 +118,6 @@ module: { "read": {} "update": {} "delete": {} - "export": description: "Access to export modules" "record.create": description: "Create record" "owned-record.create": description: "Create record with custom owner" "records.search": description: "List, search or filter records" diff --git a/server/compose/namespace.cue b/server/compose/namespace.cue index 351e4e258..dcfba7d91 100644 --- a/server/compose/namespace.cue +++ b/server/compose/namespace.cue @@ -87,7 +87,6 @@ namespace: { "charts.export": description: "Export charts on namespace" "page.create": description: "Create page on namespace" "pages.search": description: "List, search or filter pages on namespace" - "pages.export": description: "Export pages on namespace" } } diff --git a/server/compose/page.cue b/server/compose/page.cue index de9fd5e61..daaaafef5 100644 --- a/server/compose/page.cue +++ b/server/compose/page.cue @@ -166,7 +166,6 @@ page: { "read": {} "update": {} "delete": {} - "export": description: "Access to export pages" "page-layout.create": description: "Create page layout on namespace" "page-layouts.search": description: "List, search or filter page layouts on namespace" } diff --git a/server/compose/rest/chart.go b/server/compose/rest/chart.go index baf999af9..ac2b5566d 100644 --- a/server/compose/rest/chart.go +++ b/server/compose/rest/chart.go @@ -16,7 +16,6 @@ type ( CanGrant bool `json:"canGrant"` CanUpdateChart bool `json:"canUpdateChart"` - CanExportChart bool `json:"canExportChart"` CanDeleteChart bool `json:"canDeleteChart"` } @@ -43,7 +42,6 @@ type ( CanGrant(context.Context) bool CanUpdateChart(context.Context, *types.Chart) bool - CanExportChart(context.Context, *types.Chart) bool CanDeleteChart(context.Context, *types.Chart) bool } ) @@ -156,7 +154,6 @@ func (ctrl Chart) makePayload(ctx context.Context, c *types.Chart, err error) (* CanGrant: ctrl.ac.CanGrant(ctx), CanUpdateChart: ctrl.ac.CanUpdateChart(ctx, c), - CanExportChart: ctrl.ac.CanExportChart(ctx, c), CanDeleteChart: ctrl.ac.CanDeleteChart(ctx, c), }, nil } diff --git a/server/compose/rest/module.go b/server/compose/rest/module.go index 39624fab1..f6a70ebb7 100644 --- a/server/compose/rest/module.go +++ b/server/compose/rest/module.go @@ -24,7 +24,6 @@ type ( Fields []*moduleFieldPayload `json:"fields"` CanGrant bool `json:"canGrant"` - CanExport bool `json:"canExport"` CanUpdateModule bool `json:"canUpdateModule"` CanDeleteModule bool `json:"canDeleteModule"` CanCreateRecord bool `json:"canCreateRecord"` @@ -48,7 +47,6 @@ type ( moduleAccessController interface { CanGrant(context.Context) bool - CanExportModule(context.Context, *types.Module) bool CanUpdateModule(context.Context, *types.Module) bool CanDeleteModule(context.Context, *types.Module) bool CanCreateRecordOnModule(context.Context, *types.Module) bool @@ -191,8 +189,6 @@ func (ctrl Module) makePayload(ctx context.Context, m *types.Module, err error) CanGrant: ctrl.ac.CanGrant(ctx), - CanExport: ctrl.ac.CanExportModule(ctx, m), - CanUpdateModule: ctrl.ac.CanUpdateModule(ctx, m), CanDeleteModule: ctrl.ac.CanDeleteModule(ctx, m), diff --git a/server/compose/rest/namespace.go b/server/compose/rest/namespace.go index 47023b3dd..c399fc5f6 100644 --- a/server/compose/rest/namespace.go +++ b/server/compose/rest/namespace.go @@ -36,11 +36,10 @@ type ( CanDeleteNamespace bool `json:"canDeleteNamespace"` CanManageNamespace bool `json:"canManageNamespace"` CanCreateModule bool `json:"canCreateModule"` - CanExportModule bool `json:"canExportModule"` + CanExportModules bool `json:"canExportModules"` CanCreateChart bool `json:"canCreateChart"` - CanExportChart bool `json:"canExportChart"` + CanExportCharts bool `json:"canExportCharts"` CanCreatePage bool `json:"canCreatePage"` - CanExportPage bool `json:"canExportPage"` } namespaceSetPayload struct { @@ -85,7 +84,6 @@ type ( CanCreateChartOnNamespace(context.Context, *types.Namespace) bool CanExportChartsOnNamespace(context.Context, *types.Namespace) bool CanCreatePageOnNamespace(context.Context, *types.Namespace) bool - CanExportPagesOnNamespace(context.Context, *types.Namespace) bool } ) @@ -364,12 +362,11 @@ func (ctrl Namespace) makePayload(ctx context.Context, ns *types.Namespace, err CanDeleteNamespace: ctrl.ac.CanDeleteNamespace(ctx, ns), CanManageNamespace: ctrl.ac.CanManageNamespace(ctx, ns), - CanCreateModule: ctrl.ac.CanCreateModuleOnNamespace(ctx, ns), - CanExportModule: ctrl.ac.CanExportModulesOnNamespace(ctx, ns), - CanCreateChart: ctrl.ac.CanCreateChartOnNamespace(ctx, ns), - CanExportChart: ctrl.ac.CanExportChartsOnNamespace(ctx, ns), - CanCreatePage: ctrl.ac.CanCreatePageOnNamespace(ctx, ns), - CanExportPage: ctrl.ac.CanExportPagesOnNamespace(ctx, ns), + CanCreateModule: ctrl.ac.CanCreateModuleOnNamespace(ctx, ns), + CanExportModules: ctrl.ac.CanExportModulesOnNamespace(ctx, ns), + CanCreateChart: ctrl.ac.CanCreateChartOnNamespace(ctx, ns), + CanExportCharts: ctrl.ac.CanExportChartsOnNamespace(ctx, ns), + CanCreatePage: ctrl.ac.CanCreatePageOnNamespace(ctx, ns), }, nil } diff --git a/server/compose/rest/page.go b/server/compose/rest/page.go index dedcac471..462556960 100644 --- a/server/compose/rest/page.go +++ b/server/compose/rest/page.go @@ -20,7 +20,6 @@ type ( Children []*pagePayload `json:"children,omitempty"` CanGrant bool `json:"canGrant"` - CanExportPage bool `json:"canExportPage"` CanUpdatePage bool `json:"canUpdatePage"` CanDeletePage bool `json:"canDeletePage"` } @@ -61,7 +60,6 @@ type ( CanGrant(context.Context) bool CanUpdatePage(context.Context, *types.Page) bool - CanExportPage(context.Context, *types.Page) bool CanDeletePage(context.Context, *types.Page) bool } ) @@ -275,7 +273,6 @@ func (ctrl Page) makePayload(ctx context.Context, c *types.Page, err error) (*pa CanGrant: ctrl.ac.CanGrant(ctx), CanUpdatePage: ctrl.ac.CanUpdatePage(ctx, c), - CanExportPage: ctrl.ac.CanExportPage(ctx, c), CanDeletePage: ctrl.ac.CanDeletePage(ctx, c), }, nil } diff --git a/server/compose/service/access_control.gen.go b/server/compose/service/access_control.gen.go index a905a11eb..caf35221c 100644 --- a/server/compose/service/access_control.gen.go +++ b/server/compose/service/access_control.gen.go @@ -167,11 +167,6 @@ func (svc accessControl) List() (out []map[string]string) { "any": types.ChartRbacResource(0, 0), "op": "delete", }, - { - "type": types.ChartResourceType, - "any": types.ChartRbacResource(0, 0), - "op": "export", - }, { "type": types.ModuleResourceType, "any": types.ModuleRbacResource(0, 0), @@ -187,11 +182,6 @@ func (svc accessControl) List() (out []map[string]string) { "any": types.ModuleRbacResource(0, 0), "op": "delete", }, - { - "type": types.ModuleResourceType, - "any": types.ModuleRbacResource(0, 0), - "op": "export", - }, { "type": types.ModuleResourceType, "any": types.ModuleRbacResource(0, 0), @@ -282,11 +272,6 @@ func (svc accessControl) List() (out []map[string]string) { "any": types.NamespaceRbacResource(0), "op": "pages.search", }, - { - "type": types.NamespaceResourceType, - "any": types.NamespaceRbacResource(0), - "op": "pages.export", - }, { "type": types.PageResourceType, "any": types.PageRbacResource(0, 0), @@ -302,11 +287,6 @@ func (svc accessControl) List() (out []map[string]string) { "any": types.PageRbacResource(0, 0), "op": "delete", }, - { - "type": types.PageResourceType, - "any": types.PageRbacResource(0, 0), - "op": "export", - }, { "type": types.PageResourceType, "any": types.PageRbacResource(0, 0), @@ -505,13 +485,6 @@ func (svc accessControl) CanDeleteChart(ctx context.Context, r *types.Chart) boo return svc.can(ctx, "delete", r) } -// CanExportChart checks if current user can access to export charts -// -// This function is auto-generated -func (svc accessControl) CanExportChart(ctx context.Context, r *types.Chart) bool { - return svc.can(ctx, "export", r) -} - // CanReadModule checks if current user can read // // This function is auto-generated @@ -533,13 +506,6 @@ func (svc accessControl) CanDeleteModule(ctx context.Context, r *types.Module) b return svc.can(ctx, "delete", r) } -// CanExportModule checks if current user can access to export modules -// -// This function is auto-generated -func (svc accessControl) CanExportModule(ctx context.Context, r *types.Module) bool { - return svc.can(ctx, "export", r) -} - // CanCreateRecordOnModule checks if current user can create record // // This function is auto-generated @@ -666,13 +632,6 @@ func (svc accessControl) CanSearchPagesOnNamespace(ctx context.Context, r *types return svc.can(ctx, "pages.search", r) } -// CanExportPagesOnNamespace checks if current user can export pages on namespace -// -// This function is auto-generated -func (svc accessControl) CanExportPagesOnNamespace(ctx context.Context, r *types.Namespace) bool { - return svc.can(ctx, "pages.export", r) -} - // CanReadPage checks if current user can read // // This function is auto-generated @@ -694,13 +653,6 @@ func (svc accessControl) CanDeletePage(ctx context.Context, r *types.Page) bool return svc.can(ctx, "delete", r) } -// CanExportPage checks if current user can access to export pages -// -// This function is auto-generated -func (svc accessControl) CanExportPage(ctx context.Context, r *types.Page) bool { - return svc.can(ctx, "export", r) -} - // CanCreatePageLayoutOnPage checks if current user can create page layout on namespace // // This function is auto-generated @@ -932,14 +884,12 @@ func rbacResourceOperations(r string) map[string]bool { "read": true, "update": true, "delete": true, - "export": true, } case types.ModuleResourceType: return map[string]bool{ "read": true, "update": true, "delete": true, - "export": true, "record.create": true, "owned-record.create": true, "records.search": true, @@ -964,14 +914,12 @@ func rbacResourceOperations(r string) map[string]bool { "charts.export": true, "page.create": true, "pages.search": true, - "pages.export": true, } case types.PageResourceType: return map[string]bool{ "read": true, "update": true, "delete": true, - "export": true, "page-layout.create": true, "page-layouts.search": true, }