title | status | paper | people | peopleOrder | ||||
---|---|---|---|---|---|---|---|---|
Formal Modelling and Automated Trade-Off Analysis of Enforcement Architectures for Cryptographic Access Control in the Cloud |
submitted |
TOPS2020_2 |
|
surname |
Below, you find links to complementary material and additional resources referenced in the paper. Please see the repository for more details on CryptoAC.
By considering all possible entity-domain pairs that preserves the expected confidentiality, integrity and availability of involved resources, our architectural model is composed of 81 different architectures. The complete list of architectures is available here.
We present the Cloudify blueprint we developed for an architecture that we later deployed for the eGovernment scenario. The source code of the Cloudify Blueprint is available here.
Each white rectangle is a node and it represents a cloud service (e.g., security groups, cloud functions). Links are relationships between nodes and are used to control the deployment flow. The blueprint contains three main clusters (blue borders). The cluster on top models the relational database service (i.e., MS, a Relational Database Service in AWS) while the cluster in the middle models the cloud function (i.e., RM, a Lambda function in AWS). The last cluster on the bottom-right corner models the storage service (i.e., DS, a S3 service in AWS). The proxy runs in the users' computers. Therefore, the proxy is not part of the blueprint.
We developed a fully working prototype implementing the cryptographic access control scheme developed by Garrison et al.. You can find the source code in the GitHub repository. The prototype was tested with several simulated sequences of operations combining the creation of users and roles, assignment and revoking of permissions and the creation, update and management of files. The prototype offers a user interface based on web technologies and RESTful APIs.
Below, we report four screenshots of the web interface offered by CryptoAC. The first figure presents the login form.
The second figure the home screen; the user is presented with his data and the roles and files he has access to.
The third figure presents a form allowing the user to insert configuration data in the proxy, like the chosen CSP.
The fourth figure contains an example of how the user's dashboard appears at runtime; the left black sidebar presents the possible actions the user can perform (e.g., if the user is the admin, he/she can add users, roles and manage the AC policy), while the tables list the accessible roles and files.
We implemented the Multi-Objective Combinatorial Optimization Problem (MOCOP) in a web dashboard. The dashboard allows selecting the algorithm and metric to use to evaluate architectures and configuring pre-filters. Then, the dashboard allows setting trust assumptions, weights and soft-hard constraints. The optimization problem is solved in real-time and the resulting architectures, along with the effect on the goals, are shown in the last blue section. You can freely interact with the dashboard here.