Skip to content

Commit 7ddee9e

Browse files
authored
Merge pull request #202367 from tamram/tamram22-0607
client-side encryption updates for CBC vulnerability
2 parents 49139db + 89f845e commit 7ddee9e

15 files changed

+418
-1362
lines changed

.openpublishing.redirection.json

Lines changed: 40 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6311,6 +6311,46 @@
63116311
"redirect_url": "/azure/azure-cache-for-redis/scripts/create-manage-cache",
63126312
"redirect_document_id": false
63136313
},
6314+
{
6315+
"source_path_from_root": "/articles/storage/storage-client-side-encryption.md",
6316+
"redirect_url": "/azure/storage/common/storage-client-side-encryption",
6317+
"redirect_document_id": true
6318+
},
6319+
{
6320+
"source_path_from_root": "/articles/storage/common/storage-client-side-encryption.md",
6321+
"redirect_url": "/azure/storage/blobs/client-side-encryption",
6322+
"redirect_document_id": true
6323+
},
6324+
{
6325+
"source_path_from_root": "/articles/storage/storage-client-side-encryption-java.md",
6326+
"redirect_url": "/azure/storage/common/storage-client-side-encryption-java",
6327+
"redirect_document_id": true
6328+
},
6329+
{
6330+
"source_path_from_root": "/articles/storage/common/storage-client-side-encryption-java.md",
6331+
"redirect_url": "/azure/storage/blobs/client-side-encryption",
6332+
"redirect_document_id": false
6333+
},
6334+
{
6335+
"source_path_from_root": "/articles/storage/storage-client-side-encryption-python.md",
6336+
"redirect_url": "/azure/storage/common/storage-client-side-encryption-python",
6337+
"redirect_document_id": true
6338+
},
6339+
{
6340+
"source_path_from_root": "/articles/storage/common/storage-client-side-encryption-python.md",
6341+
"redirect_url": "/azure/storage/blobs/client-side-encryption",
6342+
"redirect_document_id": false
6343+
},
6344+
{
6345+
"source_path_from_root": "/articles/storage/storage-encrypt-decrypt-blobs-key-vault.md",
6346+
"redirect_url": "/azure/storage/blobs/storage-encrypt-decrypt-blobs-key-vault",
6347+
"redirect_document_id": false
6348+
},
6349+
{
6350+
"source_path_from_root": "/articles/storage/blobs/storage-encrypt-decrypt-blobs-key-vault.md",
6351+
"redirect_url": "/azure/storage/blobs/client-side-encryption",
6352+
"redirect_document_id": false
6353+
},
63146354
{
63156355
"source_path_from_root": "/articles/storage/blobs/Storage-blob-performance-tiers.md",
63166356
"redirect_url": "/azure/storage/common/storage-account-overview",
@@ -22866,11 +22906,6 @@
2286622906
"redirect_url": "/azure/storage/blobs/storage-dotnet-shared-access-signature-part-2",
2286722907
"redirect_document_id": true
2286822908
},
22869-
{
22870-
"source_path_from_root": "/articles/storage/storage-encrypt-decrypt-blobs-key-vault.md",
22871-
"redirect_url": "/azure/storage/blobs/storage-encrypt-decrypt-blobs-key-vault",
22872-
"redirect_document_id": true
22873-
},
2287422909
{
2287522910
"source_path_from_root": "/articles/storage/storage-https-custom-domain-cdn.md",
2287622911
"redirect_url": "/azure/storage/blobs/storage-https-custom-domain-cdn",
@@ -23267,21 +23302,6 @@
2326723302
"redirect_url": "/azure/storage/common/storage-choose-data-transfer-solution",
2326823303
"redirect_document_id": true
2326923304
},
23270-
{
23271-
"source_path_from_root": "/articles/storage/storage-client-side-encryption.md",
23272-
"redirect_url": "/azure/storage/common/storage-client-side-encryption",
23273-
"redirect_document_id": true
23274-
},
23275-
{
23276-
"source_path_from_root": "/articles/storage/storage-client-side-encryption-java.md",
23277-
"redirect_url": "/azure/storage/common/storage-client-side-encryption-java",
23278-
"redirect_document_id": true
23279-
},
23280-
{
23281-
"source_path_from_root": "/articles/storage/storage-client-side-encryption-python.md",
23282-
"redirect_url": "/azure/storage/common/storage-client-side-encryption-python",
23283-
"redirect_document_id": true
23284-
},
2328523305
{
2328623306
"source_path_from_root": "/articles/storage/storage-concurrency.md",
2328723307
"redirect_url": "/azure/storage/common/storage-concurrency",

articles/azure-government/azure-secure-isolation-guidance.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ A brief summary of isolation approaches is provided below.
3737

3838
In addition to robust logical compute isolation available by design to all Azure tenants, if you desire physical compute isolation, you can use Azure Dedicated Host or isolated Virtual Machines, which are deployed on server hardware dedicated to a single customer.
3939
- **Networking isolation** – Azure Virtual Network (VNet) helps ensure that your private network traffic is logically isolated from traffic belonging to other customers. Services can communicate using public IPs or private (VNet) IPs. Communication between your VMs remains private within a VNet. You can connect your VNets via [VNet peering](../virtual-network/virtual-network-peering-overview.md) or [VPN gateways](../vpn-gateway/vpn-gateway-about-vpngateways.md), depending on your connectivity options, including bandwidth, latency, and encryption requirements. You can use [network security groups](../virtual-network/network-security-groups-overview.md) (NSGs) to achieve network isolation and protect your Azure resources from the Internet while accessing Azure services that have public endpoints. You can use Virtual Network [service tags](../virtual-network/service-tags-overview.md) to define network access controls on [network security groups](../virtual-network/network-security-groups-overview.md#security-rules) or [Azure Firewall](../firewall/service-tags.md). A service tag represents a group of IP address prefixes from a given Azure service. Microsoft manages the address prefixes encompassed by the service tag and automatically updates the service tag as addresses change, thereby reducing the complexity of frequent updates to network security rules. Moreover, you can use [Private Link](../private-link/private-link-overview.md) to access Azure PaaS services over a private endpoint in your VNet, ensuring that traffic between your VNet and the service travels across the Microsoft global backbone network, which eliminates the need to expose the service to the public Internet. Finally, Azure provides you with options to encrypt data in transit, including [Transport Layer Security (TLS) end-to-end encryption](../application-gateway/ssl-overview.md) of network traffic with [TLS termination using Key Vault certificates](../application-gateway/key-vault-certs.md), [VPN encryption](../vpn-gateway/vpn-gateway-about-compliance-crypto.md) using IPsec, and Azure ExpressRoute encryption using [MACsec with customer-managed keys (CMK) support](../expressroute/expressroute-about-encryption.md#point-to-point-encryption-by-macsec-faq).
40-
- **Storage isolation** – To ensure cryptographic certainty of logical data isolation, Azure Storage relies on data encryption at rest using advanced algorithms with multiple ciphers. This process relies on multiple encryption keys and services such as Azure Key Vault and Azure AD to ensure secure key access and centralized key management. Azure Storage service encryption ensures that data is automatically encrypted before persisting it to Azure Storage and decrypted before retrieval. All data written to Azure Storage is [encrypted through FIPS 140 validated 256-bit AES encryption](../storage/common/storage-service-encryption.md#about-azure-storage-encryption) and you can use Key Vault for customer-managed keys (CMK). Azure Storage service encryption encrypts the page blobs that store Azure Virtual Machine disks. Moreover, Azure Disk encryption may optionally be used to encrypt Azure Windows and Linux IaaS Virtual Machine disks to increase storage isolation and assure cryptographic certainty of your data stored in Azure. This encryption includes managed disks.
40+
- **Storage isolation** – To ensure cryptographic certainty of logical data isolation, Azure Storage relies on data encryption at rest using advanced algorithms with multiple ciphers. This process relies on multiple encryption keys and services such as Azure Key Vault and Azure AD to ensure secure key access and centralized key management. Azure Storage service encryption ensures that data is automatically encrypted before persisting it to Azure Storage and decrypted before retrieval. All data written to Azure Storage is [encrypted through FIPS 140 validated 256-bit AES encryption](../storage/common/storage-service-encryption.md#about-azure-storage-service-side-encryption) and you can use Key Vault for customer-managed keys (CMK). Azure Storage service encryption encrypts the page blobs that store Azure Virtual Machine disks. Moreover, Azure Disk encryption may optionally be used to encrypt Azure Windows and Linux IaaS Virtual Machine disks to increase storage isolation and assure cryptographic certainty of your data stored in Azure. This encryption includes managed disks.
4141
- **Security assurance processes and practices** – Azure isolation assurance is further enforced by Microsoft’s internal use of the [Security Development Lifecycle](https://www.microsoft.com/securityengineering/sdl/) (SDL) and other strong security assurance processes to protect attack surfaces and mitigate threats. Microsoft has established industry-leading processes and tooling that provides high confidence in the Azure isolation guarantee.
4242

4343
In line with the [shared responsibility](../security/fundamentals/shared-responsibility.md) model in cloud computing, as you migrate workloads from your on-premises datacenter to the cloud, the delineation of responsibility between you and cloud service provider varies depending on the cloud service model. For example, with the Infrastructure as a Service (IaaS) model, Microsoft’s responsibility ends at the Hypervisor layer, and you're responsible for all layers above the virtualization layer, including maintaining the base operating system in guest VMs. You can use Azure isolation technologies to achieve the desired level of isolation for your applications and data deployed in the cloud.
@@ -729,7 +729,7 @@ However, you can also choose to manage encryption with your own keys by specifyi
729729
> [!NOTE]
730730
> You can configure customer-managed keys (CMK) with Azure Key Vault using the **[Azure portal, Azure PowerShell, or Azure CLI](../storage/common/customer-managed-keys-configure-key-vault.md)**. You can **[use .NET to specify a customer-provided key](../storage/blobs/storage-blob-customer-provided-key.md)** on a request to Blob storage.
731731
732-
Storage service encryption is enabled by default for all new and existing storage accounts and it [can't be disabled](../storage/common/storage-service-encryption.md#about-azure-storage-encryption). As shown in Figure 17, the encryption process uses the following keys to help ensure cryptographic certainty of data isolation at rest:
732+
Storage service encryption is enabled by default for all new and existing storage accounts and it [can't be disabled](../storage/common/storage-service-encryption.md#about-azure-storage-service-side-encryption). As shown in Figure 17, the encryption process uses the following keys to help ensure cryptographic certainty of data isolation at rest:
733733

734734
- *Data Encryption Key (DEK)* is a symmetric AES-256 key that is used for bulk encryption, and it's unique per storage account in Azure Storage. It's generated by the Azure Storage service as part of the storage account creation. This key is encrypted by the Key Encryption Key (KEK) and is never stored unencrypted.
735735
- *Key Encryption Key (KEK)* is an asymmetric RSA-2048 key that is used to encrypt the Data Encryption Key (DEK) using Azure Key Vault and exists only in Azure Key Vault. It's never exposed directly to the Azure Storage service or other services. You must use Azure Key Vault to store your customer-managed keys for Storage service encryption.

0 commit comments

Comments
 (0)