Changes between Initial Version and Version 1 of Internal/Rbac


Ignore:
Timestamp:
Aug 29, 2006, 5:01:50 PM (18 years ago)
Author:
hedinger
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Internal/Rbac

    v1 v1  
     1== Role-Based Access Control ==
     2In normal, scheduled operation, ORBIT security involves making sure that each person using an ORBIT resource is allowed to do so at that time.  The Lightweight Directory Access Protocol (LDAP) is used by ORBIT to ''authenticate'' each user's password when he or she logs into an ORBIT controller or server.  LDAP authentication and the proper use of ORBIT user id's and passwords allows each user id to be related to a single human user.  A single person may have one or more ORBIT user id's.  Each ORBIT user id may be logged into one or more sessions, and during each session there may well be multiple computer processes initiated by the user.  A ''process'' is an instance of a user running an application program like a spreadsheet, editor or browser.
     3
     4Role-Based Access Control (RBAC) will be used by ORBIT to ''control'' each user's ''access'' to ORBIT resources based on his or her ''role''.  To explain this use of roles, first some terminology.  When a user runs an application program that process acts on behalf of the user and is referred to as a ''subject''.  An ''object'' is any resource accessible on a computer system, including peripherals, files, databases, and fields in a database.  An ''operation'' is an active part of a process invoked by the subject process much like a function call or a method invocation.  In general, a ''permission'' or privilege is the authorization to perform some action on the system.  In RBAC, a permission is the authorization to perform a given operation on a given object.  The use of roles to control access is based on the observation that there may be thousands of users in a given organization, but there are fewer than a hundred different roles they act in at any given time to access resources.  Users are assigned to one or more roles.  Each role has a defined set of permissions, each permission either allowing or disallowing an operation invoked by a subject process run by a user acting in that role to access a given object.
     5
     6RBAC promises simpler administration of access control than access control lists.  It enables an organization to enforce separation of duty, the principle of least privilege and timely revocation of trust.  Because it is based on formal model, a given an assignment of users to roles may be checked for consistency with security design goals.
     7
     8Two special constraints are needed with role-based access control for ORBIT.  A primary goal of ORBIT's is to insure each users has access to data and results only for their project.  Second, use of the grid is scheduled and its access control has to be integrated with the ORBIT grid scheduler.
     9
     10As with any access control mechanism, role-based access control will have some performance penalties.  Role-based access control should provide sufficiently flexible control with acceptable performance for reasonable administrative cost.  In ORBIT, role-based access control will be implemented using mechanisms provided by LDAP.  It is expected that this implementation will have acceptable performance while providing the desired security.
     11
     12 * [wiki:Internal/Rbac/OrbitRbacLevels RBAC Reference Model Components]
     13 * [wiki:Internal/Rbac/OrbitRbacDesign Design of Role-Based Access Control for ORBIT]
     14 * [wiki:Internal/Rbac/LdapResources Resources for Lightweight Directory Access Protocol (LDAP)]
     15 * [wiki:Internal/Rbac/RbacResources Resources for Role-Based Access Control (RBAC)]