中文

数据库支撑应用中的上下文感知细粒度策略实施

密码学与安全 2020-03-17 v4

摘要

数据库支撑应用依赖内联策略检查以符合策略地处理用户的私有与机密数据,因为传统数据库访问控制机制无法实施复杂策略。然而,此类应用中因遗漏检查而产生的程序错误十分常见,并导致数据泄露。虽然将策略与代码分离是一种自然的解决方案,但许多数据保护策略基于数据被访问的上下文以及数据如何被使用来规定限制。自动实施这些限制存在显著挑战,因为确定上下文所需的信息要求策略实施与应用实现紧密耦合。我们提出 Estrela,一个用于实施上下文与细粒度数据访问策略的框架。基于在大多数数据库支撑应用中 API 端点可与显著上下文信息相关联这一观察,Estrela 允许开发者规定针对 API 的数据访问与使用限制。Estrela 在策略规定与应用实现之间提供了清晰的分离,从而便于策略的审计与维护。Estrela 中的策略由预评估与后评估条件组成,分别提供了在查询发出前调节数据库访问、以及在查询评估后对信息释放施加更细粒度约束的手段。我们构建了 Estrela 的原型,并将其应用于改造若干真实世界应用(1000 至 8 万行代码)以实施不同的上下文策略。我们的评估表明 Estrela 能以最小开销实施策略。

关键词

引用

@article{arxiv.1811.08234,
  title  = {Contextual and Granular Policy Enforcement in Database-backed Applications},
  author = {Abhishek Bichhawat and Matt Fredrikson and Jean Yang and Akash Trehan},
  journal= {arXiv preprint arXiv:1811.08234},
  year   = {2020}
}