Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

End-to-End Privacy Policy Enforcement in

Cloud Infrastructure
Stéphane Betgé-Brezetz, Guy-Bertrand Kamga, Marie-Pascale Dupont, Aoues Guesmi
Alcatel-Lucent Bell Labs
Nozay, France
Email: firstname.lastname@alcatel-lucent.com

Abstract — Privacy in the cloud is still a strong issue for the In order to prevent the loss of control on data and to limit
large adoption of cloud technologies by enterprises which fear to security breaches costs, focusing on well protecting sensitive
actually put their sensitive data in the cloud. There is indeed a data is more efficient than focusing on a tight security
need to have an efficient access control on the data stored and perimeter. Indeed, the biggest threat comes from internal users
processed in the cloud infrastructure allowing to support the
taking advantage from new tools and applications (cloud-based
various business and country-based regulation constraints (e.g.,
on data location and co-location, data retention duration, data file sync tool such as Dropbox or GoogleDrive) to access their
processing, node security level, tracing and audit). In this data from any device and any location [23]. Therefore, in order
perspective, this paper presents a novel approach of end-to-end to take the full benefit of the high-growth cloud computing
privacy policy enforcement over the cloud infrastructure and market, there is a need to provide control mechanisms to keep
based on the sticky policy paradigm (a policy being bound to privacy & confidentiality of the sensitive data stored in the
each sensitive data). In our approach the data protection is cloud, all along their lifecycle (creation, processing, transfer,
performed within the cloud nodes (e.g., within the internal file deletion).
system of a VM or its attached volume) and is completely Regarding privacy control, two extreme choices lie before
transparent for the applications (no need to modify the
applications). This paper describes the concept and the proposed
the Cloud User: either to blindly entrust his data to the Cloud
end-to-end architecture (from the client to the cloud nodes) as (e.g., using Dropbox through a web browser), or to have no
well as an implementation based on the FUSE (Filesystem in trust in the cloud and protect his data through encryption (using
Userspace) technology. This implementation is executed on a BoxCryptor or Viivo for example) but depriving him from
scenario of data access and transfer control, and is also used to added value-services offered by the Cloud.
achieve performance evaluations. These evaluations show that, In between these two extreme approaches, Cloud Service
with a reasonable additional computation cost, this approach Providers (CSP) are more and more encouraged to provide the
offers a flexible and transparent way to enforce various privacy Cloud User (CU) with the necessary features and technologies
constraints within the cloud infrastructure.
allowing the protection of the CU sensitive data within his
Index Terms — Cloud computing; privacy control; data Cloud infrastructure [9]. Indeed, contractual obligations on the
protection; sticky policy; FUSE management of the CU sensitive data can be specified in the
Service Level Agreement (SLA) that the CSP has to comply
I. INTRODUCTION with.
The benefits of Cloud Computing are widely recognized, In [26], we have presented such an in-between approach in
particularly the ability to provide IT resources such as storage which some meta-data describing the data (e.g., data semantics,
and computing power on demand, while requiring low effort types) could be revealed in order to allow the CU and CSP to
for the cloud customer to manage these resources. Indeed, mutually benefit from the cloud added-value services. A
reduced IT costs and improved business agility are identified as multilevel privacy policy enforcement approach has been
the greatest drivers in cloud computing adoption [24]. introduced to ensure the data protection at the application level
Nevertheless, the enterprises are still hesitant to put their and at the cloud infrastructure level. This approach is based on
sensitive data in the cloud infrastructure even for a time-bound the expression of privacy requirements as policies indicating
project. Although the rate of adoption has recently accelerated, how data can be accessed and used, and which will be
the large scale adoption of cloud technologies is still restrained evaluated before performing any action on the data.
by data security and privacy issues [28]. Indeed, recent cases of Based on this previous work, this paper focuses on the IaaS
security or privacy breaches [5][21] well illustrate the first two CSP and therefore on policies handled at the infrastructure
of the top nine cloud computing threats identified by the CSA level such as location-based data rules. Thus, we propose a
for 2013 [22], namely data breaches and data loss. Moreover, flexible data protection technology supporting the end-to-end
the Personally Identifiable Information (PII) are also subject to enforcement of data protection policies within the cloud
strong constraints (e.g., on their location or on the storage infrastructure (notably within the File System of a Virtual
security level) that notably come from country-based Machine or a Volume), fully transparent to the applications,
regulations [7] and that may be an actual hurdle for companies and allowing also to monitor any action performed on data for
or administrations to store these sensitive data in a cloud. later analysis.

