A patient privacy centric access control model for EHR systems. Mario Sicuranza*, Angelo Esposito and Mario Ciampi



Similar documents
An Object Oriented Role-based Access Control Model for Secure Domain Environments

Components- Based Access Control Architecture

Role-Based Access Control Requirements Model with Purpose Extension

CLOUD-HOSTED PROXY BASED COLLABORATION IN MULTI- CLOUD COMPUTING ENVIRONMENTS WITH ABAC METHODS

Security and Cryptography 1. Stefan Köpsell, Thorsten Strufe. Module 8:Access Control and Authentication

Completeness, Versatility, and Practicality in Role Based Administration

Chapter 2 Taxonomy and Classification of Access Control Models for Cloud Environments

Access Control Intro, DAC and MAC. System Security

OpenHRE Security Architecture. (DRAFT v0.5)

Secure healthcare data sharing among federated health information systems. Mario Sicuranza*, Mario Ciampi, Giuseppe De Pietro and Christian Esposito

Distributed Attribute Based Encryption for Patient Health Record Security under Clouds

Security Models: Past, Present and Future

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL

Role Based Access Control (RBAC) Nicola Zannone

Trusted RUBIX TM. Version 6. Multilevel Security in Trusted RUBIX White Paper. Revision 2 RELATIONAL DATABASE MANAGEMENT SYSTEM TEL

Chapter 23. Database Security. Security Issues. Database Security

1. Introduction. 2. Background Cloud computing in a nutshell

Security Enhanced Linux and the Path Forward

ISSN: (Online) Volume 3, Issue 3, March 2015 International Journal of Advance Research in Computer Science and Management Studies

Access Control. ITS335: IT Security. Sirindhorn International Institute of Technology Thammasat University ITS335. Access Control.

JOURNAL OF OBJECT TECHNOLOGY

Secure Role-Based Access Control on Encrypted Data in Cloud Storage using Raspberry PI

A federated interoperability architecture for health information systems. Mario Ciampi*, Giuseppe De Pietro, Christian Esposito and Mario Sicuranza

QUT Digital Repository:

ehealth Architecture Principles

Component visualization methods for large legacy software in C/C++

IHE IT Infrastructure Technical Framework Supplement

Information Brokering over the Information Highway: An Internet-Based Database Navigation System

FP-Hadoop: Efficient Execution of Parallel Jobs Over Skewed Data

A Semantic Approach for Access Control in Web Services

TECHNICAL SPECIFICATION: LEGISLATION EXECUTING CLOUD SERVICES

Role Engineering: The Cornerstone of Role- Based Access Control DECEMBER 2009

A Hierarchical Event-based Architecture for the Notification of Medical Document Availability

Overview of the national laws on electronic health records in the EU Member States National Report for Lithuania

Concerning: Norwegian Nurses Organisation s input to the Green Paper on Modernising the Professional Qualifications Directive

Chapter 5. Regression Testing of Web-Components

A Simple Implementation and Performance Evaluation Extended-Role Based Access Control

A Framework for Personalized Healthcare Service Recommendation

The Sensitive Information Management System for Merger and Acquisition (M&A) Transactions

Privacy Reference Monitor A Computer Model for Law Compliant Privacy Protection

Extended RBAC Based Design and Implementation for a Secure Data Warehouse

Part III. Access Control Fundamentals

nehta Commissioning Requirements for Secure Message Delivery Secure Messaging 19 December 2012 National E-Health Transition Authority

CHAPTER 22 Database Security Integration Using Role-Based Access Control

Electronic Health Network - Case Study Consent2Share Share with Confidence

Collaboration Service Integration Platform Using Context-Aware Role-Based Access Model

Scalable and secure sharing of data in cloud computing using attribute based encryption

An Application of Integrating Role and Lattice Based Access Control in Database Engineering

AN ENHANCED ATTRIBUTE BASED ENCRYPTION WITH MULTI PARTIES ACCESS IN CLOUD AREA

Event-based data dissemination control in healthcare

GenericServ, a Generic Server for Web Application Development

Role-Based Access Controls

Purpose-Centric Secure Information Sharing

Whitepaper. Choosing the Right Athlete Electronic Health Record System. Dave Glickman Chief Operating Officer, Presagia.

LAW. ON ELECTRONIC SIGNATURE (Official Gazette of the Republic of Montenegro 55/03 and 31/05)

Role Based Access Control Framework for Network Enterprises

Enhancing UML to Model Custom Security Aspects

Computer security Lecture 3. Access control

DBaaS Using HL7 Based on XMDR-DAI for Medical Information Sharing in Cloud

Bitrix Site Manager 4.1. User Guide

Data Protection Act Guidance on the use of cloud computing

Application Centric Infrastructure Object-Oriented Data Model: Gain Advanced Network Control and Programmability

End-to-End Security for Personal Telehealth

A Survey Study on Monitoring Service for Grid

Protective Marking Standard Implementation Guide for the Australian Government

FIPA agent based network distributed control system

How To Write An Electronic Health Record

Do you have a private life at your workplace?

CS377: Database Systems Data Security and Privacy. Li Xiong Department of Mathematics and Computer Science Emory University

86 Int. J. Engineering Systems Modelling and Simulation, Vol. 6, Nos. 1/2, 2014

Best Practices, Procedures and Methods for Access Control Management. Michael Haythorn

ARCHITECTURE DESIGN OF SECURITY SYSTEM

