You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 30 Current »

You can create ACL rules on the various components of the system.

Record ACL Rules


Record ACL rules consist of table and field names.

  • The table name specifies the table you want to secure. If other tables extend from it, then this table is considered to be a parent table. ACL rules for parent tables apply to any table that extends the parent table.
  • The field name specifies the field that you want to secure. Some fields are part of multiple tables because of the table extension. ACL rules for fields in a parent table can be applicable to any table that extends the parent table.

ACL rules can secure the following record operations:

OperationDescription
CreateAllows users inserting new records (rows) into a table.
ReadAllows users displaying records from a table.
WriteAllows users updating records in a table.
DeleteAllows users removing records from a table.

The processing of record ACL rules goes as follows:

  • Match the object against table ACL rules.
  • Match the object against field ACL rules.

This order ensures that users get access to more general objects before getting access to more specific objects.  user must pass both table and field ACL rules to access a record object.

  • If user fails a table ACL rule, then access to all the fields in the table is denied, even if user passes a field ACL rule.
  • If user passes a table ACL rule but fails a field ACL rule, then the user cannot access the field secured by the field ACL rule.

Table ACL Rules


First, the table ACL rule must be passed. The base system includes wildcard (*) ACL rules that match any table or any column. So the user must always pass at least one table ACL rule. The base system provides additional table ACL rules to control access to specific tables.

Table ACL rules are processed in the as described below:

  1. Match the table below. For example, Incident.
  2. Match the parent table. In our example, it will be the Task table.
  3. Match any table name.

If user fails ALL table ACL rules, then the user cannot access the fields in any tables. If user passes a table ACL rule, the system then evaluates the field ACL rules.

Field ACL Rules


After a table ACL rule passed, then field ACL rules are processed in the following order:

  1. Match the table and column name. For example, incident.number.
  2. Match the parent table and column name. For example, task.number.
  3. Match any table (*) and column name. For example, *.number.
  4. Match the table and any fields (*). For example, incident.*.
  5. Match the parent table and any columns. For example, task.*.
  6. Match any table (*) and any fields (*). For example, *.*.

The user must pass the field ACL rule; otherwise, access to the table fields will be denied. For example: the user wants to access the Number field in the Incident table. In this case, the user must first pass the table ACL rule.

The first successful field ACL evaluation stops ACL rule processing at the field level. When user passes a field ACL rule, the system stops searching for other matching field ACL rules. For example, if user passes the field ACL rule for incident.number, the system stops searching for other ACL rules that secure the Number field in the Incident table.

  • No labels