Simplified the available permissions

This commit is contained in:
Jan Böhmer 2022-10-31 21:13:27 +01:00
parent 59ddf91527
commit f8aee65d9e
2 changed files with 31 additions and 286 deletions

View file

@ -13,9 +13,7 @@ doctrine:
class: App\Helpers\UTCDateTimeType class: App\Helpers\UTCDateTimeType
big_decimal: big_decimal:
class: App\Helpers\BigDecimalType class: App\Helpers\BigDecimalType
permission_data:
class: App\Doctrine\Types\PermissionDataType
schema_filter: ~^(?!internal)~ schema_filter: ~^(?!internal)~
# Only enable this when needed # Only enable this when needed
profiling_collect_backtrace: false profiling_collect_backtrace: false

View file

@ -20,216 +20,42 @@ perms: # Here comes a list with all Permission names (they have a perm_[name] co
operations: # Here are all possible operations are listed => the op name is mapped to bit value operations: # Here are all possible operations are listed => the op name is mapped to bit value
read: read:
label: "perm.read" label: "perm.read"
bit: 0
edit: edit:
label: "perm.edit" label: "perm.edit"
bit: 2
alsoSet: 'read' alsoSet: 'read'
create: create:
label: "perm.create" label: "perm.create"
bit: 4
alsoSet: ['read', 'edit'] alsoSet: ['read', 'edit']
#move:
# label: "perm.part.move"
# bit: 6
# alsoSet: 'read'
delete: delete:
label: "perm.delete" label: "perm.delete"
bit: 8
alsoSet: ['read', 'edit'] alsoSet: ['read', 'edit']
search:
label: "perm.part.search"
bit: 10
all_parts:
label: "perm.part.all_parts"
bit: 12
no_price_parts:
label: "perm.part.no_price_parts"
bit: 14
obsolete_parts:
label: "perm.part.obsolete_parts"
bit: 16
unknown_instock_parts:
label: "perm.part.unknown_instock_parts"
bit: 18
change_favorite: change_favorite:
label: "perm.part.change_favorite" label: "perm.part.change_favorite"
bit: 20
show_favorite_parts:
label: "perm.part.show_favorite"
bit: 24
show_last_edit_parts:
label: "perm.part.show_last_edit_parts"
bit: 26
show_users:
label: "perm.part.show_users"
bit: 28
show_history: show_history:
label: "perm.part.show_history" label: "perm.part.show_history"
bit: 30
revert_element: revert_element:
label: "perm.revert_elements" label: "perm.revert_elements"
bit: 32
alsoSet: ["read", "edit", "create", "delete", "show_history"] alsoSet: ["read", "edit", "create", "delete", "show_history"]
parts_name: &PART_ATTRIBUTE # We define a template here, that we can use for all part attributes.
label: "perm.part.name"
group: "parts"
operations:
read:
label: "perm.read"
bit: 0
edit:
label: "perm.edit"
bit: 2
alsoSet: 'read'
parts_category:
<<: *PART_ATTRIBUTE
label: "perm.part.category"
parts_description:
<<: *PART_ATTRIBUTE
label: "perm.part.description"
parts_minamount:
<<: *PART_ATTRIBUTE
label: "perm.part.minamount"
parts_footprint:
<<: *PART_ATTRIBUTE
label: "perm.part.footprint"
parts_comment:
<<: *PART_ATTRIBUTE
label: "perm.part.comment"
parts_manufacturer:
<<: *PART_ATTRIBUTE
label: "perm.part.manufacturer"
parts_mpn:
<<: *PART_ATTRIBUTE
label: "perm.part.mpn"
parts_status:
<<: *PART_ATTRIBUTE
label: "perm.part.status"
parts_tags:
<<: *PART_ATTRIBUTE
label: "perm.part.tags"
parts_unit:
<<: *PART_ATTRIBUTE
label: "perm.part.unit"
parts_mass:
<<: *PART_ATTRIBUTE
label: "perm.part.mass"
parts_orderdetails: &PART_MULTI_ATTRIBUTE
label: "perm.part.orderdetails"
group: "parts"
operations:
read:
label: "perm.read"
bit: 0
edit:
label: "perm.edit"
bit: 2
alsoSet: 'read'
create:
label: "perm.create"
bit: 4
alsoSet: ['read', 'edit']
delete:
label: "perm.delete"
bit: 6
alsoSet: ['read']
parts_prices:
<<: *PART_MULTI_ATTRIBUTE
label: "perm.part.prices"
parts_parameters:
<<: *PART_MULTI_ATTRIBUTE
label: "perm.part.parameters"
parts_lots:
<<: *PART_MULTI_ATTRIBUTE
label: "perm.part.lots"
parts_attachments:
group: "structures"
label: "perm.part.attachments"
operations:
read:
label: "perm.read"
bit: 0
edit:
label: "perm.edit"
bit: 2
alsoSet: 'read'
create:
label: "perm.create"
bit: 4
alsoSet: ['read', 'edit']
delete:
label: "perm.delete"
bit: 6
alsoSet: ['read']
show_history:
label: "perm.show_history"
bit: 8
revert_element:
label: "perm.revert_elements"
bit: 10
alsoSet: ["read", "edit", "create", "delete", "show_history"]
show_private:
label: "perm.attachment_show_private"
bit: 12
alsoSet: ["read"]
parts_order:
<<: *PART_ATTRIBUTE
label: "perm.part.order"
storelocations: &PART_CONTAINING storelocations: &PART_CONTAINING
label: "perm.storelocations" label: "perm.storelocations"
group: "structures" group: "structures"
operations: operations:
read: read:
label: "perm.read" label: "perm.read"
bit: 0
edit: edit:
label: "perm.edit" label: "perm.edit"
bit: 2
alsoSet: 'read' alsoSet: 'read'
create: create:
label: "perm.create" label: "perm.create"
bit: 4
alsoSet: ['read', 'edit'] alsoSet: ['read', 'edit']
move:
label: "perm.move"
bit: 6
delete: delete:
label: "perm.delete" label: "perm.delete"
bit: 8
alsoSet: ['read', 'edit'] alsoSet: ['read', 'edit']
list_parts:
label: "perm.list_parts"
bit: 10
show_users:
label: "perm.show_users"
bit: 12
show_history: show_history:
label: "perm.show_history" label: "perm.show_history"
bit: 14
revert_element: revert_element:
label: "perm.revert_elements" label: "perm.revert_elements"
bit: 16
alsoSet: ["read", "edit", "create", "delete", "show_history"] alsoSet: ["read", "edit", "create", "delete", "show_history"]
footprints: footprints:
@ -267,36 +93,26 @@ perms: # Here comes a list with all Permission names (they have a perm_[name] co
tools: tools:
label: "perm.part.tools" label: "perm.part.tools"
operations: operations:
import: #import:
label: "perm.tools.import" # label: "perm.tools.import"
bit: 0 #labels:
labels: # label: "perm.tools.labels"
label: "perm.tools.labels"
bit: 2
#calculator: #calculator:
# label: "perm.tools.calculator" # label: "perm.tools.calculator"
# bit: 4
#footprints: #footprints:
# label: "perm.tools.footprints" # label: "perm.tools.footprints"
# bit: 6
#ic_logos: #ic_logos:
# label: "perm.tools.ic_logos" # label: "perm.tools.ic_logos"
# bit: 8
statistics: statistics:
label: "perm.tools.statistics" label: "perm.tools.statistics"
bit: 10
lastActivity: lastActivity:
label: "perm.tools.lastActivity" label: "perm.tools.lastActivity"
bit: 12
timetravel: timetravel:
label: "perm.tools.timeTravel" label: "perm.tools.timeTravel"
bit: 14
label_scanner: label_scanner:
label: "perm.tools.label_scanner" label: "perm.tools.label_scanner"
bit: 16
reel_calculator: reel_calculator:
label: "perm.tools.reel_calculator" label: "perm.tools.reel_calculator"
bit: 18
groups: groups:
label: "perm.groups" label: "perm.groups"
@ -304,33 +120,23 @@ perms: # Here comes a list with all Permission names (they have a perm_[name] co
operations: operations:
read: read:
label: "perm.read" label: "perm.read"
bit: 0
edit: edit:
label: "perm.edit" label: "perm.edit"
bit: 2
alsoSet: 'read' alsoSet: 'read'
create: create:
label: "perm.create" label: "perm.create"
bit: 4
alsoSet: ['read', 'edit'] alsoSet: ['read', 'edit']
move:
label: "perm.move"
bit: 6
delete: delete:
label: "perm.delete" label: "perm.delete"
bit: 8
alsoSet: ['read', 'delete'] alsoSet: ['read', 'delete']
edit_permissions: edit_permissions:
label: "perm.edit_permissions" label: "perm.edit_permissions"
alsoSet: ['read', 'edit'] alsoSet: ['read', 'edit']
bit: 10
show_history: show_history:
label: "perm.show_history" label: "perm.show_history"
bit: 12
revert_element: revert_element:
label: "perm.revert_elements" label: "perm.revert_elements"
bit: 14 alsoSet: ["read", "edit", "create", "delete", "edit_permissions", "show_history"]
alsoSet: ["read", "edit", "create", "delete", "move", "edit_permissions", "show_history"]
users: users:
label: "perm.users" label: "perm.users"
@ -338,167 +144,108 @@ perms: # Here comes a list with all Permission names (they have a perm_[name] co
operations: operations:
read: read:
label: "perm.read" label: "perm.read"
bit: 0
create: create:
label: "perm.create" label: "perm.create"
alsoSet: ['read', 'edit_username', 'edit_infos'] alsoSet: ['read', 'edit_username', 'edit_infos']
bit: 4
delete: delete:
label: "perm.delete" label: "perm.delete"
alsoSet: ['read', 'edit_username', 'edit_infos'] alsoSet: ['read', 'edit_username', 'edit_infos']
bit: 8
edit_username: edit_username:
label: "perm.users.edit_user_name" label: "perm.users.edit_user_name"
alsoSet: ['read'] alsoSet: ['read']
bit: 2
change_group:
label: "perm.users.edit_change_group"
alsoSet: 'read'
bit: 6
edit_infos: edit_infos:
label: "perm.users.edit_infos" label: "perm.users.edit_infos"
alsoSet: 'read' alsoSet: 'read'
bit: 10
edit_permissions: edit_permissions:
label: "perm.users.edit_permissions" label: "perm.users.edit_permissions"
alsoSet: 'read' alsoSet: 'read'
bit: 12
set_password: set_password:
label: "perm.users.set_password" label: "perm.users.set_password"
alsoSet: 'read' alsoSet: 'read'
bit: 14
change_user_settings: change_user_settings:
label: "perm.users.change_user_settings" label: "perm.users.change_user_settings"
bit: 16
show_history: show_history:
label: "perm.show_history" label: "perm.show_history"
bit: 18
revert_element: revert_element:
label: "perm.revert_elements" label: "perm.revert_elements"
bit: 20
alsoSet: ["read", "create", "delete", "edit_permissions", "show_history", "edit_infos", "change_group", "edit_username"] alsoSet: ["read", "create", "delete", "edit_permissions", "show_history", "edit_infos", "change_group", "edit_username"]
database: #database:
label: "perm.database" # label: "perm.database"
group: "system" # group: "system"
operations: # operations:
see_status: # see_status:
label: "perm.database.see_status" # label: "perm.database.see_status"
bit: 0 # update_db:
update_db: # label: "perm.database.update_db"
label: "perm.database.update_db" # alsoSet: 'see_status'
bit: 2 # read_db_settings:
alsoSet: 'see_status' # label: "perm.database.read_db_settings"
read_db_settings: # write_db_settings:
label: "perm.database.read_db_settings" # label: "perm.database.write_db_settings"
bit: 4 # alsoSet: ['read_db_settings', 'see_status']
write_db_settings:
label: "perm.database.write_db_settings"
alsoSet: ['read_db_settings', 'see_status']
bit: 2
config: #config:
label: "perm.config" # label: "perm.config"
group: "system" # group: "system"
operations: # operations:
read_config: # read_config:
label: "perm.config.read_config" # label: "perm.config.read_config"
bit: 0 # edit_config:
edit_config: # label: "perm.config.edit_config"
label: "perm.config.edit_config" # alsoSet: 'read_config'
alsoSet: 'read_config' # server_info:
bit: 2 # label: "perm.config.server_info"
server_info:
label: "perm.config.server_info"
bit: 6
system: system:
label: "perm.system" label: "perm.system"
group: "system" group: "system"
operations: operations:
use_debug:
label: "perm.config.use_debug"
bit: 0
show_logs: show_logs:
label: "perm.show_logs" label: "perm.show_logs"
bit: 2
delete_logs: delete_logs:
label: "perm.delete_logs" label: "perm.delete_logs"
alsoSet: 'show_logs' alsoSet: 'show_logs'
bit: 4
devices_parts:
label: "perm.device_parts"
group: "parts"
operations:
read:
label: "perm.read"
bit: 0
edit:
label: "perm.edit"
alsoSet: 'read'
bit: 2
create:
label: "perm.create"
alsoSet: ['edit', 'read']
bit: 6
delete:
label: "perm.delete"
alsoSet: ['edit', 'read']
bit: 8
self: self:
label: "perm.self" label: "perm.self"
operations: operations:
edit_infos: edit_infos:
label: "perm.self.edit_infos" label: "perm.self.edit_infos"
bit: 0
edit_username: edit_username:
label: "perm.self.edit_username" label: "perm.self.edit_username"
bit: 2
show_permissions: show_permissions:
label: "perm.self.show_permissions" label: "perm.self.show_permissions"
bit: 4
show_logs: show_logs:
label: "perm.self.show_logs" label: "perm.self.show_logs"
bit: 6
labels: labels:
label: "perm.labels" label: "perm.labels"
operations: operations:
create_labels: create_labels:
label: "perm.self.create_labels" label: "perm.self.create_labels"
bit: 0
edit_options: edit_options:
label: "perm.self.edit_options" label: "perm.self.edit_options"
bit: 2
alsoSet: ['create_labels'] alsoSet: ['create_labels']
read_profiles: read_profiles:
label: "perm.self.read_profiles" label: "perm.self.read_profiles"
bit: 10
edit_profiles: edit_profiles:
label: "perm.self.edit_profiles" label: "perm.self.edit_profiles"
bit: 6
alsoSet: ['read_profiles'] alsoSet: ['read_profiles']
create_profiles: create_profiles:
label: "perm.self.create_profiles" label: "perm.self.create_profiles"
bit: 8
alsoSet: ['read_profiles', 'edit_profiles'] alsoSet: ['read_profiles', 'edit_profiles']
delete_profiles: delete_profiles:
label: "perm.self.delete_profiles" label: "perm.self.delete_profiles"
bit: 4
alsoSet: ['read_profiles', 'edit_profiles', 'create_profiles'] alsoSet: ['read_profiles', 'edit_profiles', 'create_profiles']
use_twig: use_twig:
label: "perm.labels.use_twig" label: "perm.labels.use_twig"
bit: 12
alsoSet: ['create_labels', 'edit_options'] alsoSet: ['create_labels', 'edit_options']
show_history: show_history:
label: "perm.show_history" label: "perm.show_history"
bit: 14
alsoSet: ['read_profiles'] alsoSet: ['read_profiles']
revert_element: revert_element:
label: "perm.revert_elements" label: "perm.revert_elements"
bit: 16
alsoSet: ['read_profiles', 'edit_profiles', 'create_profiles', 'delete_profiles'] alsoSet: ['read_profiles', 'edit_profiles', 'create_profiles', 'delete_profiles']