Events
17 Mar, 21 - 21 Mar, 10
Join the meetup series to build scalable AI solutions based on real-world use cases with fellow developers and experts.
Register nowThis browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
APPLIES TO:
NoSQL
MongoDB
Cassandra
Gremlin
Table
"Encryption at rest" is a phrase that commonly refers to the encryption of data on nonvolatile storage devices, such as solid-state drives (SSDs) and hard-disk drives (HDDs). Azure Cosmos DB stores its primary databases on SSDs. Its media attachments and backups are stored in Azure Blob Storage, which are generally backed up by HDDs. With the release of encryption at rest for Azure Cosmos DB, all your databases, media attachments, and backups are encrypted. Your data is now encrypted in transit (over the network) and at rest (nonvolatile storage), giving you end-to-end encryption.
As a platform as a service (PaaS), Azure Cosmos DB is easy to use. Because all user data stored in Azure Cosmos DB is encrypted at rest and in transport, you don't have to take any action. In other words, encryption at rest is "on" by default. There are no controls to turn it off or on. Azure Cosmos DB uses AES-256 encryption on all regions where the account is running.
We provide this feature while we continue to meet our availability and performance service-level agreements (SLAs). Data stored in your Azure Cosmos DB account is automatically and seamlessly encrypted with keys managed by Microsoft (service-managed keys). Optionally, you can choose to add a second layer of encryption with your own keys as described in the customer-managed keys article.
Encryption at rest is implemented by using several security technologies, including secure key storage systems, encrypted networks, and cryptographic APIs. Systems that decrypt and process data have to communicate with systems that manage keys. The diagram shows how storage of encrypted data and the management of keys is separated.
The basic flow of a user request is:
Find answers to commonly asked questions about encryption.
There's no extra cost.
Data stored in your Azure Cosmos DB account is automatically and seamlessly encrypted with keys managed by Microsoft by using service-managed keys. Optionally, you can choose to add a second layer of encryption with keys you manage by using customer-managed keys.
Microsoft has a set of internal guidelines for encryption key rotation, which Azure Cosmos DB follows. The specific guidelines aren't published. Microsoft does publish the Security Development Lifecycle, which is seen as a subset of internal guidance and has useful best practices for developers.
Yes, this feature is available for new Azure Cosmos DB accounts. It should be deployed at the time of account creation. For more information, see the customer-managed keys document.
Warning
The following field names are reserved on Cassandra API tables in accounts by using customer-managed keys:
id
ttl
_ts
_etag
_rid
_self
_attachments
_epk
When customer-managed keys aren't enabled, only field names beginning with __sys_
are reserved.
All Azure Cosmos DB regions have encryption turned on for all user data.
There's no effect or changes to the performance SLAs because encryption at rest is now enabled for all existing and new accounts. To see the latest guarantees, see SLA for Azure Cosmos DB.
The emulator is a standalone dev/test tool and doesn't use the key management services that the managed Azure Cosmos DB service uses. We recommend that you enable BitLocker on drives where you're storing sensitive emulator test data. The emulator supports changing the default data directory and using a well-known location.
Events
17 Mar, 21 - 21 Mar, 10
Join the meetup series to build scalable AI solutions based on real-world use cases with fellow developers and experts.
Register nowTraining
Module
Implement security in Azure Cosmos DB for NoSQL - Training
We will learn the different security models that Azure Cosmos DB uses.
Certification
Microsoft Certified: Azure Cosmos DB Developer Specialty - Certifications
Write efficient queries, create indexing policies, manage, and provision resources in the SQL API and SDK with Microsoft Azure Cosmos DB.
Documentation
Encryption at rest in Azure Cosmos DB for MongoDB vCore
Learn how Azure Cosmos DB for MongoDB vCore provides encryption of data at rest and how it's implemented.
Security options and features - Azure Cosmos DB for MongoDB vCore
Learn how Azure Cosmos DB for MongoDB vCore provides database protection and data security for your data.
Configure customer-managed keys - Azure Cosmos DB
Store customer-managed keys in Azure Key Vault to use for encryption in your Azure Cosmos DB account with access control.