Skip to content

Commit 5d44e56

Browse files
authored
Merge pull request #107573 from tamram/tamram-0311a
private endpoints GA
2 parents 28bdcb8 + 2e7eae1 commit 5d44e56

File tree

1 file changed

+25
-19
lines changed

1 file changed

+25
-19
lines changed

articles/storage/common/storage-private-endpoints.md

Lines changed: 25 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,48 @@
11
---
2-
title: Using Private Endpoints with Azure Storage | Microsoft Docs
2+
title: Use private endpoints
3+
titleSuffix: Azure Storage
34
description: Overview of private endpoints for secure access to storage accounts from virtual networks.
45
services: storage
56
author: santoshc
67

78
ms.service: storage
89
ms.topic: article
9-
ms.date: 09/25/2019
10+
ms.date: 03/12/2020
1011
ms.author: santoshc
1112
ms.reviewer: santoshc
1213
ms.subservice: common
1314
---
1415

15-
# Using Private Endpoints for Azure Storage (Preview)
16+
# Use private endpoints for Azure Storage
1617

17-
You can use [Private Endpoints](../../private-link/private-endpoint-overview.md) for your Azure Storage accounts to allow clients on a virtual network (VNet) to securely access data over a [Private Link](../../private-link/private-link-overview.md). The private endpoint uses an IP address from the VNet address space for your storage account service. Network traffic between the clients on the VNet and the storage account traverses over the VNet and a private link on the Microsoft backbone network, eliminating exposure from the public internet.
18+
You can use [private endpoints](../../private-link/private-endpoint-overview.md) for your Azure Storage accounts to allow clients on a virtual network (VNet) to securely access data over a [Private Link](../../private-link/private-link-overview.md). The private endpoint uses an IP address from the VNet address space for your storage account service. Network traffic between the clients on the VNet and the storage account traverses over the VNet and a private link on the Microsoft backbone network, eliminating exposure from the public internet.
1819

1920
Using private endpoints for your storage account enables you to:
21+
2022
- Secure your storage account by configuring the storage firewall to block all connections on the public endpoint for the storage service.
2123
- Increase security for the virtual network (VNet), by enabling you to block exfiltration of data from the VNet.
2224
- Securely connect to storage accounts from on-premises networks that connect to the VNet using [VPN](../../vpn-gateway/vpn-gateway-about-vpngateways.md) or [ExpressRoutes](../../expressroute/expressroute-locations.md) with private-peering.
2325

24-
## Conceptual Overview
25-
![Private Endpoints for Azure Storage Overview](media/storage-private-endpoints/storage-private-endpoints-overview.jpg)
26+
## Conceptual overview
27+
28+
![Overview of private endpoints for Azure Storage](media/storage-private-endpoints/storage-private-endpoints-overview.jpg)
2629

27-
A Private Endpoint is a special network interface for an Azure service in your [Virtual Network](../../virtual-network/virtual-networks-overview.md) (VNet). When you create a private endpoint for your storage account, it provides secure connectivity between clients on your VNet and your storage. The private endpoint is assigned an IP address from the IP address range of your VNet. The connection between the private endpoint and the storage service uses a secure private link.
30+
A private endpoint is a special network interface for an Azure service in your [Virtual Network](../../virtual-network/virtual-networks-overview.md) (VNet). When you create a private endpoint for your storage account, it provides secure connectivity between clients on your VNet and your storage. The private endpoint is assigned an IP address from the IP address range of your VNet. The connection between the private endpoint and the storage service uses a secure private link.
2831

2932
Applications in the VNet can connect to the storage service over the private endpoint seamlessly, **using the same connection strings and authorization mechanisms that they would use otherwise**. Private endpoints can be used with all protocols supported by the storage account, including REST and SMB.
3033

3134
Private endpoints can be created in subnets that use [Service Endpoints](../../virtual-network/virtual-network-service-endpoints-overview.md). Clients in a subnet can thus connect to one storage account using private endpoint, while using service endpoints to access others.
3235

3336
When you create a private endpoint for a storage service in your VNet, a consent request is sent for approval to the storage account owner. If the user requesting the creation of the private endpoint is also an owner of the storage account, this consent request is automatically approved.
3437

