Enterprises typically have their own data classification strategies. The types of data stored typically include (but are not limited to): financial, personal, health, and confidential business data. Some enterprises (especially finance and health care industries) have stringent data requirements in order to be compliant with regional law and regulations.
For example, PCI DSS Requirement 3.4 states that credit card payment details must be rendered unreadable anywhere they are persistently stored (including portable digital media, backup media and logs). Applications (including database back-ends) that interact with these classes of data need to be able to specify encrypted storage requirements when an application is launched and interacts with some of these data classes. The data must be encrypted both in flight as well as at rest. The application should not require administrative privileges to specify or access encrypted storage.
In addition, proper key management processes need to be in place. The keys used to encrypt/decrypt the data must be rotated on a regular basis and the access of keys are restricted to authorized personnel only.
None.
None.
Cinder issues: * The storage encryption functionality exists, but requires admin status. Creating encrypted volumes should not require admin status. * Encryption keys are set at creation time, however it is not clear how to rotate the key(s), once a volume is in use. Rotating keys is a requirement of many data storage standards.
Swift issues: * At present an application is responsible for encrypting Objects prior to calling a PUT operation, swift will store any object that is in the PUT request. Swift should reject object PUTs that are tagged to be encrypted by the application. * Development of a data at rest solution is currently under development, however, this does not solve for in flight data.
None.