App Entities Access Policy
This access policy is included in the Apps Core module.
Description
Access Policy For App Entity Read Permissions.
Properties
This access policy has the following properties.
| Property | Value |
|---|---|
| Name | App Entities Access Policy |
| Code | accessPolicies_appEntities |
| Context | Module |
| Enabled | Yes |
| Target Interface | App Entities |
| Tags | AlloySystemEntity |
Rules
This access policy has 2 rules. A rule targets its own user groups and grants them access to the items that fulfil its expressions.
Rule 1
Targets the following user groups.
| Name | Code |
|---|---|
| App Users | userGroups_appUsers |
Grants access to an item when:
-
Any of the following:
-
User - the item's Owner attribute equals the current user's Item ID.
-
User - the item's Viewers attribute equals the current user's Item ID.
-
User - the item's Editors attribute equals the current user's Item ID.
-
User group - the current user belongs to a group listed in the item's Viewer Groups attribute.
-
User group - the current user belongs to a group listed in the item's Editor Groups attribute.
-
Rule 2
Targets the following user groups.
| Name | Code |
|---|---|
| App Users | userGroups_appUsers |
Grants access to an item when:
- Yes/No - the item's Public attribute equals
true.
Expressions
The rules above as they are defined in the blueprint.
Show rules (85 lines)
[
{
"ruleId": "5b91126c260bcf4dbe640002",
"userGroups": [
"userGroups_appUsers"
],
"expression": {
"discriminator": "BlueprintAccessPolicyOrExpression",
"conditions": [
{
"discriminator": "BlueprintAccessPolicyUserConditionExpression",
"itemValue": {
"discriminator": "BlueprintAccessPolicyItemValueAttribute",
"attributeCode": "attributes_appEntitiesOwner"
},
"userItemValue": {
"discriminator": "BlueprintAccessPolicyItemValueProperty",
"property": "ItemId"
},
"condition": "Equals"
},
{
"discriminator": "BlueprintAccessPolicyUserConditionExpression",
"itemValue": {
"discriminator": "BlueprintAccessPolicyItemValueAttribute",
"attributeCode": "attributes_appEntitiesViewers"
},
"userItemValue": {
"discriminator": "BlueprintAccessPolicyItemValueProperty",
"property": "ItemId"
},
"condition": "Equals"
},
{
"discriminator": "BlueprintAccessPolicyUserConditionExpression",
"itemValue": {
"discriminator": "BlueprintAccessPolicyItemValueAttribute",
"attributeCode": "attributes_appEntitiesEditors"
},
"userItemValue": {
"discriminator": "BlueprintAccessPolicyItemValueProperty",
"property": "ItemId"
},
"condition": "Equals"
},
{
"discriminator": "BlueprintAccessPolicyUserGroupConditionExpression",
"itemValue": {
"discriminator": "BlueprintAccessPolicyItemValueAttribute",
"attributeCode": "attributes_appEntitiesViewerGroups"
},
"condition": "Equals"
},
{
"discriminator": "BlueprintAccessPolicyUserGroupConditionExpression",
"itemValue": {
"discriminator": "BlueprintAccessPolicyItemValueAttribute",
"attributeCode": "attributes_appEntitiesEditorGroups"
},
"condition": "Equals"
}
]
}
},
{
"ruleId": "5b91126c260bcf4dbe640003",
"userGroups": [
"userGroups_appUsers"
],
"expression": {
"discriminator": "BlueprintAccessPolicyAndExpression",
"conditions": [
{
"discriminator": "BlueprintAccessPolicyBooleanConditionExpression",
"itemValue": {
"discriminator": "BlueprintAccessPolicyItemValueAttribute",
"attributeCode": "attributes_appEntitiesPublic"
},
"valueBoolean": true,
"condition": "Equals"
}
]
}
}
]