978-1-4799-0568-3/13/$31.00 2013
c IEEE 25
The paper is structured as follows. In Section 2, we present premises). Consequently, it obliges the CSP (aka Data
the context and the main technical challenges regarding the Processor in the regulation terminology) to provide the
enforcement of privacy settings within the cloud infrastructure. adequate privacy functions and capabilities so that the Cloud
In section 3, we analyze the related work in this area and User can appropriately set the privacy policies for each of his
position our approach. Then section 4 introduces the general sensitive data. These privacy settings have to be specified in
architecture solving the technical challenges that have been the SLA contract agreed between the CU and the CSP.
identified. Section 5 details our implementation based on the
FUSE technology, illustrates it on a scenario related to data The overall process of privacy setting in a cloud IaaS is
access and transfer, and presents the results of the performance depicted in Fig. 2. At first, it is necessary for the CU to identify
evaluation that has been conducted. Finally, in the conclusion, the characteristics of the data that will be put in the cloud (see
we discuss the open issues and perspectives. c in Fig. 2), e.g.: the data type (as eHealth data), the data
criticality, the data owner, or the owner location. These
II. PRIVACY IN THE CLOUD: CONTEXT AND CHALLENGES characteristics allow the CU to find the right policy to apply on
A. Business and regulation context the data (see d in Fig. 2) and then to upload this data in the
Privacy and data protection are still issues for the large cloud with the related privacy settings (see e in Fig. 2).
adoption of cloud technology by enterprises. Let consider the These privacy settings concern the cloud infrastructure and
case of a company willing to move its IT from its own they cover the storage (with the data location and co-location
premises to a cloud IaaS (even for a time bound project). As constraints, access control, retention duration, data usage
shown in Fig. 1, this enterprise has then to move, in the CSP, tracing, data breach notification, etc.) as well as the Virtual
his data, his applications and the related policies (governing Machines (with the VM location/co-location, VM isolation,
how the data can be accessed and used). Various data types, VM security level, etc.).
applications and policies need to be considered:
Applicable policies
• Data types: PII as employee data (e.g., HR data), customer

Privacy-related

Cloud privacy
metadata
2

settings
data (e.g., user profiles, eHealth data), sensitive technical
or financial data, etc. Cloud Cloud
Compliance Analysis
• Applications: content sharing applications, communication
Management Infrastructure
Data Cloud Privacy Settings (e.g., Orchestration, (Computing node,
1 3
Monitoring) Storage, Network)
tools, analytic applications, etc. SLA

• Privacy & data protection policies: regulation policy


(country-based), enterprise policy (e.g., internal enterprise Cloud User Cloud Service Provider
policies), individual policy (for instance, privacy policy (Data Controller) (Data Processor)

defined by a customer of the enterprise regarding his Fig. 2. Overall process of privacy policy setting in a cloud IaaS
customer profile usage).
Note that, as described in [26], other privacy constraints
may concern the application itself (e.g., to authorize/forbid
Data Applications

Policies

some specific applicative actions on the data). However, these


