Structured Policy Language
The goal of this project is to allow creators and managers of digital material to specify and reason about policies in a mechanism-independent environment. To meet this goal, we are designing a language for handling policies that is based on first-order logic. In addition, we are creating a prototype to demonstrate that non-logicians can use the logic effectively. The prototype will also show that automatic tools can be developed for reasoning about the policies.
The first phase of this project is to design an interface that allows users to specify a wide-range of common policies, as well as facts about their environment, in a fairly intuitive, 'English-language' format. A translator will convert these policies into logical formulas that are then analyzed to determine if a particular action such as Alice downloading an mp3 is explicitly permitted or explicitly forbidden by the policies. In the second phase, the prototype will be extended to answer other questions such as 'are these policies consistent?'. We then intend to look at delegation, meta-policies, and how certificates and other existing security strategies could be used to in conjunction with our approach.
The interface and underlying logic will be refined to reflect the particular needs of Fedora digital library objects. Since the types of policies that are of interest to digital libraries are common among a large class of applications, focusing on Fedora will let the work be tested 'in the field', while still being applicable to a number of systems.
Questions concerning this project should be sent to Vicky Weissman.