Distributed systems and applications are often expected to enforce high-level authorization policies. To this end, the code for these systems relies on lower-level security mechanisms such as, for instance, digital signatures, local ACLs, and encrypted communications. In principle, authorization specifications can be separated from code and carefully audited. Logic programs, in particular, can express policies in a simple, abstract manner. For a given authorization policy, we consider the problem of checking whether a cryptographic implementation complies with the policy. We formalize authorization policies by embedding logical predicates and queries within a spi calculus. This embedding is new, simple, and general; it allows us to treat logic programs as specifications of code using secure channels, cryptography, or a combination. Moreover, we propose a new dependent type system for verifying such implementations against their policies. Using Datalog as an authorization logic, we show how to type several examples using policies and present a general schema for compiling policies. © Springer-Verlag Berlin Heidelberg 2005.
CITATION STYLE
Fournet, C., Gordon, A. D., & Maffeis, S. (2005). A type discipline for authorization policies. In Lecture Notes in Computer Science (Vol. 3444, pp. 141–156). Springer Verlag. https://doi.org/10.1007/978-3-540-31987-0_11
Mendeley helps you to discover research relevant for your work.