An access control language for object-oriented programming systems

Abstract An extended access control language and implementation mechanism is specified for use in the protection of modules (or objects) in object-oriented programming systems. Described within the context of a “resource module” as the standard programming construct, the language may be readily adapted for use in other object-oriented systems and is designed for ease of use by a normal programmer. The protection, afforded to program modules, captures the advantages of access control lists, provides the power of “least privilege” found in capability based systems, and allows for extended control on individual subjects through the use of access rights expressions.