Week 7 - RBAC and ABAC Flashcards
RBAC
Role Based Access Control
RBAC model governs the access of a user to information through the roles to which the user is assigned
RBAC three primary entities
users, roles, permissions
Users are assigned roles, which have permissions consisting of operations and objects
Permissions consist of
Operations and objects
User-Role Relation
This type of relation is created due to assignment of users to roles
For example, usually a user is assigned only a single role while a role could be assigned to multiple users ….
Role-Permission Relation
This is the second primary relation in RBAC. Typically a role is assigned multiple permissions. Also a permission could be assigned to multiple roles. Hence theoretically, Role-Permission assignment relation is a many-to-many relation.
Permission in RBAC
one can see that that a permission entity itself is composed of a combination of operations on objects
Operate-CustomerAcct Permission
Oper-Object (Read, CustomerAcct)
Oper-Object (AddTrans, CustomerAcct)
Oper-Object (DeleteTrans, CustomerAcct)
Role Hierarchy
Roles can be organized as a hierarchy instead of a flat data.
By organizing the roles as a hierarchy, a role higher in the hierarchy can automatically inherit all permissions of the roles beneath it.
RBAC Model Relations
User-Role (, )
Role-Perm (, )
Inherited-Role (, )
RBAC Create Command
Create-User (Lee)
Create-Role (LoanOfficer)
Create-Permission (Operate-LoanAcct)
RBAC Add Role Command
Add-UserRole (Mike, Teller)
Drop-UserRole (Mike, Teller)
Would result in the following relation added to RBAC model
User-Role (Mike, Teller)
RBAC to add/drop role hierarchies
Add-InheritedRole (Customer-Rep, Teller)
Will result in
Inherited-Role (Customer-Rep, Teller)
RBAC add role permission
Add-RolePerm (Teller, Read-LoanAcct)
Drop-RolePerm(Customer-Rep, Operate-LoanAcct)
will result in
Role-Perm (Teller, Read-LoanAcct)
RBAC Advantages
Eliminates the need to assign permissions directly to the user
If a user’s job description or position changes, it is enough that the user is deleted from certain roles and assigned new roles that is appropriate to his/her new position.
If the permissions required for a given role changes, it is enough that permissions are added to or deleted from the corresponding role.
RBAC Disadvantages
In some instances, there may be too many roles defined to enable users to do some one-time or emergency operations with the result it results in a situation called role proliferation.
When there are too many roles, the administrators may not update the permission set properly with the result some users may have more permissions than what is needed to perform their role.
In some instances, when a user changes job, the role assignments may not be properly changed.
Attribute-based Access Control (ABAC)
In an ABAC model, as the name denotes, the access rights for a user or subject is based on the current values of attributes associated with subject, object and optionally environment as well.