Role required: security_admin. |
Use ACL (Access Control List) to specify the users and/or processes allowed to access the objects, and operations allowed on the given objects.
In SimpleOne, rules for ACLs check users against a set of requirements before they are allowed to work with the data.
ACL rules specify:
ACL restricts access to the object. Each object consists of the type and the name of a table, field, or record.
The following table gives examples of objects:
Type | Table | Column | Object Secured |
---|---|---|---|
record | Problem (itsm_problem) | (not set) | The Problem table. |
record | Incident (itsm_incident) | active | The Active field in the Incident table. |
In ACL, the term operation refers to a valid action performed on the specified object. Multiple operations can be performed on some objects, like records.
This table gives examples of operations:
Operation | Table | Column | Operation Secured |
---|---|---|---|
[Create] | itsm_problem | (not set) | Creating records in the Problem table. Generated ACL record name is [Create].itsm_problem |
[Write] | itsm_incident | active | Updating the Active field in the Incident table. Generated ACL record name is [Write].itsm_incident.active |
The permissions specify the details of the access to the named object and operation. Responsible persons should specify permission with the following information:
See the Create ACL Rules article to learn more.
To perform a particular operation over a specific object, a user must pass ALL permissions listed in the access control rule. For example, to access an active record in the Article table, a user must meet the following conditions:
Permission type | Requirement | Description | |
---|---|---|---|
Roles | Required role: service_owner | Only users with the service_owner role can read articles. | |
Condition | Owned by is (dynamic) Me | The article is available to the owner of the Content Item this article is related to.
|
The acl.disabled property allows you to disable all ACL checks. To disable security checks, follow the steps below:
|
If the requested object and operation do not have related ACLs, the user gets access to it. However, it is a rare case: a set of default access control rules protecting all record operations are delivered in “out-of-the-box” configuration. |
The access denial affects on what the user can see or do, depending on the ACL rule itself. For example, if a read ACL is denied, the system restricts the user to view the object. Depending on the object, the user does not see the fields, records from a list, or UI pages.
The table below lists the results of failing an ACL rule for a particular operation and object type.
Operation | Results of ACL rule failing |
---|---|
Create | The New user interface action is not displayed on pages for the user. Users cannot also insert records into tables via API. If there is a condition in the create ACL that specifies a field value, it always returns false. In newly created records, fields are regarded as empty until the record is saved. |
Read | The form and list objects are not displayed to the user. Users cannot also retrieve records via API. |
Write | The form fields are not editable for the user: they are read-only. Users cannot also update records via API. |
Delete | The Delete user interface action is not displayed on pages to the user. Users cannot also insert records into tables via API. |