DSL for automatic enforcement of privacy policies
Top 83.0% on sourcepulse
Jeeves is a Python-based embedded DSL for automatically enforcing information flow policies, designed for developers needing to manage data privacy and access control. It allows programmers to define policies that govern how sensitive data can be shared or derived, simplifying the enforcement of complex privacy rules.
How It Works
Jeeves employs a policy-agnostic programming model by separating core functionality from privacy policies. Programmers provide two views of sensitive data: a high-confidentiality (secret) view and a low-confidentiality (public) view. The Jeeves runtime then simultaneously processes both views, ensuring that outputs adhere to the defined policies, which specify permissible data flows based on viewer identity and data sensitivity.
Quick Start & Requirements
virtualenv -p python2 --no-site-packages env
), activate it (source env/bin/activate
), and install dependencies (pip install -r requirements.txt
).Highlighted Details
Maintenance & Community
Licensing & Compatibility
Limitations & Caveats
The project explicitly requires Python 2.7.6 and has dependencies like MacroPy and specific Django versions, indicating potential compatibility issues with modern Python environments. The Z3 SMT solver installation can be complex.
7 years ago
1 day