  Traditional authorization policies are user-centric, in the sense that
authorization is defined, ultimately, in terms of user identities. We believe
that this user-centric approach is inappropriate for many applications, and
that what should determine authorization is the relationships that exist
between entities in the system. While recent research has considered the
possibility of specifying authorization policies based on the relationships
that exist between peers in social networks, we are not aware of the
application of these ideas to general computing systems. We develop a formal
access control model that makes use of ideas from relationship-based access
control and a two-stage method for evaluating policies. Our policies are
defined using path conditions, which are similar to regular expressions. We
define semantics for path conditions, which we use to develop a rigorous method
for evaluating policies. We describe the algorithm required to evaluate
policies and establish its complexity. Finally, we illustrate the advantages of
our model using an example and describe a preliminary implementation of our
algorithm.
