Database Security
Database Security
in
Smartworld.asia Specworld.in
UNIT-2
SECURITY MODEL-1
2.1 ACCESS MATRIX MODEL:
A list of objects
A list of subjects
The matrix itself, with the objects making the columns and the subjects making
the rows In the cells where a subject and object meet lie the rights the subject has
on that object. Some example access rights are read, write, execute, list and delete.
Example Access Matrix:
Objects
Virtual Machine
Sally Doe rl -
pg. 27
Smartzworld.com 1 jntuworldupdates.org
Smartworld.asia Specworld.in
Implementation:
The two most used implementations are access control lists and capabilities.
Access control lists are achieved by placing on each object a list of users and their
associated rights to that object. An interactive demonstration of access control lists
can be seen here. For example, if we have file1, file2 and file3, and users (subjects)
John and Sally, an access control list might look like:
Objects (Files)
The rights are R (Read), W (Write) and X (Execute). A dash indicates the user does
not have that particular right. Thus, John does not have permission to execute File3,
and Sally has no rights at all on File1.
Users
Capabilities are accomplished by storing on each subject a list of rights the subject has
for every object. This effectively gives each user a keyring. To remove access to a
particular object, every user (subject) that has access to it must be "touched". A touch
is an examanition of a user's rights to that object and potentially removal of rights.
pg. 28
Smartzworld.com 2 jntuworldupdates.org
Smartworld.asia Specworld.in
This brings back the problem of sweeping changes in access rights. Here is what an
implementation of capabilities might look like, using the above example:
Access restrictions such as access control lists and capabilities sometimes are not
enough. In some cases, information needs to be tightened further, sometimes by an
authority higher than the owner of the information. For example, the owner of a top
secret document in a government office might deem the information available to
many users, but his manager might know the information should be restricted further
than that. In this case, the flow of information needs to be controlled -- secure
information cannot flow to a less secure user.
The model represents a system as directed graph, where vertices are either subjects or
objects. The edges between them are labelled and the label indicates the rights that the
source of the edge has over the destination. Two rights occur in every instance of the
model: take and grant. They play a special role in the graph rewriting rules describing
admissible changes of the graph.
i. Take rule allows a subject to take rights of another object (add an edge
originating at the subject)
ii. Grant rule allows a subject to grant own rights to another object (add an
edge terminating at the subject)
iii. Create rule allows a subject to create new objects (add a vertex and an
edge from the subject to the new vertex)
iv. Remove rule allows a subject to remove rights it has over on another
object (remove an edge originating at the subject)
pg. 29
Smartzworld.com 3 jntuworldupdates.org
Smartworld.asia Specworld.in
Preconditions for take(o,p,r): subject s has the right Take for o. object o has the right r
on p.
Preconditions for grant(o,p,r): subject s has the right Grant for o. s has the right r on p.
Using the rules of the take-grant protection model, one can reproduce in which states
a system can change, with respect to the distribution of rights. Therefore one can
show if rights can leak with respect to a given safety model.
The Take-Grant protection model is a formal access control model, which represents
transformation of rights and information between entities inside a protection system.
This model was presented first by Jones et al. [8] to solve the “Safety Problem”. They
showed that using Take-Grant model, the safety problem is decidable and also can be
solved in linear time according to the number of subjects and objects of the system.
1. Take rule: Let x, y, and z be three distinct vertices in a protection graph G0 and let
x be a subject. Let there is an edge from x to y labeled γ where t∈ γ, an edge from y to
z labeled β. Then the take rule defines a new graph G1 by adding an edge to the
protection graph from x to z labeled α, where α⊆β. Fig 1.(a) shows the take rule
graphically.
2. Grant rule: Let x, y, and z be three distinct vertices in a protection graph G0 and
let x be a subject. Let there is an edge from x to y labeled β where g∈ γ, an edge from
x to z labeled β. Then the grant rule defines a new graph G1 by adding an edge to the
pg. 30
Smartzworld.com 4 jntuworldupdates.org
Smartworld.asia Specworld.in
protection graph from y to z labeled α, where α⊆β. Fig.1(b) shows the grant rule
graphically.
Having the take right over another subject or object means that its owner can achieve
all rights of the associated subject or object unconditionally. However, obtaining the
rights through the grant rule requires cooperation of the grantor.
pg. 31
Smartzworld.com 5 jntuworldupdates.org