LEGISLATION COMMITTEE OF THE CROATIAN PARLIAMENT

Application Based Access Control on Cloud Networks for Data Security

Analysis of Different Access Control Mechanism in Cloud

The Open University s repository of research publications and other research outputs

Patient-Centric Secure-and-Privacy-Preserving Service-Oriented Architecture for Health Information Integration and Exchange

Access Control Models Part I. Murat Kantarcioglu UT Dallas

1 Introduction. 2 Background

An Enterprise Architecture and Data quality framework

DATA PROTECTION IN DIRECT MARKETING

Web Service Authorization Framework

Cesario Di Sarno. Security Information and Event Management in Critical Infrastructures

Role-Based Access Control (RBAC): Features and Motivations

Emerging threats for the healthcare industry: The BYOD. By Luca Sambucci

Break-out session 1: Predicting our data future

Enabling the secure use of RFID

Chapter 3: Data Mining Driven Learning Apprentice System for Medical Billing Compliance

CROATIAN PARLIAMENT 1364

Architecture for ACSI33 security requirements. Implementation using janusseal and Clearswift MIMEsweeper

How To Ensure Health Records Are Safe And Secure

MRBAC: Hierarchical Role Management and Security Access Control for Distributed Multimedia Systems

Database Security and Authorization

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

ASSURANCE OF PATIENT CONTROL TOWARDS PERSONAL HEALTH DATA

Leveraging UML for Security Engineering and Enforcement in a Collaboration on Duty and Adaptive Workflow Model that Extends NIST RBAC

zen Platform technical white paper

Section C. Requirements Elicitation

Ensuring Access Control in Cloud Provisioned Healthcare Systems

Implementing XML-based Role and Schema Migration Scheme for Clouds

Transcription:

Int. J. Internet Technology and Secured Transactions, Vol. 5, No. 2, 2014 163 A patient privacy centric access control model for EHR systems Mario Sicuranza*, Angelo Esposito and Mario Ciampi Institute for High Performance Computing and Networking (ICAR), National Research Council of Italy (CNR), Via Pietro Castellino, 111, 80131 Napoli, Italy E-mail: mario.sicuranza@na.icar.cnr.it E-mail: angelo.esposito@na.icar.cnr.it E-mail: mario.ciampi@na.icar.cnr.it *Corresponding author Abstract: The EHR systems consist of very sensitive data originated by the interaction of the patients with the healthcare system. In order to control who can do what on the data in the system, it is necessary to use a security mechanism that is the access control (AC). In this paper, an innovative AC model is defined. It meets the main features that have to be satisfied by an EHR. Our proposal is an advanced access control model that combines access control models known in the literature. It adds the characteristics of modularity and easiness in the management of access policies, focusing attention on patient s privacy and consent (patient privacy centric). The proposed model presents the following characteristics: attribute-based, multi-level, modular and with a dynamic and temporal management of the users lists. Besides, we have defined support functionalities that allow patients, organisations and physicians to take advantage of the AC potential. Keywords: access control model; privacy; electronic health record; EHR; patient consent; patient centric; MVC. Reference to this paper should be made as follows: Sicuranza, M., Esposito, A. and Ciampi, M. (2014) A patient privacy centric access control model for EHR systems, Int. J. Internet Technology and Secured Transactions, Vol. 5, No. 2, pp.163 189. Biographical notes: Mario Sicuranza received his BEng in Computer Engineering in 2006 and MEng in 2011 from the University of Naples Federico II, Italy. He is a PhD student in Information Engineering at the University of Naples Parthenope, Italy. Since 2011, he has been working at the National Research Council of Italy (CNR). Currently, he is a Fellow Research at the Naples branch of the Institute for High Performance Computing and Networking (ICAR). He takes part in projects on the EHR systems interoperability. His research interests include e-health, web services and security architectures. He is member of ihealth lab and HL7 Italia. Angelo Esposito received a first level (BS) degree in Computer Science in 2005 and a second level (MS) degree in 2009 in Computer Science from the University of Salerno, Italy. He received his Master in Interoperability for Public Administration and Networked Enterprises from the University of Roma La Sapienza in 2013. He is a PhD student in Information Engineering at the University of Naples Parthenope, Italy. Since 2009, he has been working at Copyright 2014 Inderscience Enterprises Ltd.

164 M. Sicuranza et al. the National Research Council of Italy (CNR). Currently, he is a Technologist at the Naples branch of the Institute for High Performance Computing and Networking (ICAR). He takes part in projects on the EHR systems interoperability. His research interests include e-health, security and AC model for EHR-S. He is a member of ihealth lab. Mario Ciampi is a Technologist at the Institute for High Performance Computing and Networking of the Italian National Research Council (ICAR-CNR). He received his MEng in Computer Engineering from the University of Naples Federico II in 2004, Master s degree in European Master on Critical Networked Systems in 2007 and PhD in Information Engineering in 2011 from the University of Naples Parthenope. His topics of interest focus on interoperability architectures for e-health. He is an Adjunct Professor in Elements of Computer Science at the University of Naples Federico I and member of ihealthlab, AMICO, HL7 Italia, and @ITIM. This paper is a revised and expanded version of a paper entitled An access control model for easy management of patient privacy in EHR systems presented at the ICITST-2013, London, 9 12 December 2013. 1 Introduction Electronic health record (EHR) systems enable the collection and sharing of electronic clinical data among different healthcare organisations. An EHR system provides a variety of services to manage data, as well as a certain number of high-level services that reduce medical errors and improve the quality of care. Iakovidis (1998) defined an EHR as digitally stored healthcare information about an individual s lifetime with the purpose of supporting continuity of care, education and research, and ensuring confidentiality at all times. The core of the EHR system is represented by the patients clinical data and the ability to access and to use these data. Clinical data on EHR systems are characterised by sensitive information, so they should be protected from unauthorised access. So for EHR systems, it is necessary to ensure the confidentiality of data and patient s privacy, and to guarantee the quality of the data and the integrity that leads the user (doctor) to have confidence in the data and in the information contained. To meet these needs (integrity, confidentiality, and quality), a widely used mechanism is access control (AC), which is a fundamental security barrier for securing data in a healthcare information system. The AC is a mechanism that limits the access to the documents in an EHR system, to who can operate them and how. In the literature, there are several models of AC, each one with different characteristics but all with the common goal of protecting data from unauthorised access. EHR systems should allow the definition of security policies (via the AC model) which reflect the following needs: 1 of the healthcare organisation that manages the data 2 of the patient 3 especially of the law and the directives in terms of the protection of medical data and patient s consent.

