title: A method to implement fine-grained access control for personal health records through standard relational database queries.
abstract: Online personal health records (PHRs) enable patients to access, manage, and share certain of their own health information electronically. This capability creates the need for precise access-controls mechanisms that restrict the sharing of data to that intended by the patient. The authors describe the design and implementation of an access-control mechanism for PHR repositories that is modeled on the eXtensible Access Control Markup Language (XACML) standard, but intended to reduce the cognitive and computational complexity of XACML. The authors implemented the mechanism entirely in a relational database system using ANSI-standard SQL statements. Based on a set of access-control rules encoded as relational table rows, the mechanism determines via a single SQL query whether a user who accesses patient data from a specific application is authorized to perform a requested operation on a specified data object. Testing of this query on a moderately large database has demonstrated execution times consistently below 100ms. The authors include the details of the implementation, including algorithms, examples, and a test database as Supplementary materials.
authors.affiliation: Sujansky & Associates, LLC, San Carlos, CA, USA. Electronic address: wsujansky@sujansky.com.
authors.forename: Walter V
authors.initials: WV
authors.lastname: Sujansky
authors.affiliation: Sujansky & Associates, LLC, San Carlos, CA, USA.
authors.forename: Sam A
authors.initials: SA
authors.lastname: Faus
authors.affiliation: Corman Technologies, Inc., Santa Rosa, CA, USA.
authors.forename: Ethan
authors.initials: E
authors.lastname: Stone
authors.affiliation: School of Nursing, University of Wisconsin-Madison, USA.
authors.forename: Patricia Flatley
authors.initials: PF
authors.lastname: Brennan
mesh_terms: D022126:Access to Information; D016494:Computer Security; D003628:Database Management Systems; D016208:Databases, Factual; D055991:Health Records, Personal; D006801:Humans; D008962:Models, Theoretical; D011381:Programming Languages