Access Control List
Alternate Forms
Ackle
Prononciation
ACL
Acronym
Definitions
Definition 1
A digital representation listing the principals that have access to a resource and the operations that they are authorized to execute on it.
It is used by the reference monitor to allow or deny access requests to the resource.
It is a discretionary access control mechanism, i.e. authorized users such as resource owners have the possibility to modify it, effectively granting and revoking access permissions.
It is linked to (and sometimes embedded in) the resource. This may be an advantage as it provides flexibility with an access granularity level set at the individual resource. This may be a disadvantage as managing ACLs at scale becomes inefficient, function of the number of resources, the number of principals and the stability of access decision factors.
Related Terms
AWS ACL (Dictionary Entry)
Product-specific Implementation
Discretionary Access Control
Generic Form
Linux ACL
Resource
Windows ACL
Quotes
Access Control List (ACL). The access matrix is implemented through a set of lists, one for each object (i.e., the columns of the matrix) in the system. The list associated with an object has an element for each subject holding a privilege on the object. This element contains the set of privileges the subject can exercise on the object. This is the way usually adopted by modern operating systems.
(Ferrari, 2010, p. 12)
4.2.2 Access Control Lists
Another way of simplifying the management of access rights is to store the access control matrix a column at a time, along with the resource to which the column refers. This is called an access control list or ACL (pronounced ‘ackle’). In the first of our above examples, the ACL for file 3 (the account file) might look as shown here in Figure 4.4.
ACLs have a number of advantages and disadvantages as a means of managing security state. These can be divided into general properties of ACLs, and specific properties of particular implementations.
ACLs are a natural choice in environments where users manage their own file security, and became widespread in the Unix systems common in universities and science labs from the 1970s. They are the basic access control mechanism in Unix-based systems such as GNU/Linux and Apple’s OS/X; the access controls in Windows are also based on ACLs, but have become more complex over time. Where access control policy is set centrally, ACLs are suited to environments where protection is data-oriented; they are less suited where the user population is large and constantly changing, or where users want to be able to delegate their authority to run a particular program to another user for some set period of time. ACLs are simple to implement, but are not efficient as a means of doing security checking at runtime, as the typical operating system knows which user is running a particular program, rather than what files it has been authorized to access since it was invoked. The operating system must either check the ACL at each file access, or keep track of the active access rights in some other way.
Finally, distributing the access rules into ACLs means that it can be tedious to find all the files to which a user has access. Revoking the access of an employee who has just been fired will usually have to be done by cancelling their password or other authentication mechanism. It may also be tedious to run system-wide checks; for example, verifying that no files have been left world-writable could involve checking ACLs on millions of user files.
(Anderson, 2008, p. 99)
Access control list
A list of principals that are authorized to have access to some object.
(Saltzer and Schroeder, 1975, p. 1)
Bibliography
See Also
-
Access Control List (Dictionary Entry) (Dictionary)
-
AWS ACL (Dictionary Entry) (Dictionary)