A patient privacy centric access control model for EHR systems 165 In literature, there are different AC models, such as mandatory access control (MAC), discretionary access control (DAC) and role-based access control (RBAC), starting from which more sophisticated models, closer to the needs for privacy, were later defined, such as the privacy-aware role-based access control (P-RBAC) model and the purpose-based access control (P-BAC) model. Each of these responds just partially to the patients needs for privacy, as most of them have limitations in the possibility of accurate and flexible management of the security policies. On the contrary, the aim of our model is to obtain the maximum accordance between what the access policies allow us to define and what the patients want to define. In addition, an EHR system is typically a distributed and heterogeneous system (Ciampi et al., 2013). In fact, it is composed of different and autonomous healthcare organisations, each of which can express its own security policies, independently from the others. Therefore, it is necessary to define an AC model that provides high flexibility and autonomy in the management of the access policies. This paper is to be considered as an extension of our previous work, in which we define an AC model with characteristics of modularity, flexibility and fine-grained specification in the definition of policies and dynamism in their management (Sicuranza and Esposito, 2013). Our solution is an advanced AC model that combines several AC solutions known in the literature, extending to them the characteristics of easiness in the management of access policies, and focusing attention on privacy and patients consent (patient privacy centric). The patient privacy-centric is the possibility to define fine-grained policies in compliance with the patients needs for privacy, which can be expressed through their consent to healthcare organisations or directly by the patients themselves. The obtained model is attribute-based, multilevel, modular and with a dynamic and temporal management of the users lists (through which it is possible to specify the authorised users on the system). On one hand, this paper expands and enhances the description of the model shown in the previous work. On the other hand, it shows a detailed description of the support functionalities of the model. Finally, it introduces the implementation of the proposed model in accordance with the model view control pattern (Leff and Rayfield, 2001). This paper has been organised as follows. Section 2 describes the related work regarding AC models. Section 3 illustrates some AC requirements for EHR systems. In Section 4, our model is presented. Section 5 presents the support functionalities. Section 6 shows the management of the AC with the description of an algorithm for the AC that uses our model, and a possible scenario that highlights the peculiarities of the MPP-ABAC model. Section 7 concludes this paper and outlines future work. 2 Related work In this section, we will briefly survey AC model related works. In the work of Lampson (1969), a formal definition of AC is given. This first model has a set of subjects and objects and it associates to each couple of subjects/objects the list of possible operations. Over the years, different models were presented. In 1973, the first multilevel model was introduced by Bell and LaPadula (1973). Such model consists of four access levels and access labels: un-classified, confidential, secret, and top secret. Later, the DAC and MAC models from which today almost all the others arise, and that currently have become two traditional access models were defined. The DAC model allows the user, who is

166 M. Sicuranza et al. the owner of the resources, to grant or deny access to the resources to other users, first through the definition of an access control matrix, then via an access control list. The MAC model is derived directly from the model of Bell and LaPadula (1976). In fact, as in the model NIST (1976), in the MAC model every subject and every resource has a security level. The MAC defines access rules between subject levels and resource levels, typical rules are read down and write up to ensure the privacy, and read up and write down to guarantee integrity. Later, Ferraiolo et al. (1995) defined a first RBAC model using, in a different way, the concepts of users, operations and groups and defining the concept of role. In this way, a more streamlined management of the policies in an enterprise system was allowed. Many RBAC models subsequently produced, introduce the concept of hierarchy and a partial order among the different roles, which allows a further simplification in the management of policies. An extension of the RBAC model is the temporal role-based access control (TRBAC) model was introduced by Bertino et al. (2000), which allows a temporal enabling and disabling of the role. Another very flexible model is the attribute-based access control (ABAC) (shows in Shen and Hong, 2006), which introduces the attributes associated with roles in order to add further constraints to the separation of duty. In the last few years different AC models have been proposed, which aim at satisfying the needs for the protection and the privacy of sensitive data. For example, the hierarchical privacy-sensitive filtering (HPSF) (in Oberholzer, 2001) has been defined for the protection of data on relational databases, with the definition of privacy levels for the data. The owner of given data specifies its privacy-sensitive level (PLS). Moreover, every user in the system is associated to a user privacy-sensitive level (UPSL). The access to data is regulated as in the multilevel security models, the access, in fact, depending on the compatibility between PSL and UPSL. A further model, which focuses on the need for definitions of policy related to the requirements of patient privacy, is the P-RBAC (Kim and Song, 2001). This model is an extension of the RBAC model, in which not only the role and the permissions, that such a role has on the required object, are considered, but also the purpose of the access to the object and the defined privacy policies in compliance with the user s will. Finally, the P-BAC (shown in Yang et al., 2007) introduces the hierarchy of purposes notion in the model. In fact, the roles and the operations are classified in a hierarchical manner according to the purpose. The access policy is defined comparing the hierarchy level of the role to the level of the requested operation. All these models present some limitations in the use of EHR systems. For instance, the data in the EHR systems are mostly clinical documents, and it is not easy to identify the owner of the document. There are several subjects, such as the author of the document, the holder of the document and the patient that could be considered the owner of the document, depending on the point of view. Therefore, the DAC model cannot be the only one used to manage the access policies to the EHR system. In the DAC model, the owner of the data has been identified. Furthermore, the DAC model is not scalable in a system of large dimensions, because it requires the definition of a matrix (user/objects/operations), which is, in this case, a complicated management. In the MAC model instead, security labels are associated to resources. It is difficult to use only this model in EHR systems because a given document could be characterised by different security levels depending on the user or on the healthcare organisation responsible for the data. This model is devoid of the flexibility necessary to be used alone for an EHR system. The RBAC model is static, since the association among roles, operations and objects is made upstream and it is defined by the system. The RBAC model is characterised by a greater flexibility compared to the MAC model

