You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# define can_rename_all_devices: can_view_all_devices and can_edit_all_realms
83
-
# define can_edit_tags_all_devices: can_view_all_devices and can_edit_all_realms
84
-
# define can_access_terminal_all_devices: can_view_all_realms and can_edit_all_realms
85
-
# define can_update_all_devices: can_view_all_realms and can_edit_all_realms
86
-
# define can_identify_devices: can_view_all_realms and can_edit_all_realms
87
-
88
-
89
76
## ---- System models ----
90
77
define system_model_creator: [user]
91
78
define system_model_viewer: [user]
92
79
define system_model_editor: [user]
93
80
define system_model_deleter: [user]
94
81
95
-
define can_create_system_model: system_model_creator or system_model_editor
82
+
define can_create_system_model: (system_model_creator or system_model_editor) but not system_model_blacklisted
96
83
define can_view_all_system_models: (system_model_viewer or system_model_editor or system_model_creator or system_model_deleter) but not system_model_blacklisted
97
84
define can_edit_all_system_models: system_model_editor but not system_model_blacklisted
98
85
define can_delete_all_system_models: system_model_deleter but not system_model_blacklisted
@@ -103,105 +90,100 @@ type tenant
103
90
define hardware_type_editor: [user]
104
91
define hardware_type_deleter: [user]
105
92
106
-
define can_create_hardware_type: hardware_type_creator or hardware_type_editor
93
+
define can_create_hardware_type: (hardware_type_creator or hardware_type_editor) but not hardware_type_blacklisted
107
94
define can_view_all_hardware_types: (hardware_type_viewer or hardware_type_editor or hardware_type_creator or hardware_type_deleter) but not hardware_type_blacklisted
108
95
define can_edit_all_hardware_types: hardware_type_editor but not hardware_type_blacklisted
109
96
define can_delete_all_hardware_types: hardware_type_deleter but not hardware_type_blacklisted
110
97
111
98
## ---- Base image collections ----
99
+
define base_image_collection_creator: [user]
112
100
define base_image_collection_viewer: [user]
113
101
define base_image_collection_editor: [user]
114
-
define base_image_collection_creator: [user]
115
102
define base_image_collection_deleter: [user]
116
103
define base_image_collection_image_adder: [user]
117
104
define base_image_collection_image_remover:[user]
118
105
106
+
define can_create_base_image_collection: (base_image_collection_creator or base_image_collection_creator or base_image_collection_editor) but not base_image_collection_blacklisted
119
107
define can_view_all_base_image_collections: (base_image_collection_viewer or base_image_collection_editor or base_image_collection_creator or base_image_collection_deleter) but not base_image_collection_blacklisted
120
-
define can_create_base_image_collection: base_image_collection_creator or base_image_collection_editor
121
108
define can_edit_all_base_image_collections: base_image_collection_editor but not base_image_collection_blacklisted
122
109
define can_delete_all_base_image_collections: base_image_collection_deleter but not base_image_collection_blacklisted
123
110
define can_add_image_to_all_collections: (base_image_collection_image_adder or base_image_collection_editor) but not base_image_collection_blacklisted
124
111
define can_remove_image_from_all_collections: (base_image_collection_image_remover or base_image_collection_editor) but not base_image_collection_blacklisted
125
112
126
113
## ---- Image credentials ----
114
+
define image_credential_creator: [user]
127
115
define image_credential_viewer: [user]
128
116
define image_credential_editor: [user]
129
117
define image_credential_deleter: [user]
130
118
131
-
# define can_create_image_credential: (editor or is_admin) from tenant #? maybe a role?
119
+
define can_create_image_credential: (image_credential_creator or image_credential_editor or is_admin) but not image_credential_blacklisted
132
120
define can_view_all_image_credentials: (image_credential_viewer or image_credential_editor or image_credential_deleter) but not image_credential_blacklisted
133
121
define can_edit_all_image_credentials: image_credential_editor but not image_credential_blacklisted
134
122
define can_delete_all_image_credentials: image_credential_deleter but not image_credential_blacklisted
135
123
136
124
## ---- Volumes ----
125
+
define volume_creator: [user]
137
126
define volume_viewer: [user]
138
127
define volume_editor: [user]
139
128
define volume_deleter: [user]
140
129
141
-
# define can_create_volume: (editor or is_admin) from tenant #? maybe a role?
130
+
define can_create_volume: (volume_creator or volume_editor or is_admin) but not volume_blacklisted
142
131
define can_view_all_volumes: (volume_viewer or volume_editor or volume_deleter) but not volume_blacklisted
143
132
define can_edit_all_volumes: volume_editor but not volume_blacklisted
144
133
define can_delete_all_volumes: volume_deleter but not volume_blacklisted
145
134
146
135
## ---- Networks ----
136
+
define network_creator: [user]
147
137
define network_viewer: [user]
148
138
define network_editor: [user]
149
139
define network_deleter: [user]
150
140
151
-
# define can_create_network: (editor or is_admin) from tenant #? maybe a role?
141
+
define can_create_network: (network_creator or network_editor or is_admin) but not network_blacklisted
152
142
define can_view_all_networks: (network_viewer or network_editor or network_deleter) but not network_blacklisted
153
143
define can_edit_all_networks: network_editor but not network_blacklisted
154
144
define can_delete_all_networks: network_deleter but not network_blacklisted
155
145
156
146
## ---- Containers ----
147
+
define container_creator: [user]
157
148
define container_viewer: [user]
158
149
define container_editor: [user]
159
150
define container_deleter: [user]
160
151
161
-
# define can_create_container: (editor or is_admin) from tenant #? maybe a role?
152
+
define can_create_container: (container_creator or container_editor or is_admin) but not container_blacklisted
162
153
define can_view_all_containers: (container_viewer or container_editor or container_deleter) but not container_blacklisted
163
154
define can_edit_all_containers: container_editor but not container_blacklisted
164
155
define can_delete_all_containers: container_deleter but not container_blacklisted
165
156
166
157
## ---- Applications ----
158
+
define application_creator: [user]
167
159
define application_viewer: [user]
168
160
define application_editor: [user]
169
-
define application_creator: [user]
170
161
define application_deleter: [user]
171
162
163
+
define can_create_application: (application_creator or application_editor or is_admin) but not application_blacklisted
172
164
define can_view_all_applications: (application_viewer or application_editor or application_creator or application_deleter) but not application_blacklisted
173
-
define can_create_application: application_creator or application_editor
174
165
define can_edit_all_applications: application_editor but not application_blacklisted
175
166
define can_delete_all_applications: application_deleter but not application_blacklisted
176
167
177
-
## ---- Releases ----
178
-
# TODO
179
-
# define can_create_release: (editor or is_admin) from tenant #? maybe a role?
180
-
181
-
## ---- Deployments ----
182
-
# TODO
183
-
184
168
## ---- Channels ----
185
169
define channel_viewer: [user]
186
170
define channel_editor: [user]
187
171
define channel_creator: [user]
188
172
define channel_deleter: [user]
189
173
190
-
# define can_create_channel: (editor or is_admin) from tenant #? maybe a role?
174
+
define can_create_channel: (channel_creator or channel_editor or is_admin) but not channel_blacklisted
191
175
define can_view_all_channels: (channel_viewer or channel_editor or channel_creator or channel_deleter) but not channel_blacklisted
192
-
define can_create_channel: channel_creator or channel_editor
193
176
define can_edit_all_channels: channel_editor but not channel_blacklisted
194
177
define can_delete_all_channels: channel_deleter but not channel_blacklisted
195
178
196
179
## ---- Device groups ----
180
+
define device_group_creator: [user]
197
181
define device_group_viewer: [user]
198
182
define device_group_editor: [user]
199
-
define device_group_creator: [user]
200
183
define device_group_deleter: [user]
201
184
202
-
# define can_create_device_group: (editor or is_admin) from tenant #? maybe a role?
185
+
define can_create_device_group: (device_group_creator or device_group_editor or is_admin) but not device_group_blacklisted
203
186
define can_view_all_device_groups: (device_group_viewer or device_group_editor or device_group_creator or device_group_deleter) but not device_group_blacklisted
204
-
define can_create_device_group: device_group_creator or device_group_editor
205
187
define can_edit_all_device_groups: device_group_editor but not device_group_blacklisted
206
188
define can_delete_all_device_groups: device_group_deleter but not device_group_blacklisted
207
189
@@ -211,7 +193,7 @@ type tenant
211
193
define campaign_creator: [user]
212
194
define campaign_deleter: [user]
213
195
214
-
# define can_create_campaign: (editor or is_admin) from tenant #? maybe a role?
196
+
define can_create_campaign: (campaign_creator or campaign_editor or is_admin) but not campaign_blacklisted
215
197
define can_view_all_campaigns: (campaign_viewer or campaign_editor or campaign_creator or campaign_deleter) but not campaign_blacklisted
216
198
define can_create_firmware_upgrade_campaign: campaign_creator or campaign_editor
217
199
define can_create_deployment_campaign: campaign_creator or campaign_editor
@@ -297,7 +279,7 @@ type device
297
279
## General per-device roles
298
280
define owner: [user]
299
281
define admin: [user]
300
-
define editor: [user] # TODO: probs reconcile this with all the separate permissions
282
+
define editor: [user]
301
283
define viewer: [user]
302
284
define blacklisted: [user] or device_blacklisted from realm
303
285
@@ -571,17 +553,18 @@ type deployment
571
553
## Assignable roles
572
554
define owner: [user]
573
555
define admin: [user]
574
-
define manager: [user] # TODO: editor? also, aggiungere ruoli separati per le diverse cose?
556
+
define manager: [user] # basically editor
575
557
define viewer: [user]
558
+
define blacklisted: [user] but not (blacklisted from release or blacklisted from device)
576
559
577
560
## Computed permissions
578
-
define can_view: viewer or manager or admin or owner or (can_view from device and can_view from release) or can_view from tenant
579
-
define can_start_stop: manager or admin or owner or can_edit from tenant
580
-
define can_upgrade: manager or admin or owner or can_edit from tenant
581
-
define can_delete: manager or admin or owner or can_edit from tenant
561
+
define can_view: (viewer or manager or admin or owner or (can_view from device and can_view from release) or can_view from tenant) but not blacklisted
562
+
define can_start_stop: (manager or admin or owner or can_edit from tenant) but not blacklisted
563
+
define can_upgrade: (manager or admin or owner or can_edit from tenant) but not blacklisted
564
+
define can_delete: (manager or admin or owner or can_edit from tenant) but not blacklisted
582
565
### TODO: queste cose le teniamo in edgehog oppure le lasciamo a portal?
583
-
define can_set_manager: admin or owner or is_admin from tenant
584
-
define can_set_viewer: admin or owner or is_admin from tenant
566
+
define can_set_manager: (admin or owner or is_admin from tenant) but not blacklisted
567
+
define can_set_viewer: (admin or owner or is_admin from tenant) but not blacklisted
0 commit comments