35-
Storage account owners can manage consent requests and the private endpoints, through the '*Private Endpoints*' tab for the storage account in the [Azure portal](https://portal.azure.com).
38+
Storage account owners can manage consent requests and the private endpoints, through the '*Private endpoints*' tab for the storage account in the [Azure portal](https://portal.azure.com).
3639

3740
> [!TIP]
3841
> If you want to restrict access to your storage account through the private endpoint only, configure the storage firewall to deny or control access through the public endpoint.
3942
4043
You can secure your storage account to only accept connections from your VNet, by [configuring the storage firewall](storage-network-security.md#change-the-default-network-access-rule) to deny access through its public endpoint by default. You don't need a firewall rule to allow traffic from a VNet that has a private endpoint, since the storage firewall only controls access through the public endpoint. Private endpoints instead rely on the consent flow for granting subnets access to the storage service.
4144

42-
### Private Endpoints for Storage Service
45+
### Private endpoints for Azure Storage
4346

4447
When creating the private endpoint, you must specify the storage account and the storage service to which it connects. You need a separate private endpoint for each storage service in a storage account that you need to access, namely [Blobs](../blobs/storage-blobs-overview.md), [Data Lake Storage Gen2](../blobs/data-lake-storage-introduction.md), [Files](../files/storage-files-introduction.md), [Queues](../queues/storage-queues-introduction.md), [Tables](../tables/table-storage-overview.md), or [Static Websites](../blobs/storage-blob-static-website.md).
4548

@@ -48,16 +51,14 @@ When creating the private endpoint, you must specify the storage account and the
4851
4952
For read access to the secondary region with a storage account configured for geo-redundant storage, you need separate private endpoints for both the primary and secondary instances of the service. You don't need to create a private endpoint for the secondary instance for **failover**. The private endpoint will automatically connect to the new primary instance after failover. For more information about storage redundancy options, see [Azure Storage redundancy](storage-redundancy.md).
5053

51-
#### Resources
52-
5354
For more detailed information on creating a private endpoint for your storage account, refer to the following articles:
5455

5556
- [Connect privately to a storage account from the Storage Account experience in the Azure portal](../../private-link/create-private-endpoint-storage-portal.md)
5657
- [Create a private endpoint using the Private Link Center in the Azure portal](../../private-link/create-private-endpoint-portal.md)
5758
- [Create a private endpoint using Azure CLI](../../private-link/create-private-endpoint-cli.md)
5859
- [Create a private endpoint using Azure PowerShell](../../private-link/create-private-endpoint-powershell.md)
5960

60-
### Connecting to Private Endpoints
61+
### Connecting to private endpoints
6162

6263
Clients on a VNet using the private endpoint should use the same connection string for the storage account, as clients connecting to the public endpoint. We rely upon DNS resolution to automatically route the connections from the VNet to the storage account over a private link.
6364

@@ -66,7 +67,7 @@ Clients on a VNet using the private endpoint should use the same connection stri
6667
6768
We create a [private DNS zone](../../dns/private-dns-overview.md) attached to the VNet with the necessary updates for the private endpoints, by default. However, if you're using your own DNS server, you may need to make additional changes to your DNS configuration. The section on [DNS changes](#dns-changes-for-private-endpoints) below describes the updates required for private endpoints.
6869

69-
## DNS changes for Private Endpoints
70+
## DNS changes for private endpoints
7071

7172
When you create a private endpoint, the DNS CNAME resource record for the storage account is updated to an alias in a subdomain with the prefix '*privatelink*'. By default, we also create a [private DNS zone](../../dns/private-dns-overview.md), corresponding to the '*privatelink*' subdomain, with the DNS A resource records for the private endpoints.
7273

@@ -107,29 +108,34 @@ The recommended DNS zone names for private endpoints for storage services are:
107108
| Table service | `privatelink.table.core.windows.net` |
108109
| Static Websites | `privatelink.web.core.windows.net` |
109110

110-
#### Resources
111-
112111
For more information on configuring your own DNS server to support private endpoints, refer to the following articles:
113112

114113
- [Name resolution for resources in Azure virtual networks](/azure/virtual-network/virtual-networks-name-resolution-for-vms-and-role-instances#name-resolution-that-uses-your-own-dns-server)
115-
- [DNS configuration for Private Endpoints](/azure/private-link/private-endpoint-overview#dns-configuration)
114+
- [DNS configuration for private endpoints](/azure/private-link/private-endpoint-overview#dns-configuration)
116115

117116
## Pricing
118117

119118
For pricing details, see [Azure Private Link pricing](https://azure.microsoft.com/pricing/details/private-link).
120119

121120
## Known Issues
122121

122+
Keep in mind the following known issues about private endpoints for Azure Storage.
123+
123124
### Copy Blob support
124125

125-
During the preview, we don't support [Copy Blob](https://docs.microsoft.com/rest/api/storageservices/Copy-Blob) commands issued to storage accounts accessed through private endpoints when the source storage account is protected by a firewall.
126+
If the storage account is protected by a firewall and the account is accessed through private endpoints, then that account cannot serve as the source of a [Copy Blob](/rest/api/storageservices/copy-blob) operation.
126127

127-
### Storage access constraints for clients in VNets with Private Endpoints
128+
### Storage access constraints for clients in VNets with private endpoints
128129

129-
Clients in VNets with existing private endpoints face constraints when accessing other storage accounts that have private endpoints. For instance, suppose a VNet N1 has a private endpoint for a storage account A1 for, say, the blob service. If storage account A2 has a private endpoint in a VNet N2 for the blob service, then clients in VNet N1 must also access the blob service of account A2 using a private endpoint. If storage account A2 does not have any private endpoints for the blob service, then clients in VNet N1 can access its blob service without a private endpoint.
130+
Clients in VNets with existing private endpoints face constraints when accessing other storage accounts that have private endpoints. For instance, suppose a VNet N1 has a private endpoint for a storage account A1 for Blob storage. If storage account A2 has a private endpoint in a VNet N2 for Blob storage, then clients in VNet N1 must also access Blob storage in account A2 using a private endpoint. If storage account A2 does not have any private endpoints for Blob storage, then clients in VNet N1 can access Blob storage in that account without a private endpoint.
130131

131132
This constraint is a result of the DNS changes made when account A2 creates a private endpoint.
132133

133134
### Network Security Group rules for subnets with private endpoints
134135

135136
Currently, you can't configure [Network Security Group](../../virtual-network/security-overview.md) (NSG) rules and user-defined routes for private endpoints. NSG rules applied to the subnet hosting the private endpoint are applied to the private endpoint. A limited workaround for this issue is to implement your access rules for private endpoints on the source subnets, though this approach may require a higher management overhead.
137+
138+
## Next steps
139+
140+
- [Configure Azure Storage firewalls and virtual networks](storage-network-security.md)
141+
- [Security recommendations for Blob storage](../blobs/security-recommendations.md)

0 commit comments

Comments
 (0)