From 1a69388e143190c2d056d625fb3e1cefc406bb71 Mon Sep 17 00:00:00 2001 From: jkoberg Date: Fri, 20 Jan 2023 16:29:23 +0100 Subject: [PATCH] add new permissions Signed-off-by: jkoberg --- .../space-management-permissions.md | 2 +- .../settings/pkg/store/defaults/defaults.go | 40 +++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) diff --git a/changelog/unreleased/space-management-permissions.md b/changelog/unreleased/space-management-permissions.md index 049717fb46..24dfc0fcd2 100644 --- a/changelog/unreleased/space-management-permissions.md +++ b/changelog/unreleased/space-management-permissions.md @@ -1,4 +1,4 @@ -Enahncement: Space Management permissions +Enhancement: Space Management permissions We added new space management permissions. `space-properties` will allow changing space properties (name, description, ...). `space-ability` will allow enabling and disabling spaces diff --git a/services/settings/pkg/store/defaults/defaults.go b/services/settings/pkg/store/defaults/defaults.go index 906ce68002..2e5297e0e9 100644 --- a/services/settings/pkg/store/defaults/defaults.go +++ b/services/settings/pkg/store/defaults/defaults.go @@ -58,6 +58,16 @@ const ( // DeleteAllSpacesPermissionName is the hardcoded setting name for the delete all space permission DeleteAllSpacesPermissionName string = "delete-all-spaces" + // ManageSpacePropertiesPermissionID is the hardcoded setting UUID for the manage space properites permission + ManageSpacePropertiesPermissionID string = "b44b4054-31a2-42b8-bb71-968b15cfbd4f" + // ManageSpacePropertiesPermissionName is the hardcoded setting name for the manage space properties permission + ManageSpacePropertiesPermissionName string = "Drive.ReadWrite" + + // SpaceAbilityPermissionID is the hardcoded setting UUID for the space ability permission + SpaceAbilityPermissionID string = "cf3faa8c-50d9-4f84-9650-ff9faf21aa9d" + // SpaceAbilityPermissionName is the hardcoded setting name for the space ability permission + SpaceAbilityPermissionName string = "Drive.ReadWriteEnable" + settingUUIDProfileLanguage = "aa8cfbe5-95d4-4f7e-a032-c3c01f5f062f" // AccountManagementPermissionID is the hardcoded setting UUID for the account management permission @@ -265,6 +275,36 @@ func generateBundleSpaceAdminRole() *settingsmsg.Bundle { Type: settingsmsg.Resource_TYPE_SYSTEM, }, Settings: []*settingsmsg.Setting{ + { + Id: ManageSpacePropertiesPermissionID, + Name: ManageSpacePropertiesPermissionName, + DisplayName: "Manage space properties", + Description: "This permission allows to manage space properties such as name and description.", + Resource: &settingsmsg.Resource{ + Type: settingsmsg.Resource_TYPE_SYSTEM, + }, + Value: &settingsmsg.Setting_PermissionValue{ + PermissionValue: &settingsmsg.Permission{ + Operation: settingsmsg.Permission_OPERATION_READWRITE, + Constraint: settingsmsg.Permission_CONSTRAINT_ALL, + }, + }, + }, + { + Id: SpaceAbilityPermissionID, + Name: SpaceAbilityPermissionName, + DisplayName: "Space ability", + Description: "This permission allows to enable and disable spaces.", + Resource: &settingsmsg.Resource{ + Type: settingsmsg.Resource_TYPE_SYSTEM, + }, + Value: &settingsmsg.Setting_PermissionValue{ + PermissionValue: &settingsmsg.Permission{ + Operation: settingsmsg.Permission_OPERATION_READWRITE, + Constraint: settingsmsg.Permission_CONSTRAINT_ALL, + }, + }, + }, { Id: SetSpaceQuotaPermissionID, Name: SetSpaceQuotaPermissionName,