constraints are not handled in the cloud infrastructure (but
Cloud-based Enterprise IT within the application) and they cannot therefore be enforced
Traditional Enterprise IT (incl. Private & Public cloud)
(on-premise based) and guaranteed by an IaaS CSP. As we focus in this paper on
Fig. 1. Company moving its IT in a cloud IaaS
the IaaS CSP, we do not address these application specific
constraints. For more on how to enforce privacy policies within
Moving such IT assets in an IaaS cloud will raise many the applications, see for instance [2].
concerns for the enterprise such as: How to ensure that the B. Technical challenges
policies applicable to each data are enforced in the cloud?
In this context, guaranteeing privacy and data protection
Where are data located? Are the country-based regulation
policies within the infrastructure raises several technical
constraints on data respected? Who has access to the data, from
challenges such as:
where, and how many times? How many instances of a given
data do exist in the cloud infrastructure? Or how to be sure that • Ensure the end-to-end protection of data from the cloud
all these instances will be deleted when requested? user terminals and through the entire cloud networking,
storage and computation infrastructure.
Note that these issues have been well underlined by • Support various types of privacy policies (e.g., data
standard or regulation bodies [4][7][27] which, notably in location, data retention duration, data access regarding the
Europe, state that this enterprise, as a Cloud User (aka Data requester or his processing purpose); these policies coming
Controller in the regulation terminology), is responsible for the from different sources as the regulation, the enterprise
right application of the privacy policies on their customer data. policies or also the enterprise customers.
Indeed, the enterprise can be prosecuted in case of an • Enable the fine grain policy enforcement by offering the
inappropriate usage of their customer data (even if these data possibility to assign, if needed, a particular policy for a
are processed in the CSP infrastructure and not in their data.

26 2013 IEEE 2nd International Conference on Cloud Networking (CloudNet): Full Paper
• Allow the fine grain monitoring of data with tamper-proof of an enterprise by applications running inside or outside of
traces generated for all actions performed on the data this enterprise. In [19], it is proposed a scalable authorization
(including processing by applications, copy, transfer, infrastructure, based on sticky policy and with conflict
deletion, etc.) and provide a comprehensive dashboard of resolution capabilities, that a cloud provider can use to control
the data usage (for instance for audit purpose). the web service requests made by applications on the sensitive
• Offer a data protection mechanism fully transparent to the data. In [17], an access control layer, with dedicated API, is
application (i.e., with no need to modify the applications). added above the cloud server in order to control, through sticky
• Finally ensure the scalability and performance of the policy, the access to these data by a third party. Finally, even if
solution notably regarding the volume of data to handle as not really sticky policy based, we can also mention the Rights
well as the complexity of the policy. Management Systems (RMS) [25] which offers a proprietary
In the following of this paper, we will detail our approach solution of access control to documents shared between
of end-to-end privacy policy enforcement aiming to address employees using office applications.
such technical challenges. All these approaches basically offer a policy-based control
when an application wants to access to a sensitive data, but this
III. RELATED WORK control is not really embedded within the cloud infrastructure.
Numerous technologies have been studied to tackle the Therefore, some more infrastructure related constraints (e.g.,
issues on security and privacy in the cloud (see for instance on the location or the security level of the node) could not be
[10] or [11] for a general survey of these works). Regarding the enforced. Moreover, in order to automatically trigger this
particular challenges identified in the previous section II.B, we control before accessing to a privacy sensitive data, it would be
can mention different approaches discussed here below. needed to upgrade the application or, if the data is accessed
through a web browser, to upload a dedicated plug-in within
A first approach consists in obfuscating the data before the browser.
sending them to the cloud so that the data are not
understandable or exploitable by the CSP. Such data In this paper, we propose therefore an approach, also
obfuscation can be achieved in various ways. The data can be within the sticky policy family, but that can be enforced within
encrypted as proposed by several research initiatives as the cloud infrastructure, notably within the File System of a
[13][18] or business solutions as [8][14]. The data can also be Virtual machine (VM) or of its storage system (volume). This
shredded in different parts which are distributed over different File System based approach, using sticky policy, will therefore
-non colluding- cloud entities [3]. Similarly, the computation be completely transparent regarding the applications and would
performed on the data can also be distributed to preserve not need any particular or proprietary API. It will also support
privacy [12]. Some other approaches as [15] or [16] use proxy various infrastructure-level policies (for instance on location or
re-encryption to protect the privacy of a content stored in one - minimum security level of a node). Finally, it will also generate
or several- clouds and shared between different end-users. tamper-proof traces that will allow to build a comprehensive
These approaches indeed prevent the CSP to access the dashboard of all actions performed on the sensitive files and
plain data but it also prevents the cloud user to benefit from the that may be later used for an audit on data usage.
added value services that the CSP may provide (e.g., IV. GENERAL ARCHITECTURE
indexation, search, or personalized services). For this purpose,
it exists the homomorphic encryption [6] that enables some A. Architecture principles
processing on encrypted data, but it is still very For addressing the challenges described in the section II.B,
computationally expensive. And finally, all these approaches we propose an end-to-end architecture which principle is
do not allow the CU to specify a wide range of privacy policies depicted in Fig. 3 and where data protection module from
(for instance related to location or retention duration) and cloud customer’s site collaborates with data protection module
which can be enforced by the CSP without necessary requiring running in the cloud provider infrastructure to provide a chain
an access to the plain data. of trust between the cloud customer and the cloud provider.

Other approaches have been proposed to define, for each


data, a privacy policy describing the constraints to access this Cloud Customer Cloud Provider
data and the obligations to execute afterwards. In particular, the Applications Services

sticky policy approach consists in binding this policy to the Customer Site
data and sending the set [data + policy] within the cloud. Cloud Infrastructure Level
Data Protection Module
Among these sticky policy approaches, we can mention DPaaS Client Data
(Data Protection as a Service) [1] which is a trusted platform Protection Module

using a combination of encryption, application confinement Policy


Data

and information-flow controls to enforce application-level Data usage


historic
sticky policy attached to the data. In [20], it is presented
another sticky policy approach with a Consent & Revocation Fig. 3. Overall data protection architecture
module allowing to dynamically checking the access to a data

2013 IEEE 2nd International Conference on Cloud Networking (CloudNet): Full Paper 27
In this architecture, the Client Data Protection Module Client Data Protection Module or even by an application
associates the data with the adequate policy and sends the set supporting such bound [data + policy] structure. Moreover, this
[data+policy] to the cloud infrastructure. All operations binding can be achieved by associating the file either with the
occurring on these data from either the Cloud Customer entire policy, or only with a reference/pointer to the policy,
Applications (e.g., open, read, write, delete) or the Cloud stored separately from this file.
Provider Services (e.g. replication) are controlled, according to • Data Access Manager
the associated policies, by a Data Protection Module running in This module is in charge of extracting the policy from the
the cloud infrastructure. Finally, this Data Protection Module is PDE in order to be checked by the Policy Evaluation Engine
also in charge of providing an end-to-end monitoring of described here below. In case of a positive decision, this
customer data usage thanks to the generation of tamper-proof module will decrypt the raw data contained in the PDE so that
traces for all the operations occurred on customer data. this raw data will be made available to the application (FS resp.
B. Architecture for file data protection in Fig. 4).
• Policy Evaluation Engine
In order to offer a fine grain data protection (c.f., section
This module is in charge of evaluating the policy based on
II.B), we may offer this control for each sensitive file stored in
parameters provided by the FS Wrapper and related to the
the cloud. For this purpose, we propose to instantiate the
request (user Id, application Id, file Id, location of the VM,
previously introduced Data Protection Module directly within
etc.). Depending on the implementation, this module can be
the internal file system of a VM or its attached volume. The
inside the same VM as the FS Wrapper module or a remote site
proposed architecture is depicted in Fig. 4.
(e.g., in another VM, in the customer side, in a third party
side).
Cloud Computing Node • Trace Manager
This module logs all the operations occurring on any
Virtual Machine (VM)
sensitive file requiring access/usage tracking (as also defined in
File Data Protection Module
Customer Device
Trace Manager
the policy) and provides the customer with means to access
Client Data
Applications
Data Access
Policy these traces in a comprehensive dashboard.
Protection Module Applications Evaluation
Manager
Engine

FS req./resp.
File System Wrapper
So, as illustrated in Fig. 5, an end-to-end data protection is
Policy

FS Kernel OS Data
ensured as a file protected with our approach can be accessed
Module
only within an environment or be transferred only to
environments (client devices and cloud VMs) having the
appropriate Data Protection Modules. As a consequence,
Fig. 4. File Data Protection Architecture
depending on the policy decision, one can access the protected
In this architecture, the cloud client’s device is provided file embedded in the PDE from both client devices and from all
with a basic Client Data Protection Module allowing him to, on the virtual machines except from the Virtual Machine 3 which
one way, upload the data with its associated policy in the cloud does not have a Data Protection Module (see Fig. 5).
infrastructure; and, on the other way, to download -if
authorized- the data from the cloud infrastructure (this data is Virtual Machine2
then back within the enterprise security domain). File Data
Protection Module

On the cloud side, the VM comprises a File Data Protection


Module (FDPM), also called Privacy-aware File System in Customer Device1 Virtual Machine1 Customer Device2
[26]. The FDPM includes the following main components:
• File System Wrapper (FS Wrapper)
Client Data File Data Client Data
Protection Module Protection Module Protection Module

This module intercepts all file system requests (FS req. in


Fig. 4) to a given storage system accessible from the VM (e.g.,
internal directory, mounted volume, NFS) and checks if the Virtual Machine3
requested file is subject to a specific policy. In this case, the
request result will depend on the evaluation of the applied
policy. In Unix-like OS environment, the interception of file Cloud Resources

system requests could be done using FUSE (Filesystem in Fig. 5. End-to-end File Data Protection
Userspace) [33] which is part of the File System kernel (FS
Kernel Module in Fig. 4). Moreover, each sensitive file that Moreover, we can note that a higher level of trust on the
needs to be controlled is linked with the appropriate policy. controls performed by the data protection modules could even
Policy could be bound to a file using a sticky policy method be guaranteed by leveraging the underlying trusted modules on
such as the Privacy Data Envelope (PDE) mechanism [2] that the client and cloud provider devices, using technologies such
builds an encrypted envelope containing the sensitive data and as TPM (Trusted Platform Module), Mobile TPM or virtual
the related policy. This binding step can then be done by the TPM.

28 2013 IEEE 2nd International Conference on Cloud Networking (CloudNet): Full Paper
V. PROTOTYPE AND PERFORMANCE EVALUATIONS
The User Context Manager is the module that provides
A. Prototype
additional information (e.g., user unique ID, user location)
From this architecture, we have implemented a prototype about the user involved in the request. Moreover, in case of file
in java that has been carried out in a scenario as well as used to transfer request (for instance via ftp), this module fetches the
evaluate its performances. The prototype implementation is requester context from the remote User Context Manager
detailed Fig. 6 and is composed of the following components. running on the requester’s VM (or device). In our prototype,
this communication between User Context Managers is done
The VM OS is Ubuntu 12.04, with the FUSE kernel module via a socket (on a dedicated port), but an alternative
2.8.4. The directory that we want to control is mounted with implementation could be for instance to get these information
FUSE and named /Protected_Dir. All the PDE files are then from a centralized entity (e.g., LDAP Server).
stored within this Protected_Dir and all access requests made
to these PDE files by any application are intercepted and The Trace manager is in charge of generating and storing
forwarded to the File System Wrapper. the traces related to the actions/requests performed on the files
requiring access tracking. It logs all the information related to
The File System Wrapper is a user space file system the user, the application, the date/time, the file, the action
implemented on the FUSE-J library [34] with its JNI binding to requested, the request decision, etc. in a dedicated log file. All
FUSE [33]. The FS Wrapper will actually store the PDE files these logs are then collected in order to build a comprehensive
in a backend directory, named /Backend_Dir, that can be dashboard showing all the protected files, their locations and
located in the VM FS or on in its attached volume. Note the achieved actions.
however that the FS Wrapper mechanism is completely
Cloud Computing Node
transparent for the client -or system- applications which will
Virtual Machine (VM)
see and access the PDE files in the Protected_Dir as in any File Data Protection Module
other directory (no need to modify the application). The key User Context
Manager
Traces
Manager

difference is that the access will be decided not by using the Customer Device
System Us er PDE Manager
Policy
Checking
Applications Applications
classical Unix POSIX ACL (e.g., with the "ugo+rw" like Client Data
Protection Module FUSE-J based FS Wrapper
access rights) but by using the policy stored within the PDE FS requests / responses

file. Indeed, the FS wrapper controls any request (e.g., open, Linux Ubuntu
FUSE Kernel
/Protected _Dir /Backend _Dir
Module
read, write, delete) made on a file that is accessed through the file.pde

FUSE mounted Protected_Dir. If the file is subject to a policy


(e.g., case of a PDE) it retrieves the associated policy as well Fig. 6. Implementation details
as, using the fuse_context structure provided by FUSE, the
context of the request (e.g., the requesting application, the user, B. Scenario
the requested action, the location of the file and of the Let consider the basic example of an e-commerce
requester, the date/time of the request). These information enterprise that operates in different countries. This enterprise
(policy and context) are sent to the Policy Checking to know if wants to benefit from a cloud IaaS to deploy its business
the request is authorized (or not) and get the resulting software (in order to reduce his IT costs and to support the
obligations (e.g., generate a trace). If the request is authorized, demand evolution thanks to the cloud flexibility). However,
it gives the access to the data and achieves the possible this enterprise has sensitive data as the personal profile of each
obligations. Note that this FS Wrapper has then the role of a of his customer which contains privacy related information
Policy Enforcement Point (PEP). (e.g., name, address, contacts, purchase history, detailed
preferences, location history). Depending on the customer, his
The PDE Manager is the module providing the necessary profile can be used to provide certain services (e.g., content
functions for manipulating a PDE (e.g., extracting policy or recommendation) but not others (e.g., targeted advertising).
content from a PDE, creating a new PDE). It uses GPG [29] Moreover, the enterprise has to ensure the protection of these
and Blowfish [31] for ensuring the security of the PDE. Given profiles and notably regarding their storage location (for
a PDE, its policy and its content are respectively encrypted instance depending on the customer citizenship).
with Blowfish using two generated symmetric keys. These In order to operate his services, the enterprise has then
symmetric keys are then encrypted using the public key of each deployed Virtual Machines in different countries. Fig. 7 shows
user that is authorized to access the PDE (according to policy a simple example of deployment where one VM is running in
decision). France (VM-FR), two VMs are running in the US (VM-US-1
and VM-US-2), and one VM is running in another country
The Policy Checking is a Policy Evaluation Engine based (VM-Other). Note also that the three VMs (VM-FR, VM-US-1
on the Sun’s implementation of XACML specifications [32]. and VM-Other) are equipped with the FDPM; while not VM-
Its role is to format the request received from the FS Wrapper US-2. Finally, this enterprise has also deployed some
before sending it to the XACML policy engine for determining applications on these VMs as Application_A and Application_B
if the request is accepted or denied, according to the policy and (which can for instance be respectively a content recommender
context. application and a targeting advertising application).

2013 IEEE 2nd International Conference on Cloud Networking (CloudNet): Full Paper 29
command cp or with a file browser). This copy of a file
Customer Device outside the Protected_Dir is prevented by the FDPM.
MarcDurand.xml Client Data
1 Protection
Module
6. A transfer of the file is requested from VM-FR to the
policy.xml MarcDurand.pde
Protected_Dir of VM-US-1 (e.g., through a ftp client
2

sf tp
launched from the VM-US-1). This transfer is authorized
France US
by the FDPM.
Cloud Computing Node Cloud Computing Node

