The reference monitor (see Figure 2.1) is an abstract concept, whereby all accesses that subjects make to objects are authorized based on the information contained in an access control database. Conceptually, the reference monitor represents the hardware and software portion of an operating system that is responsible for the enforcement of the security policy of the system. The access control database is the embodiment of this policy in terms of subject and object attributes and access rights. When a subject attempts to perform an operation (e.g., read or write) on an object, the reference monitor must perform a check, comparing the attributes of the subject with that of the object. In addition, the reference monitor, with respect to some security policy, must control the specific checks that are made and all modifications to the access control database
As an abstraction, the reference monitor does not dictate any specific policy to be enforced by the system, nor does it address any particular implementation. Rather, the reference monitor defines an assurance framework that has been used for over three decades in the design, development, and implementation of highly secure IT systems, and it has served as the foundation in evaluation of the relative degrees of trust that can be assigned to a multiuser computing system. The abstract requirements of a reference monitor are comprised of three fundamental implementation principles, described as follows: