Database Lockdown In The Cloud
In the cloud, we turn things around a bit and focus on <I>data</I> security rather than the database container
In this post, I'll describe the data-centric security life cycle. This approach is in contrast to many existing database security models, where the focus of the efforts is on securing the database container. This turns things around a bit and focuses on data security.
Most database security programs focus on patching and configuration of the database in order to protect infrastructure from vulnerabilities. Access controls limit data access depending on user roles and credentials. This model works well when we have a static database infrastructure and can rely on a set of services to fortify security.
But with cloud services, some of the basic infrastructure and trust relationships we have come to rely on are not available or require different deployment to work properly. For example, snapshots and machine images are designed to be recovered quickly, but the cloud does not inherently differentiate good from bad, meaning both intended and rogue instances can be booted and serve content. If you rely on your SAN or tape archival systems to encrypt data at rest, then you need to compensate for the lack of that built-in feature when moving to the cloud.
The goal is to reorient your security program to protect the information, minimizing reliance on security provided by the database, network, platform or places where it's stored. Since we don't necessarily know what the infrastructure is, where it is located, or who has access, we need to account for data security as data moves into and through the cloud. Domain 5 of the CSA Security Guidance (PDF) has a nice picture that illustrates the data centric security process. We define five phases or states: Definition, Storage, Use, Archival and Destruction.
As data moves from one phase to another, we apply specific protections that are appropriate to that phase. To start the process, we define data security measures as we discover data in, or move data to, the cloud. As data is stored, it's encrypted by the database or application, with access controls and rights management governing retrieval. Applications build in logical controls for the retrieval of information and rely on activity monitoring and rights management to enforce security policies. Use of DLP and content monitoring governs whether data can be moved, and encryption and application security controls secure authorized data exchanges. Finally, archival and destruction are managed by encryption, asset, and key management services to secure images that could reside on cheap storage in perpetuity.
Before I go into detail on each of these states, I need to quickly discuss why this is different and, hopefully, why it is more appropriate to cloud environments.
Each cloud delivery model (SaaS, PaaS, IaaS) has different security challenges. Log files in a multitenant IaaS or PaaS environment are not always available from your provider because they contain information from other users as well as your own. So not only are you unable to review the logs, they usually contain sensitive information. For SaaS we can't encrypt data prior to putting it in the cloud as we break the application. That means you are reliant on the provider to secure files and archives and to police their administrators.
In a nutshell, you don't really know who has access to your data or have the ability to audit the providers security controls. The data-centric security model is intended to wrap the data in a protective layer, reducing exposure and reliance on infrastructure security.
In the next post, I'll cover the definition and storage phases, and discuss specific technologies that are applied to secure data within that phase.
Adrian Lane is an analyst/CTO with Securosis LLC, an independent security consulting practice. Special to Dark Reading.
About the Author
You May Also Like