Ch09 Models
Ch09 Models
Security Policy
A security policy is a well-defined set of rules that include the following:
Subjects: the agents who interact with the system, which could be defined in
terms of specific individuals or in terms of roles or ranks that groups of
individuals might hold within an organization.
Individuals could be identified by their names or by their job titles, like President,
CEO, or CFO. Groups could be defined using terms such as users, administrators,
generals, majors, faculty, deans, managers, and administrative assistants. This
category also includes outsiders, such as attackers and guests.
Actions: the things that subjects may or may not do with respect to the
objects.
Examples include the reading and writing of documents, updating software on a
web server, and accessing the contents of a database.
Security Models
A security model is an abstraction that
provides a conceptual language for
administrators to specify security policies.
Typically, security models define
hierarchies of access or modification rights
that members of an organization can have,
so that subjects in an organization can
easily be granted specific rights based on
the position of these rights in the
hierarchy.
Examples include military classifications of
access rights for documents based on
concepts like unclassified, confidential,
secret, and top secret.
Trust Management
A trust management system is a formal
framework for specifying security policy in a
precise language, which is usually a type of
logic or programming language, together with
a mechanism for ensuring that the specified
policy is enforced.
A trust management system consists of two
main components:
a policy language
a compliance checker
10
13
19
U.S. Navy image in the public domain.
RBAC Components
A user is an entity that wishes to access resources of the organization to
perform a task. Usually, users are actual human users, but a user can also be a
machine or application.
A role is defined as a collection of users with similar functions and
responsibilities in the organization. Examples of roles in a university may
include student, alum, faculty, dean, staff, and contractor. In general,
a user may have multiple roles.
Roles and their functions are often specified in the written documents of the organization.
The assignment of users to roles follows resolutions by the organization, such as employment
actions (e.g., hiring and resignation) and academic actions (e.g., admission and graduation).
A session consists of the activation of a subset of the roles of a user for the
purpose of performing a certain task.
For example, a laptop user may create a session with the administrator role to install a new
program.
Sessions support the principle of least privilege.
20
Hierarchical RBAC
In the role-based access control model, roles can be
structured in a hierarchy similar to an organization chart.
More formally, we define a partial order among roles by
saying that a role R1 inherits role R2, which is denoted
R1 > R2,
if R1 includes all permissions of R2 and R2 includes all users
of R1.
When R1 > R2, we also say that role R1 is senior to role R2
and that role R2 is junior to role R1.
For example, in a company, the role manager inherits the role
employee and the role vice president inherits the role
manager.
Also, in a university, the roles undergraduate student and
graduate student inherit the role student.
21
22