January 9, 2019 Outline
Reading: text, §3–3.3, [TL13,Z+05]
Due: Homework #1, due January 23
- Attribute-Based Access Control Matrix
- Attributes
- Predicates
- Modified primitive operations
- Commands
- What is the safety question?
- An unauthorized state is one in which a generic right r could be leaked into an entry in the ACM that did not previously contain r. An initial state is safe for r if it cannot lead to a state in which $r$ could be leaked.
- Question: in a given arbitrary protection system, is safety decidable?
- Mono-operational case: there is an algorithm that decides whether a given mono-operational system and initial state is safe for a given generic right.
- General case: It is undecidable whether a given state of a given protection system is safe for a given generic right.
- Approach: represent Turing machine tape as access control matrix, transitions as commands
- Reduce halting problem to it
- Related results
- The set of unsafe systems is recursively enumerable
- Monotonicity: no delete or destroy primitive operations
- The safety question for biconditional monotonic protection systems is undecidable.
- The safety question for monoconditional monotonic protection systems is decidable.
- The safety question for monoconditional protection systems without the destroy primitive operation is decidable.
- Take-Grant Protection Model
- Counterpoint to HRU result
- Symmetry of take and grant rights
- Islands (maximal subject-only tg-connected subgraphs)
- Bridges (as a combination of terminal and initial spans)
- Sharing
- Definition: can•share(α, x, y, G_{0})
true iff there exists a sequence of protection graphs G_{0}, …, G_{n} such that
G_{0} ⊢^{*} G_{n} using only take, grant, create, remove rules and in G_{n},
there is an edge from x to y labeled α
- Theorem: can•share(r, x, y, G_{0}) iff there is an edge from x to y labeled r in G_{0}, or all of the following hold:
- there is a vertex y′ with an edge from y′ to y labeled r;
- there is a subject y′ which terminally spans to y′, or y′ = y′;
- there is a subject x′ which initially spans to x, or
x′ = x; and
- there is a sequence of islands I_{1}, …, I_{n} connected by bridges for which x′ ∈ I_{1} and y′ ∈ I_{n}.
- Model Interpretation
- ACM very general, broadly applicable; Take-Grant more specific, can model fewer
situations
- Example: shared buffer managed by trusted third party