Additional characteristics of enterprise environments:
- In the enterprise environment, business information has the characteristic of ‘information sharing’. This means that an information object is accessed by many work-related people, as business information is produced during business processes composed of many business activities.
- The enterprise environment changes rapidly, responding to changes in the business environment. Rapid change of environment leads to rapid change of access rights and information objects. It makes administration of access authorization very difficult.
- In the enterprise environment, the basis of authorization is job position and assigned tasks (job functions).
- Many business activities are connected with others in the enterprise environment. Thus, many constraints and business rules are related to access control. For example, specific customer order information may be updated when the goods of the customer order are not received. ‘Separation of duty’ (SOD) is an important security principle for business organizations.
Factors related to access control in the enterprise environment
- Users want to access some information resources for their business activities.
- The final goal of access control is to decide whether an access request from a specific user is valid or not.
- In general, users who belong to the organization structure in the company perform their assigned tasks (job functions) according to their job positions or business roles.
- Some tasks compose business processes, which have special access control requirements.
User
- The subjects of access control. In general, they are employees of a company.
- They execute their job function to achieve the company’s goal.
- They produce business information and this information is stored for future business activities. They may use information resources that were created by other employees.
- The objects of access control, such as files, tables in a database, executable programs, etc. Information resources contain business information.
- A group of employees who form business activities together in order to achieve a particular aim.
- From the perspective of access control, an organization has two functions. One is grouping users, and the other is grouping tasks (job functions).
- job position emphasizes management activities
- business role emphasizes business work activities
- In the access control’s point of view, users may have access rights for executing their job positions or business roles. In other words, job positions and business roles restrict the authority of users.
- A fundamental unit of business work or business activity.
- Tasks are assigned to users by their job positions or business roles.
- In the access control’s point of view, users read or write information objects when executing their tasks.
- If we know a user’s assigned tasks, we can decide which access rights are assigned to the user. Therefore, the tasks of a user are the basis of access control.
- A task can be expressed as a pair, comprising information object and allowing access type.
- A set of some tasks that are connected to achieve a common goal, i.e. workflow.
- In general, it means a product or methodology for supporting business process in the enterprise environment.
- The tasks belonging to business process and the non-belonging tasks have different access control characteristics.
- Non-belonging tasks can be executed any time if the task is assigned.
- It means that authorization causes immediate activation of access right. (passive access control)
- Belonging tasks should submit to a defined process order and available time period.
- In this case, authorization is separated from activation of access rights. (active access control)
- A formal regulation, or bylaw, imposed by an organization, or is simply the standard practices of users, which governs the way the organization conducts its business. SOD and ‘delegation’ are examples of business rule.
Requirements of access control for the enterprise environment
Observations about enterprise environments
- Organizations, job positions, business roles, tasks, and business processes, are the main related factors of access control in the enterprise environment.
- The ancestor job positions or business roles inherit, through the hierarchy, some authorities of their descendant job positions or business roles. This means ‘partial’ inheritance of authorities. (Previous researches say ‘full’ inheritance of authorities from lower role to higher role.)
- There are several types of tasks in the enterprise organizations. They have different characteristics for access control, according to their class.
- Both active and passive accesses occur.
- General users cannot discretionary change security attributes, for example access rights, of information objects. Changing security attributes may induce an outflow of information. Only a security administrator can do it.
- Access control model reflects organization structure and its characteristics of authority inheritance.
- It should support full and partial authority inheritance on the organization structure.
- It should support active and passive access control.
- It should support general business rules includes of least privilege.
- It should support different access control for several types of tasks.
- The access control model for enterprise environment should be able to deal with many users and many information objects. Therefore the design for authorization, assignment of access rights, and change of them should be easy.
Related works
RBAC disadvantages
- The basic RBAC model has a role hierarchy concept where a higher role inherits all access rights of a lower role in the role hierarchy, but in the real world, a person who has a higher job position or business role inherits partial access rights of a lower job position or business role, because full inheritance of access rights can violate the ‘need-to-do’ principle.
- RBAC does not consider workflow. Workflow needs a dynamic activation of access right and the specification of application level constraints. RBAC is one of the passive access control models, and it does not support active access control.
- RBAC does not separate ‘task’ from ‘role’. The task concept is implied, as the role concept and various types of tasks that have different characteristics of access control, are dealt with in the same manner.
- There exist many tasks that do not belong to the workflow in the company, and the ABAC model does not deal with them. Therefore, extra access control methods need to be added to the ABAC model.
- In the real world, a superior officer supervises and reviews the execution of tasks of his/her inferior clerks. This is important for security and integrity; however, the ABAC model does not take review and supervision into consideration.
T-RBAC
In the T–RBAC approach, the user has a relationship with permission through role and task.
Classification of tasks
Organization structure
- Organization structure reflects an authority hierarchy in the company.
- Some authorities of descendant job positions/business roles are inherited to ancestor job positions/business roles through the hierarchy line. Therefore, tasks are divided into two classes: inheritable tasks and non-inheritable tasks.
- All tasks are grouped into two class according to whether they belong to business processes or not, and they are applied to passive or active access control according to their class.
Class P (Private)
- The access rights for the tasks in the class P are not inherited to the ancestor job positions/business roles.
- They do not belong to a business process and are dominated by passive access control principles. Therefore, they have the characteristic of ‘private’.
- Analysis, planning, and decision-making are general examples of tasks belonging to class P.
- The access rights for the tasks in the class S are inherited to ancestor job positions/business roles.
- They do not belong to a business process and are dominated by passive access control principles.
- The tasks in class S are related to management or supervision. An employee as a manager has a duty of supervising his/her subordinate employees and approving some documents. In general, the access rights for the tasks related to supervision are inherited to ancestor job positions/business roles.
- Management or supervision activities occur in a single department of an enterprise organization without relationship with other departments. Therefore, they do not belong to a business process.
- Review, audit, monitoring, approval, and delegation are examples of tasks belonging to class S.
- The access rights for the tasks in the class W are not inherited to ancestor job positions or business roles.
- They belong to a business process and are dominated by active access control principles.
- Many tasks in the enterprise environment belong to class W because the tasks have a relationship with others in the business activities.
- One characteristic of tasks in class W is that the tasks require repeated execution. As a result, the information objects accessed by the tasks in class W have many instances, and a predefined identifier such as ‘customer order no.’ identifies each instance.
- The tasks in class W have several attributes such as activation condition, duration, and activation cardinality.
- Activation condition is the condition so that a specific task may be activated.
- Duration is the available time that an activated task can be performed.
- Activation cardinality is the maximum number of activations of a specific task at the same time.
- Class A has characteristics of class S and class W. If a task belongs to class A, the access rights for the task are inherited to ancestor job positions/business roles in the role hierarchy and the task belongs to workflow.
- Most tasks of approvals in the workflow belong to class A.
Formal description of T-RBAC
Notation
USERS: a set of users
S-RH: supervision role hierarchy
ROLES: a set of roles
- Ri <>
- Ri <* Rj : Rj is direct or indirect parent role of Ri on S-RH
SESSIONS: a set of sessions
WFS: workflow schema
TASKS: a set of tasks
- Ti -> Tj : Ti is a direct prior task of Tj on WFS
- Ti ->* Tj : Ti is a direct or prior task of Tj on WFS
Task-Role Assignment
User-Role Assignment
Task-Workflow Assignment
Role is the function/position that somebody has or is expected to have in an organization. An organization unit itself is a role.
- maximum number of users authorized for the role (Card U: assign user cardinality)
- maximum number of activations at one time (Card A: activation cardinality)
- A role has also its type, which is one of the values {ORGANIZATION, POSITION, BUSINESS ROLE}.
Task is the minimal piece of work that somebody has to do, and it is expressed as a set of permissions.
Permission is defined as a pair of information objects and access mode.
Strict inheritance (S-RH(s)). If R1 is a higher role than R2 in a role hierarchy, R1 inherits only the tasks of R2 that belong to class S or class A.
Audit-oriented inheritance (S-RH(a))). If R1 is a higher role than R2 in a role hierarchy, R1 inherits both the tasks of R2 that belong to class S or class A; and all ‘read’ privileges of R2.
Task attributes. If task Ti belongs to class W; Ti has three attributes. These attributes are inherited to new task instances when they are created in new workflow instances.
- Activation condition (AC): it is an activation condition of Ti: It is expressed as an AND/OR condition between prior tasks. For example, if AC = T2 and T3; Ti can be activated when prior tasks T2 and T3 are finished.
- Time constraint (TC): is the effective execution time of Ti : If the starting time of Ti is later than TC, Ti is automatically deactivated.
- Cardinality (CD): the maximum number of activated task instances for a specific task at the same time.
If Ti belongs to class W or class A; the access rights assigned to Ti can be allowed to the user only if Ti is activated.
User can choose an active role through the session. The user can open one or more sessions.
Separation of Duty
Task schema level static SOD
- two different tasks are assigned to the same role
- the role is assigned to one user
- -> the tasks are not mutually exclusive
- two different tasks are assigned to the same role
- the two tasks have been activated
- the role is assigned to one user
- -> the tasks are not mutually exclusive
- two different tasks, but element of same instance of workflow oriented tasks, are assigned to the same role
- the two tasks have been activated
- the role is assigned to one user
- -> the tasks are not mutually exclusive
Consistency principles for the T–RBAC system
(authors have designed guidelines that checks for consistency every time system state is to be changed. refer to paper for details.)
Discussion of some aspects of T–RBAC
Two main ideas in the T–RBAC model
- to use intermediate tasks between access rights and roles instead of assigning access rights to roles
- allows the roles to be linked to access rights through the intermediate tasks
- it makes the point that RBAC could be integrated into the ABAC model
- the classification of enterprise tasks (job function of contacts) according to their characteristics
- Tasks that belong to class S or class A are inheritable and their access rights are inherited to higher roles in the role hierarchy.
- Tasks that belong to class P are private and are not inherited to higher roles.
- Tasks that belong to class W or class A follow active security policy and they are managed by the workflow mechanism.
The fundamental point of task classification is not that tasks are classified into ‘four’ classes, but that a task can be ‘classified’ by their ‘characteristics’. Therefore, if anyone wants to implement a real system based on T–RBAC for a certain company, he/she may define other characteristics of tasks depending on the company, and thus he/she can classify the tasks into five or more classes for access control.
Comparison of access control models
*partial inheritance can be expressed by the private role concept - so how is this an advantage over RBAC?
*auditing of task execution - If a new task is inserted to a role Rn; the senior roles of Rn automatically receive auditing authority for the new task, which does not lead to any side effects.