Changes for page Permissions Configuration
Last modified by colinw on 2021/09/10 23:34
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -6,8 +6,20 @@ 6 6 7 7 = Description = 8 8 9 -The Permissions resource provides access to query and define permissions for iSymphony. 9 +The Permissions resource provides access to query and define permissions for iSymphony. See the reference information below for details about the REST interactions used to define permissions. The rest of this description is provided to make it easier to understand the various interactions that go into the permission system in iSymphony. 10 10 11 +=== Overview === 12 + 13 +In version 3.0 and previous of iSymphony, permissions were defined for 'permissible' objects in the system - each object that could be controlled via permissions (extensions, queues, other users, etc) would store a list of the users allowed to perform actions on it, and which actions each was allowed to perform. Beginning in version 3.1 of iSymphony, the situation has been reversed, to make it easier to administer permissions and hopefully less confusing. Permissions are defined for each user or user group in the system, in a cascading manner. They are evaluated in order of decreasing specificity, and in the case of a conflicting tie, the action is allowed. This must be considered when using the REST system to define permissions. See the documentation for permissions for more details. 14 + 15 +=== Defaults === 16 + 17 +By default, all users in the system are allowed to perform all actions. Therefore, if a specific permission key has not been defined for a user (either on the user itself, or one of the groups it is a member of), that action should be considered allowed. When defining a permission, the default policy is also allowed, unless the allowed flag is set to false. 18 + 19 +=== **Exceptions** === 20 + 21 +The heart of the permission system lies in the exceptions to the rules. This allows for powerful combinations to be achieved. Generally, the objects defined by their UUIDs in the exceptions field will be allowed to perform an action if the allowed flag is false, and prevented from performing that action if the allowed flag is true. That is, they will follow the opposite of the general policy for that definition. There are a few special cases. 22 + 11 11 = Root Resource Paths = 12 12 13 13 {{code}} ... ... @@ -251,20 +251,6 @@ 251 251 * 404 'No permission with that key is defined for that user.': Returned if there is no permission defined for the user with that permission key. 252 252 ))) 253 253 254 -= Sub/Child Resource Paths = 255 - 256 -|=(% colspan="2" %)(% colspan="2" %) 257 -((( 258 -{{{path}}} 259 -))) 260 -|(% class="highlight-grey" colspan="1" data-highlight-colour="grey" %)(% class="highlight-grey" colspan="1" data-highlight-colour="grey" %) 261 -((( 262 -**Description** 263 -)))|(% colspan="1" %)(% colspan="1" %) 264 -((( 265 -description 266 -))) 267 - 268 268 = Curl Examples = 269 269 270 270 === Get ===