# What is the importance of lattice based access control?

I've been reading the following papers in access control.

http://faculty.nps.edu/dedennin/publications/lattice76.pdf

The papers ultimately try to reduce the access control mechanisms to lattice based access control. But I do not understand why reducing to lattice model is so important.

Can anyone comment?

-

Working with general partial orders for access control would be inconvenient, because two access classes wouldn't necessarily have a unique superior access class. We could try to define an associative, commutative and idempotent binary operation $\oplus$ which computes the superior access class $a\oplus b$ for two given access classes $a$ and $b$. However, this operation $\oplus$ canonically defines a join-semilattice via $a\oplus b=b \leftrightarrow a \leq_\oplus b$, and the corresponding order $\leq_\oplus$ would better respect the given order $\leq$ in the sense that $a\leq_\oplus b \to a\leq b$. At this point, it is convenient to assume that the initial partial order is identical to the partial order defined by $\oplus$, because we could otherwise find $a$ and $b$ with $a\leq b$ but $a\oplus b > b$.
Now we have a join-semilattice. We may also safely assume that the number of access classes is finite. This is probably all that is needed for an access control mechanism. However, since all that is missing to get a lattice is a minimal element for the access classes, we simply add it. The advantage of a lattice is that it is much easier to find information about lattices than about join-semilattices. We also get the meet operation $\otimes$ for free, but it's unclear whether this operation will really be of much use in practice. (I only skimmed through the given references, so this conclusion might be wrong.) Trying to ensure that both $\oplus$ and $\otimes$ can be evaluated efficiently might even needlessly complicate the data-structure used for the access classes. Another issue with using a lattice instead of a join-semilattice is that a tree is only a join-semilattice, and adding a minimal element will destroy the property of being a tree.