Skip to content

Commit 9142e72

Browse files
author
Jill Grant
authored
Merge pull request #259950 from khelanmodi/vCore-data-encryption
Database-encryption-at-rest for vCore
2 parents 24e6a9f + cdffcb3 commit 9142e72

File tree

3 files changed

+68
-3
lines changed

3 files changed

+68
-3
lines changed

articles/cosmos-db/mongodb/vcore/TOC.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,12 @@
3636
href: failover-disaster-recovery.md
3737
- name: Migration options
3838
href: migration-options.md
39-
- name: Security
40-
items:
41-
- name: Security overview
39+
- name: Security
40+
items:
41+
- name: Security Overview
4242
href: security.md
43+
- name: Data encryption
44+
href: database-encryption-at-rest.md
4345
- name: How to
4446
items:
4547
- name: Use community tools
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
---
2+
title: Encryption at rest in Azure Cosmos DB for MongoDB vCore
3+
description: Learn how Azure Cosmos DB for MongoDB vCore provides encryption of data at rest and how it's implemented.
4+
author: khelanmodi
5+
ms.author: khelanmodi
6+
ms.service: cosmos-db
7+
ms.topic: conceptual
8+
ms.date: 11/30/2023
9+
---
10+
11+
# Data encryption in Azure Cosmos DB for MongoDB vCore
12+
13+
[!INCLUDE[MongoDB vCore](../../includes/appliesto-mongodb-vcore.md)]
14+
15+
"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.
16+
17+
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.
18+
19+
We provide this feature while we continue to meet our [availability and performance service-level agreements (SLAs)](https://azure.microsoft.com/support/legal/sla/cosmos-db). Data stored in your Azure Cosmos DB account is automatically and seamlessly encrypted with keys managed by Microsoft (service-managed keys).
20+
21+
## Implementation of encryption at rest for Azure Cosmos DB
22+
23+
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.
24+
25+
:::image type="content" source="./media/database-encryption-at-rest/design-diagram.png" alt-text="Diagram that shows data storage and key management design." border="false":::
26+
27+
The basic flow of a user request is:
28+
29+
- The user database account is made ready, and storage keys are retrieved via a request to the Management Service Resource Provider.
30+
- A user creates a connection to Azure Cosmos DB via HTTPS/secure transport. (The SDKs abstract the details.)
31+
- The user sends a JSON document to be stored over the previously created secure connection.
32+
- The JSON document is indexed unless the user has turned off indexing.
33+
- Both the JSON document and index data are written to secure storage.
34+
- Periodically, data is read from the secure storage and backed up to the Azure Encrypted Blob Store.
35+
36+
## Frequently asked questions
37+
38+
Find answers to commonly asked questions about encryption.
39+
40+
### How much more does Azure Storage cost if Storage Service Encryption is enabled?
41+
42+
There's no extra cost.
43+
44+
### How often are encryption keys rotated?
45+
46+
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](https://www.microsoft.com/sdl/default.aspx), which is seen as a subset of internal guidance and has useful best practices for developers.
47+
48+
### What regions have encryption turned on?
49+
50+
All Azure Cosmos DB regions have encryption turned on for all user data.
51+
52+
### Does encryption affect the performance latency and throughput SLAs?
53+
54+
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](https://azure.microsoft.com/support/legal/sla/cosmos-db).
55+
56+
### Does the local emulator support encryption at rest?
57+
58+
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](../../emulator.md) and using a well-known location.
59+
60+
## Next steps
61+
62+
* For an overview of Azure Cosmos DB security and the latest improvements, see [Azure Cosmos DB database security](../../database-security.md).
63+
* For more information about Microsoft certifications, see the [Azure Trust Center](https://azure.microsoft.com/support/trust-center/).
52.5 KB
Loading

0 commit comments

Comments
 (0)