VM-FR VM-US-1
7. A transfer of the file is requested from VM-FR to a
3
Application_A 6 Application_A
directory of VM-US-2 which is not equipped with the

FDPM
FDPM

4
Application_B
sf tp
Application_B
FDPM. This transfer is then not authorized by the FDPM.
5 OS OS
8. A transfer of the PDE file is requested from VM-FR to the
MarcDurand.pde MarcDurand.pde
Protected_Dir of VM-Other. This transfer is not authorized
by the FDPM as, although the VM is protected, it is
8 7
located in a not authorized country.
sf tp

Other
country US
Cloud Computing Node Cloud Computing Node This scenario has then been executed on our prototype
VM-Other VM-US-2
deployed on a private cloud based on OpenStack (in France)
Application_A Application_A
FDPM

Application_B Application_B
and CloudStack (in the US), and using the KVM hypervisor.
OS OS Fig. 9 shows the traces generated by the FDPM after the
execution of the scenario. A trace is generated each time an
Fig. 7. Scenario of privacy sensitive file data protection action is requested -and performed if authorized- on a protected
file. For each VM, it is shown its location, its different
Let then consider the profile of a customer Marc Durand protected files (i.e., files stored in Protected_Dir), and for each
shown in Fig. 8 and that is stored in a file MarcDurand.xml. of these files, the requested actions (the first action being the
First Name: Marc storage of this file), the requester location and the action
Name: Durand request result (“OK” if action authorized, or “NOT OK” if not).
Citizenship: French Note that after the execution of the previous scenario, one
Address: 10 rue de la Paix, Paris, France
Phone: 01 40 56 37 32 instance of the files MarcDurand.pde is available in VM-FR,
Purchase history & customer profile: … and another instance in VM-US-1. We can underline that such
Location history & geo-profile: ...
Call history & social profile: …
dashboard provides the cloud end-user with traces on file usage
… that are not available with usual system administration tools.
VM: VM-FR (Location: FR)
File: MarcDurand.pde
Fig. 8. Marc Durand profile (stored in the file MarcDurand.xml) [2013-08-02 13:44:10] Action: Protected_file_stored
[2013-08-02 13:48:31] Action: Application_A [read], Requester Location: FR, Decision: (OK)
[2013-08-02 13:49:50] Action: Application_B [read], Requester Location: FR, Decision: (NOT OK)
Let finally consider that the policy associated to this profile [2013-08-02 13:49:57] Action: cp <outside-Protected_Dir>, Requester Location: FR, Decision: (NOT OK)
[2013-08-02 13:50:13] Action: sftp <to-protected-VM>, Requester Location: US, Decision: (OK)
has the following constraints: [2013-08-02 13:50:30] Action: sftp <to-unprotected-VM>, Requester Location: ?, Decision: (NOT OK)
[2013-08-02 13:50:37] Action: sftp <to-protected-VM>, Requester Location: Other_Country, Decision: (NOT OK)
• The profile shall only be stored in a protected VM (i.e., in VM: VM-US-1 (Location: US)
File: MarcDurand.pde
the Protected_Dir of a VM equipped with the FDPM). [2013-08-02 13:50:15] Action: Protected_file_stored
VM: VM-Other (Location: Other_Country)
• The profile shall only be stored in France or in the US.
Fig. 9. Traces after scenario execution
• This profile shall be accessed/processed by the content
recommendation application (i.e., Application_A) but not C. Performance evaluation
by the targeted advertising one (i.e., Application_B).
This section presents the evaluation of the prototype
performance. The objective is to measure and analyze the
Fig. 7 illustrates our technology with a scenario comprising
computation time of our privacy control approach. This overall
the following steps:
computation time is split into the two following times:
1. The enterprise uses the Client Data Protection Module to
build the PDE file (MarcDurand.pde) from (i) the previous • FUSE kernel time: time spent in the FUSE kernel. In other
profile (MarcDurand.xml) and (ii) the policy (a file words, it is the time spent from the system call made in the
policy.xml expressing the privacy constraints in XACML). application (e.g., read) to the entry in the FDPM.
2. It uploads (e.g., via sftp) this MarcDurand.pde file in the • File Data Protection time: time spent in the FDPM. This
Protected_Dir of the VM-FR. time is then split between the FS wrapper (to get the
3. The Application_A requests an access to perform its context of the request and trigger the other FDPM
service (i.e., content recommendation). This access is modules), the User Context Manager (to get the context of
authorized by the FDPM (according to the policy). the local and remote user if any), the PDE Manager (to get
4. The Application_B requests an access to the file to the policy and the content from the PDE and decrypt
perform its service (i.e., targeted advertising). This access them), the Policy checker (to evaluate the policy), and the
is not authorized by the FDPM (according to the policy). trace manager.
5. An employee of the enterprise tries to copy the file outside Note that regarding the User Context Manager, as the
of the Protected_Dir (for instance with the Linux context of the local user can be collected at the FDPM

30 2013 IEEE 2nd International Conference on Cloud Networking (CloudNet): Full Paper
launching stage, this module actually consumes time only FUSE kernel FS Wrapper
6% 2%
when a remote user is requesting an action (e.g., sftp), and this
PDE
time corresponds to the network connection and transmission Manager
of the remote user context (e.g., location, Id). (decryption)
16%
Policy
We have then evaluated these different times for PDE files Checking
9%
having all the same policy (the one specified in the previous
User Context
section) but contents of different sizes (1Ko, 10 Ko, 100 Ko, Manager
500 Ko, 1 Mo and 2 Mo). The VM is a linux Ubuntu server (context
transmission)
12.04 configured with 4 Go RAM and 2,4 GHz CPU. The 67%

results are shown in the following figures.


Fig. 10 shows the case of a local application that reads the
PDE file of size 500 Ko. The measured total computation time Fig. 12. Computation time split for a 500 Ko PDE file (remote app request)
is 220 ms (compared to 60 ms when reading the same file as
plain text in a usual file system). This figure shows then how These results show then the additional time spent to
this 220 ms time is split between the FUSE kernel and the perform the privacy control on sensitive files. We can see that
different FDPM modules. Note that the trace manager time is even with a java implementation of both FUSE and FDPM, it
not displayed as this time is negligible. can be performed privacy control of sensitive data used by end-
user applications at a reasonable cost (which mainly depends
FS Wrapper on the content size as this notably impacts the decryption time).
7% Of course, in the application, some other -non sensitive- data
may be read and will then not imply this additional cost. It is
FUSE kernel
then up to the Cloud User to well define the level of data
19% protection, knowing the trade-off he makes between privacy
protection and computation time. However, we can note that if
PDE this additional time becomes an issue for some applications,
Manager
Policy
(decryption) real improvements can be obtained on performance by notably
Checking
28%
46% using a full C/C++ implementation of FUSE and FDPM;
beyond the other implementation optimizations that can as well
be performed. This would finally ensure to offer privacy
protection to various applications handling sensitive data.

Fig. 10. Computation time split for a 500 Ko PDE file (local app request) VI. CONCLUSION
In this paper, we have proposed a new technology able to
Fig. 11 shows the evolution of these different times with keep control on sensitive data (file) stored and processed in a
respect to the size of the content.We can see that it is mainly cloud infrastructure. In order to support the privacy
the decryption time that increases with the PDE size. requirements coming notably from country-based regulations,
this technology provides an end-to-end privacy control that can
350 be applied on each sensitive file if needed and that supports
300
FS Wrapper various policies (e.g., on data location, data retention duration,
data access regarding the requester or his processing purpose).
250 The proposed data protection mechanism is also fully
PDE
transparent to the applications (i.e., no need to modify the
Duration (ms)

200 Manager
(decryption) application); the application being either a business application
150 or a system command (e.g., cp, ftp). Indeed, in our approach
Policy
100
Checking the access control is performed according to the policy attached
to the data; replacing the classical Unix POSIX ACL (e.g., with
50 FUSE kernel the "ugo+rw" like access rights). Moreover, thanks to tamper
0 proof generated traces, this technology provides the data owner
1 Ko 10 Ko 100 Ko 500 Ko 1 Mo 2 Mo with a full view (dashboard) on all his sensitive data stored in
the cloud infrastructure, their locations, their usages by
Fig. 11. Performance of the FDPM modules according to the PDE file size applications, the number of instances, etc.
This technology has been carried out in a prototype running
Fig. 12 shows the case of a remote user making an sftp on linux Virtual Machines and using the FUSE technology.
(from the US to France) to read the same PDE file of size 500 This prototype has been deployed over a cloud infrastructure
Ko. In this case, we see the additional time (+443 ms) of the and is executed in a scenario of sensitive data access and trans-
User Context Manager corresponding to the transmission of the national transfer. This prototype has also allowed to evaluate
context (e.g., location, Id) of the remote user. the performance of the technology. For various sizes of data, it

2013 IEEE 2nd International Conference on Cloud Networking (CloudNet): Full Paper 31
has been measured and analyzed how the additional time (spent [11] H. Takabi, J.B.D. Joshi, and G.J. Ahn, “Security and privacy
for the privacy control) is split between the different processing challenges in cloud computing environments”, IEEE Security &
stages. These results show that even with a java Privacy, Vol.8, No.6, Nov.-Dec. 2010.
implementation of FUSE and FDPM, it can be performed [12] Y. Brun and N. Medvidovic, “Keeping data private while
privacy control of sensitive data used by end-user applications computing in the cloud”, IEEE International Conference on
at a reasonable cost. However, if the applications request to Cloud Computing, CLOUD 2012, 24-29 June 2012.
quickly access to sensitive data, the performance can be [13] M.H. Diallo, B. Hore, E.C. Chang, S. Mehrotra, and N.
actually improved by using a C/C++ implementation as well as Venkatasubramanian, “CloudProtect: managing data Privacy in
cloud applications” IEEE Conference on Cloud Computing,
by investigating other possible optimizations of the prototype.
CLOUD 2012, 24-29 June 2012.
Finally we can mention other perspectives that will be
[14] Sophos, http://www.sophos.com
considered in the scope of this research. First, in order to
further enforce the security of the approach, our privacy control [15] S. Yu, C. Wang, K. Ren, W. Lou, “Achieving secure, scalable,
and fine-grained data access control in cloud computing”, IEEE
module can run in an execution environment offering a strong
INFOCOM 2010, 14-19 March 2010.
level of protection. For instance, the FDPM can rely on
[16] M. Singhal, S. Chandrasekhar, T. Ge, R. Sandhu, K. Ram, G.J.
technologies such as TPM that are available within the
Ahn, E. Bertino, “Collaboration in multicloud computing
computing nodes. This will allow to protect the privacy control environments: framework and security issues”, Computer, vol.
mechanism as well as to offer some strong security guarantees 46, no. 2, Feb. 2013.
(e.g., for key management or trace certification). A second [17] S. Trabelsi and J. Sendor, “Sticky policies for data control in the
perspective of our research consists in enforcing privacy cloud”, Tenth Annual International Conference on Privacy,
policies within the network transport itself. Indeed, despite the Security and Trust, PST 2012, 16-18 July 2012.
use of encrypted data transfer protocols (e.g., sftp), it can also [18] I. Papagiannis and P. Pietzuch, “CloudFilter: practical control
be requested to constrain the path followed by the transported of sensitive data propagation to the cloud”, ACM Workshop on
data (e.g., forbidding to cross certain network areas or network Cloud computing security workshop, CCSW '12, Oct. 19 2012.
equipments). It is for instance envisaged to exploit technology [19] D.W. Chadwick and K. Fatema, “A privacy preserving
as the Software Defined Network (SDN) in order to ensure the authorisation system for the cloud”, J. Comput. Syst. Sci., vol.
enforcement of such policy within the network. All these 78, no. 5, Sept. 2012.
mechanisms should then allow to further enforce the privacy [20] M. Casassa Mont, V. Sharma, and S. Pearson, “EnCoRe:
protection of sensitive data while still being transparent for the dynamic consent, policy enforcement and accountable
applications and convenient for the end-users. information sharing within and across organisations”, HP report
HPL-2012-36, 2012.
ACKNOWLEDGMENT [21] T. Samson, “Apple iCloud breach proves Wozniak’s point about
The work in this paper is supported by the European cloud risks”, InfoWorld, August 2012.
CELTIC research program through the SEED4C project [29]. [22] Cloud Security Alliance (CSA), “The notorious nine cloud
computing top threats in 2013”, February 2013.
REFERENCES [23] R. George., “Tools and strategies for file-level data protection”,
[1] D. Song, E. Shi, I. Fischer and U. Shankar, “Cloud data InformationWeek Report, April 2013.
protection for the masses”, IEEE Computer Magazine, Vol. 45, [24] P. Hall,“Opportunities for CSPs in enterprise-grade public cloud
Issue. 1, 2012. computing”, OVUM, May 2012.
[2] M. Ghorbel, A. Aghasaryan, S. Betgé-Brezetz, M.P. Dupont, [25] Right Management System, http://technet.microsoft.com/en-
G.B. Kamga, S. Piekarec, “Privacy data envelope: concept and us/windowsserver/dd448611.aspx
implementation”, Ninth Annual Conference on Privacy, Security [26] S. Betgé-Brezetz, G.B. Kamga, M. Ghorbel, M.P. Dupont,
and Trust, PST 2011, 19-21 July 2011. “Privacy control in the cloud based on multilevel policy
[3] M.O. Rabin, “Efficient dispersal of information for security, enforcement”, IEEE Conference on Cloud Networking,
load balancing and fault tolerance”, Journal of the ACM, Vol. CLOUDNET 2012, 28-30 Nov. 2012.
36, Issue 2, 1989. [27] Cloud Security Alliance (CSA), “Security guidance for critical
[4] W. Jansen and T. Grance, “Guidelines on security and privacy in areas of cloud computing”, Version 3.0, November 2011.
public cloud computing”, NIST, 2011. [28] Cloud Industry Forum, “UK Cloud adoption and trends for
[5] F.Y. Rashid, “Epsilon data breach highlights cloud computing 2013”, 2012.
security concerns”, eWeek.com, 2011. [29] S. Betgé-Brezetz et al., “Seeding the Cloud: An Innovative
[6] C. Gentry, “Fully homomorphic encryption using ideal lattices”, Approach to Grow Trust in Cloud Based Infrastructures” FIA
Proc. 41st ACM Symposium on Theory of Computing, 2009. book, Lecture Notes in Computer Science, Vol. 7858, 2013.
[7] Article 29 Data Protection Working Party, “Opinion 05/2012 on [30] GPG, http://www.gnupg.org
cloud computing”, WP 196, Brussels, July 2012. [31] BlowFish, https://www.schneier.com/blowfish.html
[8] HekaFS, formerly known as CloudFS, http://hekafs.org [32] Sun XACML, http://sunxacml.sourceforge.net
[9] D. Desai, “Beyond location: data security in the 21st Century”, [33] FUSE: Filesystem in Userspace, http://fuse.sourceforge.net
Communications of the ACM; Vol. 56, No. 1, Jan. 2013.
[34] FUSE-J, http://sourceforge.net/projects/fuse-j
[10] S. Pearson and G. Yee (Eds.), “Privacy and security for cloud
computing”, Springer, 2013.

32 2013 IEEE 2nd International Conference on Cloud Networking (CloudNet): Full Paper

You might also like