A patient privacy centric access control model for EHR systems 167 and it is easier to handle compared to the DAC model, but it still has many limitations on its use in an EHR system, such as the need to define common and shared roles for healthcare organisations and the lack of flexibility and dynamicity, that is the possibility of policy management by the patients, who in this model cannot change these repeatedly. In fact, to have more flexibility, the ABAC model (Shen and Hong, 2006) has been introduced, in which additional attributes associated with the role are used. In P-RBAC and purposed-based access models, the purpose attribute plays a key role in ensuring also the privacy of the patient. Although many of the latest models allow you to ensure the needs of the EHR system, they still lack components for dynamicity, which leads the patient not to have a full and easy control of his/her privacy. For these reasons, the model that we are presenting aims to overcome the limitations of the static nature in policy management, since the flexibility in the definition of policies is a fundamental requirement in an EHR system. The model combines particular features derived from several models known in the literature and it realises the characteristic of flexibility by introducing the concepts (entities of the model) of purposes, roles and users list. It also gives the patient full power in the definition of privacy policies in complete accordance with the consent he/she wants to provide to his/her clinical documents. The definition of the model is obtained starting from identifying the basic requirements to use it in an EHR system. In the next section the different requirements are presented. 3 Requirements of healthcare access control In the previous section, we have described some AC models; then we have illustrated the limitations of their use in EHR systems. In this section, we identify the main features that an access control model for an EHR system must satisfy. These requirements have been identified on the basis of the study of the national and international guidelines (for example, HIPAA guideline available at http://www.hhs.gov) and based on the experience acquired in the field due to the participation in different national and European projects [such as InFSE Architecture (2013), IPSE and EPSOS]. A suitable model for EHR systems should meet at least a set of requirements arising from: 1 the patient whom the documents refer to 2 the healthcare organisations holding the data 3 the international, national and local directives and norms. 3.1 Requirements of patients The patients needs are related to the confidentiality and integrity of their data in the EHR systems. Patients should trust the system and they should be able to specify the level of privacy they want to associate to their documents. P1 Patients should have the right of control over their own clinical documents. They must be able to specify who can do what with their own documents. P2 Patients should have the ability to change at any time the rights of access to their documents.

168 M. Sicuranza et al. P3 Patients should be able to hide their documents from specific healthcare practitioners. P4 Patients should to have the ability to see how and when their documents are accessed by the users who have access rights on them and for which purpose. This will be possible through the property of disclosure, which is indicated in the EU directives (General Data Protection Regulation, 2012). The patients should be able to provide access to healthcare practitioners that are not entitled to access the patients documents. 3.2 Requirements of healthcare organisations Healthcare organisations must provide protection to the data they hold. Every healthcare organisation can manage security policies with a certain level of autonomy. H1 Every healthcare organisation should be able to design its own security policy and to enforce it. The definition of the access policies must be implemented in total freedom and through a highly flexible mechanism. H2 The healthcare organisations should be able to change quickly and easily the access policies of a given document. H3 The Access control should not add a significant administrative overhead. 3.3 Requirements arising from international norms and directives In 2012, the European Commission unveiled a draft European General Data Protection Regulation based on the following properties and principles: D1 Informed consent, every processing of personal data will require the provision to the concerned individuals of clear and simple information, as well as obtaining specific and explicit consent. Users must be informed about how their personal data are handled, and they must be able to consciously agree on the processing of said data. This property corresponds to the 4th property (P4) mentioned above. D2 The property of right to be forgotten, with which a patient is able to delete the history of his documents. D3 The property of purpose, whereby the data must be used for the indicated purposes. D4 The property of disclosure, which suggests that patients should know how their data are used. D5 The management of access control must be easy to access in case a document is accessed for emergency purposes. Table 1 in the next section shows how the listed requirements are satisfied in our model.

A patient privacy centric access control model for EHR systems 169 4 Multilevel patient privacy attribute-based AC model (MPP-ABAC) This section presents the AC model for an EHR system that allows the satisfaction of the requirements listed in the previous section. Table 1 summarises how the requirements are satisfied, showing the several model components. The AC model, as said before, is patient-privacy-centric. By patient-privacy-centric, we mean the ability of the model to provide a security policy management, which is based on the patient s will. Such will can be expressed either by the patient s consent indicated by the healthcare organisation when a document is inserted in the EHR system, or directly by the patient who operates on the system (for example, through the GUI, such in Figure 11). In this way, she/he will be able to define, in a dynamic manner, the policies depending on her/his privacy needs. Our model extends the RBAC model with further components, in order to obtain a multilevel and attribute-based solution with a dynamic management of the policies. It is attribute-based, in the sense that it grants or denies access to certain operations depending not only on the role (as in the RBAC model), but also on other attributes. In our case, the attribute purpose is particularly relevant, in that it indicates the intent of access to the document, and it allows us to satisfy patient privacy needs, as we will show below. Furthermore, our model is multilevel, because it consists of multiple control levels [such as in the Bell-LaPadula NIST (1976) model]. The multilevel feature allows easier management of access control. In particular, it is possible to define a priori the security policies associated with security levels (top-secret and secret). In this way, the multilevel feature simplifies both the work of the patient (in the definition of security policies) and the control of the AC system. The multilevel management is very useful, e.g., during the publication of the document in the EHR system. In this case, it is important to keep the management simple but effective. Through the model presented in this work, the patient has the possibility to indicate the lists of authorised users and the lists of unauthorised users (for example, choose by role) for every document. The patient may also associate the access purposes to documents, in order to limit access to document only for the indicated purposes. The management of the policies in our proposed model is dynamic, in the sense that the model allows us to define easily and rapidly the policies based on the patient s will that can change in time. We have realised the structure of the model in various steps, using several components of other AC models known in literature. Our model is modular for this reason. In Figure 5, the different model components and the relationships between them are shown: the components introduced in our model are coloured, the others are taken from the RBAC standard model (Sandhu et al., 2000). The fundamental components of our model are: The permission component (RBAC model) which allows the specification of the access rights; that is, it defines which operations are permitted on various objects. The list component allows the definition of the lists of users (by user id or role of the users) that may be associated with permission by the relation able or by the relation NAble. Able indicates lists of the roles and users enabled operations, while NAble indicates lists of the users that are not enabled. Therefore, this allows to indicate easily the users who have the right to operate on the objects and those who do not have this right.

170 M. Sicuranza et al. The purposes component which associates the intended purposes (it is the aim for which a particular document has been collected) to objects, with the goal of limiting document access to the listed purposes only. The temporal component which allows the management of access rights depending on the time condition, as in the temporal-model-based AC (Bertino et al., 2000). Precisely, the component is associated with the relation able. In this way, it allows to temporarily activate the relation between a list of users/roles and permissions. The features component allows the association of specific characteristics to roles defined on the system. This component cannot be used by the patient, but only by the healthcare organisation. An example of the component usage is the assignment of the access in emergency feature to specific roles in the system. The limitations component allows to specify the limits in the definition of the association between the purposes and object and between able (role of the users) and object. Table 1 The table shows the components that allow us to meet the requirements in Section 3 Requirements H1 H2 H3 P1 P2 P3 P4 P5 D1 D2 D3 D4 D5 Model components List, purposes List, purposes MAC components List, purposes, temporal List, purposes, temporal List (NAble) List, purposes List (able) List, purposes List (NAble) Purposes List, purposes, permission Purposes, features The use of the model allows to manage the security policies in a fine-grained manner, both to healthcare organisations and directly to the patient. In fact, by using our model and the purposes, limitations and features components, healthcare organisations can easily and flexibly define and manage access policies in compliance with the consent expressed by the patient. With our model the patient is able to express, which system users can access his/her documents (objects) and those who cannot for each of his documents. This is possible through the components list, temporal, purposes, the relationships NAble and able, and the support functionalities of the model. The latter allow to use the full potential of the AC model. They will be further discussed in the Section 5. We call the presented model multilevel patient privacy centric attribute-based AC (MPP-ABAC). We describe the model in three steps, both to emphasise the modular feature and to simplify the description. An AC sub-model is obtained at the end of each intermediate step. It is stable and well defined. It can be used in different application

A patient privacy centric access control model for EHR systems 171 contexts, where a less accurate management of security policies is required. Below there are the descriptions of the steps for building the final model called MPP-ABAC. Figure 1 Hierarchy of purposes (see online version for colours) Note: The figure shows an example of a possible hierarchy of purposes in an EHR system. Figure 2 Access models resulting in the various steps (see online version for colours) 4.1 Step 1: multilevel RBAC The model in the first step is a kind of multilevel role-based access control (M-RBAC) model, in the sense that it enables us to indicate security levels as in the model MAC. Moreover, one of its levels operates as an RBAC model, obtaining a fusion between the MAC and RBAC models. The modularity of the model provides the ability (for example,

172 M. Sicuranza et al. at the time of the submission of a new clinical document) to select one of the predefined levels of privacy for the document, such as top-secret, secret, and normal, just as in the MAC model. Each security level has a well-defined security policy, which is set a priori by the healthcare organisation. For example, the top-secret level might allow access only to the patient and to the author of the document, the secret level might allow access to the patient, to the author of document and to his/her general practitioner (GP). The normal level instead could have controls as in the RBAC model. In fact, through this model, it is possible to associate operations on objects to roles set by the healthcare organisation. The level of security associated with the document depends on the patient and on consent that he/she has provided. The choice of the model MAC + RBAC allows a very easy kind of management, being it indeed sufficient to indicate the security level based on the fundamental privacy needs of the patient. This sub-model provides to the patient the ability to indicate the enabled roles for each document. In addition, the patient can modify the access rights (security level or the list of the roles) at any time. Figure 3 Graphical representation of the model obtained in the first step (see online version for colours) 4.2 Step 2: multi level P-RBAC (MP-RBAC) In the case of the level of privacy being normal, it is possible to extend the model obtained in the step 1 adding further components (features) to the RBAC model. The first component that we propose to add is the purposes component, which used in the model allows a more fine-grained management of patient privacy (than the RBAC model) through the security policies. Through the purposes component, it is possible to associate a set of intended purposes with each document. The intended purposes are predefined in the system. The intended purposes associated to a specific document are the only purposes to request the access to the document. The purposes management is hierarchical, a possible hierarchy of the purposes is in Figure 1. If a document is associated with an intended purpose that is a parent node of the hierarchy, then all the intended purposes that are his child nodes in the hierarchy will be automatically associated with the document. For example, if medical care (see in Figure 1) is an

A patient privacy centric access control model for EHR systems 173 intended purpose associated with the document, thus also specialistic, pathology, medical check, and all child nodes belonging to these will be associated with the document. It also allows a faster use of the system in the case of access in emergency mode (Access purpose = Emergency). Through the features component specific characteristics can be associated to a given role in the system. For example, it is possible to associate to a particular role the feature of having the access granted in emergency mode. This component allows an independent management of emergency policies in healthcare organisations. Through the components introduced at the second step, we obtain a model that is very similar to the P-BAC model (Kim and Song, 2001). In fact, we have introduced into our model the concepts of intended purpose and access purpose, as well as hierarchy of purposes. Intended purpose is the aim for which a particular document has been collected. Access purposes is the aim for which a document is requested. In this way a list of intended purposes is associated to every document, so when a user tries to access a document, the AC evaluates whether a certain access purpose is compatible with the list of intended purposes. (An example of a hierarchy of purposes in EHR systems is in Figure 1.) The model resulting at the end of the second step is the multilevel purpose role-based access control (MP-RBAC). The obtained model is multilevel because it has three security levels still. Figure 4 Graphic representation of the model obtained in the second step (see online version for colours) 4.3 Step 3: multi patient privacy centric attribute-based AC (MPP-ABAC) In step 2, we obtained a fine-grained access model in compliance with the main security needs of EHR systems. In modern EHR systems, as said before, it is necessary to give directly to the patient the opportunity to manage the policies regarding the access to his documents (this is the reason why we define our model as patient privacy centric). In fact, the European directives (General Data Protection Regulation, 2012) move in this direction. To render the management of the access policies easier for the patient, we join other components to the model specified in step 2. Through these components, the patient

174 M. Sicuranza et al. can define his/her own policies easily and dynamically, allowing or denying access to his/her documents to specified roles/users and for given purposes. The patient privacy centric characteristic is introduced into the model through the definition of the components: list, temporal and limitations and through the introduction of an additional support functionality for a dynamic management of document access. In fact, the list component enables a dynamic managing of the users and the roles by the patient. It allows a definition of the list of users and/or roles associated with the permission. In this way, it is possible to specify which users have and which ones do not have permission to access through the definition of the relationships able and NAble. With able relation it is possible to specify roles and users that are able to access to specific documents. On the contrary, with NAble relation it is possible to indicate the users that cannot access to specific documents (for example, the user has a role that is in the able list he/she can be deprived of his right if is in the NAble list. The management through the users lists, not only through the lists of roles as in the RBAC model, achieves higher accuracy in the definition of policies. The links between list, temporal, and the relations able and NAble are shown in Figure 5. Furthermore, the list component can be used to create a list of the patient s family members, obtaining in this way a management of the system very similar to the personal health record (PHR) system (Carrion et al., 2011). Figure 5 Graphic representation of the model obtained at the third step (see online version for colours) Through the temporal component associated with the list, the temporal ability, as well as the dynamic management of this list is provided, for example, in the case of a patient wants to grant the access to a given document to a specified medical specialist just for a limited time period. Another component added in our model is the limitation, which provides the ability (for example, for a healthcare organisation, owner of the documents) to indicate restrictions in the relations purpose-permission and list-permission. For example, in the first association (purpose-permission) it could be useful to indicate limitations to the patient adding specific purposes to a given document (for example, adding the research purpose on an e-prescription). Through the second association (list-permission) the healthcare organisation (owner of the health document) can restrict

A patient privacy centric access control model for EHR systems 175 access to documents to some roles or subjects. The component limitation allows a minimising of conflicts among different policies at run-time, allowing at the same time the healthcare organisations to have a supervision of the security policies defined by patients. Figure 2 illustrates the models used for the definition of our final model MPP-ABAC. The model obtained in step 3 is multilevel because its behaviour differs depending on the security level associated with the document. When the security level is top-secret or tsecret, the model behaves like the MAC model. Instead when the security level is tnormal the model is patient privacy attribute-based (PP-ABAC) because, as said before, the manage of the security policies are totally dependent on patient s will and based on several attributes (e.g., purpose, role, and so on). 5 Support functionalities of the model In addition to the definition of the model, we defined the support functionalities. They allow patient, healthcare organisation and physicians to take advantage of the potential provided by the access control model. The support functionality can be used by different users in the system. Below is a brief description of the support functionalities divided by user. 5.1 Patient and healthcare organisation Create new list: it allows to create new lists based on the patient s will. The lists can be formed by roles and by identification of the users. This feature can be used both by the patient and by the healthcare organisation. It uses the list component of the model. Bind list to the document: it allows to associate a created list to a specific document. This association is achievable through the able or NAble relations of the model. The able relation allows users in the list to access to the document, in the able list there are roles and/or identifier of the users. The NAble relation denies access to the document for the users in the NAble list. It is made solely by the identifiers. If the relation is able, it is possible to specify a temporal period in which the association will be active. In this case, the temporal component is used. This support functionality uses NAble and Able relations and, as said before, the temporal component too. Choose the intended purposes: it allows to associate the list of intended purposes to specific documents. The intended purposes are chosen by a hierarchy of purposes defined a priori in the system. The functionality uses the purposes component of the AC model. Specify security level: it allows to bind a specific security layer (for example, topsecret, secret or normal) to a given document. The functionality uses the security level component of the model.

176 M. Sicuranza et al. 5.2 Healthcare organisation (the patient is not able to use these functionalities) Define limitations: it allows healthcare organisations to define appropriate rules that limit the patient in the definition of links between documents and intended purposes (via purposes component) and between documents and the roles in the system (via able and NAble relations). The support functionality uses the limitation component of the AC model. Define features to roles: it allows healthcare organisations to associate given features to the roles of the system, for example, it is possible to bind the emergency access feature to given roles in the system. The support functionality uses the features component of the model. 5.3 Physician Access request to unauthorised access document: it allows the physician to access request to a document, to which he/she has no right of access. The patient is able to provide temporary access to physician through the list and temporal component, and through able relation. The physician sends an access request specifying the access purpose, his/her role, his/her identification, and other additional information. The next subsection shows the use case diagrams. In those, actors of the model and the different support functionalities that can be used are displayed. 5.4 Use case A use case diagram is a graphic depiction of the interactions among the elements of the system. A use case is a methodology used in the system analysis to identify, clarify, and organise system requirements. In our context, we use use cases to represent the capabilities both of the model and of the various actors who can use them. The main actors that interact with the model are: The patient who uses the functionalities: create new list; bind list to the document; define time constraints of access; choose the intended purposes; and specify security level. The healthcare organisation that, in addition to the functions used by the patient is able to use: define limitation in the definition of security policies by the patient and add features to the roles. The physician may only require access to a particular document to the patient. 6 A running scenario This section describes a possible algorithm of the model and its use in a real scenario.

A patient privacy centric access control model for EHR systems 177 6.1 A possible algorithm In order to show the ability of our model to define precisely the customised policies in accordance with the patient s need for privacy, we present an algorithm for the management of AC that uses the model. Like the model itself, the algorithm is modular, being composed, in fact, of different functions that use the different components of the model. In the algorithm, it is possible to swap the order of one control function with another, obtaining a functioning that better suits certain needs. The algorithm allows or denies access to an object on the basis of the inputs that it receives. The possible inputs are listed in the table below: Object identifier: the identifier of the clinical document in the EHR system, to which access is required. User identifier: the identifier of the subject who requires to operate on the object. Role: the role associated with the user in the EHR system. Operation: the action required on the object. Access purpose: the purpose, for which an object is accessed. Figure 6 Healthcare organisation and patient use case (see online version for colours) Figure 7 Physician use case (see online version for colours)

178 M. Sicuranza et al. The algorithm consists of several control functions placed in cascade. If all functions return true, then the output of the algorithm is PERMIT. The algorithm in emergency mode avoids several controls to speed access to the required object (as described in Requirement D5 in Section 3.2); for example, it does not make the presence control of the user in the list of authorised users or the control of access conditions (Figure 8). Let us describe the control functions. The algorithm is shown in Figure 9. Figure 8 Access request evaluation flow in the MPP-ABAC model (see online version for colours)

A patient privacy centric access control model for EHR systems 179 Figure 9 The figure shows an algorithm for the management of access control using the model presented 6.2 Control functions Below there is the description of the functions used in the algorithm and illustrated in Figure 8. The checkaccess(user, object)function It receives as input user identifier and object identifier. The function returns true, so the access control algorithm returns PERMIT, if the role of the user who requests access to the object is compliant with the policies about the security level of the requested document (secret or top secret). Otherwise, the access control algorithm outputs DENY. This function is active only if the security level is secret or top-secret.

180 M. Sicuranza et al. The checkinemergency(object, role)function It receives object identifier and role as input. The function first checks that the requested object is compatible with the emergency purpose (via purposes); if so, it returns true, otherwise false. Next, it checks whether the specified role has the right to access in emergency mode (via features). If both the two tests are fulfilled, then the access control algorithm outputs PERMIT bypassing the other control functions. This behaviour allows faster controls in the case of an emergency, providing a sort of Break the Glass AC model (Ferreira et al., 2009). In fact, there is no cross checking of the object-list-operation, but the check occurs directly through features and purposes. Furthermore, the constraint conditions are relaxed (these are expressed by condition). Obviously, the operations in emergency mode are associated with obligations, such as storage in logger, the access information to the document or other obligations. This control function is active only if the access purpose is emergency. The checknable(user, role, object, operation) function It receives as input User identifier, role, object identifier and operation. The function checks if the user is present in the NAble lists associated to the operation on the given document. If she/he is in these lists, the system returns DENY. Otherwise, the management of the control continues with the next function (in the waterfall model of the functions). The checkpurpose(access Purpose, object, operation) function It receives as input access purpose, object identifier and operation. The function checks if the specified access purpose is in compliance with the purposes associated to the document (intended purposes) and the operation requested. If the check is successful, the function returns true and the management of the access control continues with the next function. Otherwise the output is DENY. The checklist(user, role, object, operation)function It receives as input user identifier, role, object identifier and operation. The function checks whether the user or the user role is included in the lists associated to the object for the specified operation. If so, the function returns true, so the management of the access control continues with the next control function. Otherwise the output is DENY. The checkcondition(operation, object)function It receives as input object identifier and operation. The function retrieves the list of access conditions associated with the specific operation request. Next, it checks the compatibility of access in accordance with the conditions expressed in the conditions component. For instance, it is possible to specify additional access restrictions, related to temporal or geographical conditions. The proposed model is extremely dynamic and simple for the handling of customised access policies. The patient can easily indicate who can access to a certain health document contained in the EHR system, when and for which purpose. The presented algorithm is modular, and in this way, it is possible to use only a subset of the function

A patient privacy centric access control model for EHR systems 181 controls, or even invert the order of the functions. For example, it is possible to swap the functions checkinemergency and checknable to allow the patient to indicate subjects who are not permitted to access a certain document, even in emergency mode. 6.3 Algorithm implementation The algorithm shown in the previous paragraph has been implemented to prove the feasibility of our access control model. We used the design pattern model view controller (Leff and Rayfield, 2001) for the implementation of the model, with the subdivision of the various functionalities and functions of the model in the three classes of the pattern. Both support functionalities and control functions (shown in the previous paragraph) have been implemented. Thus, the obtained MVC architecture is in Figure 10. Figure 10 MVC architecture of the access control model (see online version for colours) The support functionalities are implemented using java servlet page (jsp), which allows a user-friendly use of the AC model. On the contrary, the control functions are implemented through several java servlets. The jsp that implement the support functionalities are: NewList.jsp implements the Create new list support functionality ManageSecurity.jsp a BindList (java method) implements the Bind List to the document support functionality b HierarchyPurposes ( java method) implements the Choose the intended purposes support functionality

182 M. Sicuranza et al. c SecurityLevel (java method) implements the specify security level support functionality. Limitations.jsp implements the define limitations support functionality Features.jsp implements the define features to roles support functionality requestaccess.jsp implements the access request to unauthorised access document support functionality. The java servlet that implement the control functions (seen in the previous subsection) are the follows: AccessControl.java defines the SecurityLevelCheck() method that checks the security level of the document. In particular, the security levels are: top-secret: in this case the access to the document is only permitted to the physician who produced the document and to the patient. Secret: in this case, the access is permit to the GP, to the patient, and to the physician who has produced the document. Normal: the Java class called NormalControl.java, is instantiated, it runs a set of methods called in waterfall manner: a b c d e Emergency() this java method implements the checkinemergency control function ListNotAble() this java method implements the checknable control function AccessPurpose() this java method implements the checkpurpose control function AuthorisedList() this java method implements the checklist control function AccessCondition() this java method implements the checkcondition control function. 6.4 Description of the use case Next, we describe a scenario to highlight a possible use of the introduced model with the support functionalities and with the control functionalities. We refer to a scenario in which a patient manages in a precise manner the confidentiality of the documents in his/her EHR using the components of the model and its support functionalities. First, in our scenario, a certain clinical document is stored in the HER by the healthcare organisation, after which the patient modifies the privacy characteristics associated to the document to make it accessible to certain subjects in the system. Below, we distinguish the operations carried out by the healthcare organisation (during the insertion of document in the EHR system) and the actions carried out by the patient for the modification of the rights of access to his/her clinical documents in the system. Finally, we show a use case in which the physician requires access to a clinical document to which he/she is not able to access.

A patient privacy centric access control model for EHR systems 183 6.4.1 Healthcare organisation In our scenario, John is the patient. He makes a dental panoramic radiograph (DPR) at a healthcare organisation. The healthcare organisation inserts John s DPR into the EHR system. When the healthcare organisation inserts the document, in order to define the access policies in accordance with the consent expressed by John, it has to specify the following attributes: Security level: this expresses the level of security associated to the document (top secret, secret and normal). The healthcare organisation indicates the security level chosen by John. List of roles: if the security level is normal, the healthcare organisation indicates the roles of the operators that can have access to the document (for example, GPs, nurses, etc.). List of purposes: this is the list of the purposes, for which the access to the document is granted. The healthcare organisation inserts the list of the purposes indicated by the patient for that document. Considering the model in Figure 5, when the healthcare organisation inserts a document in the EHR system, it uses the following components: list, purposes, object, operations, etc. Let us suppose that the configuration privacy is the following: the security level is normal; the list of roles is orthopaedic specialists, and GPs; the list of purposes is medical care, and emergency. 6.4.2 Patient Later, John wants to make his DPR accessible to his dentist Luke for clinical diagnosis purposes. Since Luke is not an orthopaedic specialist, he has no right of access to John s DPR. John needs to create a list of users/roles (via GUI in Figure 11), in which Luke has access granted to the DPR for medical care purposes (via GUI in Figure 12). John can also specify the period of validity of the list associated with the document and other conditions. Figure 11 Create new list (see online version for colours)