Skip to content

Commit be9bbda

Browse files
committed
Updated screenshots, images, and links, minor updates to improve Acrolinx score.
1 parent 0f6640a commit be9bbda

File tree

3 files changed

+24
-22
lines changed

3 files changed

+24
-22
lines changed
32.2 KB
Loading
11 KB
Loading
Lines changed: 24 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
11
---
22
title: Azure IoT Hub support for virtual networks
3-
description: How to use virtual networks connectivity pattern with IoT Hub
3+
description: How to use the virtual networks connectivity pattern with IoT Hub.
44
author: SoniaLopezBravo
55

66
ms.author: sonialopez
77
ms.service: azure-iot-hub
88
ms.topic: concept-article
9-
ms.date: 01/13/2023
9+
ms.date: 06/26/2025
1010
---
1111

1212
# IoT Hub support for virtual networks with Azure Private Link
1313

1414
By default, IoT Hub's hostnames map to a public endpoint with a publicly routable IP address over the internet. Different customers share this IoT Hub public endpoint, and IoT devices in wide-area networks and on-premises networks can all access it.
1515

16-
![Diagram of IoT Hub public endpoint.](./media/virtual-network-support/public-endpoint.png)
16+
:::image type="content" source="./media/virtual-network-support/public-endpoint.png" alt-text="Diagram showing the IoT Hub public endpoint and various interactions.":::
1717

1818
Some IoT Hub features, including [message routing](./iot-hub-devguide-messages-d2c.md), [file upload](./iot-hub-devguide-file-upload.md), and [bulk device import/export](./iot-hub-bulk-identity-mgmt.md), also require connectivity from IoT Hub to a customer-owned Azure resource over its public endpoint. These connectivity paths make up the egress traffic from IoT Hub to customer resources.
1919

20-
You might want to restrict connectivity to your Azure resources (including IoT Hub) through a VNet that you own and operate for several reasons, including:
20+
You might want to restrict connectivity to your Azure resources (including IoT Hub) through a virtual network that you own and operate for several reasons, including:
2121

2222
* Introducing network isolation for your IoT hub by preventing connectivity exposure to the public internet.
2323

@@ -31,41 +31,43 @@ This article describes how to achieve these goals using [Azure Private Link](../
3131

3232
## Ingress connectivity to IoT Hub using Azure Private Link
3333

34-
A private endpoint is a private IP address allocated inside a customer-owned VNet through which an Azure resource is reachable. With Azure Private Link, you can set up a private endpoint for your IoT hub to allow services inside your VNet to reach IoT Hub without requiring traffic to be sent to IoT Hub's public endpoint. Similarly, your on-premises devices can use [Virtual Private Network (VPN)](../vpn-gateway/vpn-gateway-about-vpngateways.md) or [ExpressRoute](https://azure.microsoft.com/services/expressroute/) peering to gain connectivity to your VNet and your IoT hub (via its private endpoint). As a result, you can restrict or completely block off connectivity to your IoT hub's public endpoints by using [IoT Hub IP filter](./iot-hub-ip-filtering.md) or [the public network access toggle](iot-hub-public-network-access.md). This approach keeps connectivity to your hub using the private endpoint for devices. The main focus of this setup is for devices inside an on-premises network. This setup isn't advised for devices deployed in a wide-area network.
34+
A private endpoint is a private IP address allocated inside a customer-owned virtual network through which an Azure resource is reachable. With Azure Private Link, you can set up a private endpoint for your IoT hub to allow services inside your virtual network to reach IoT Hub without requiring traffic to be sent to IoT Hub's public endpoint. Similarly, your on-premises devices can use [Azure VPN Gateway](../vpn-gateway/vpn-gateway-about-vpngateways.md) or [Azure ExpressRoute](https://azure.microsoft.com/services/expressroute/) peering to gain connectivity to your virtual network and your IoT hub (via its private endpoint). As a result, you can restrict or completely block off connectivity to your IoT hub's public endpoints by using [IoT Hub IP filter](./iot-hub-ip-filtering.md) or [the public network access toggle](iot-hub-public-network-access.md). This approach keeps connectivity to your hub using the private endpoint for devices. The main focus of this setup is for devices inside an on-premises network. This setup isn't advised for devices deployed in a wide-area network.
3535

36-
![Diagram of IoT Hub virtual network ingress.](./media/virtual-network-support/virtual-network-ingress.png)
36+
:::image type="content" source="./media/virtual-network-support/virtual-network-ingress.png" alt-text="Diagram showing IoT Hub virtual network ingress.":::
3737

3838
Before proceeding ensure that the following prerequisites are met:
3939

40-
* You've [created an Azure VNet](../virtual-network/quick-create-portal.md) with a subnet in which the private endpoint will be created.
40+
* You [created an Azure virtual network](../virtual-network/quick-create-portal.md) with a subnet in which to create the private endpoint.
4141

42-
* For devices that operate in on-premises networks, set up [Virtual Private Network (VPN)](../vpn-gateway/vpn-gateway-about-vpngateways.md) or [ExpressRoute](https://azure.microsoft.com/services/expressroute/) private peering into your Azure VNet.
42+
* For devices that operate in on-premises networks, set up [Azure VPN Gateway](../vpn-gateway/vpn-gateway-about-vpngateways.md) or [Azure ExpressRoute](https://azure.microsoft.com/services/expressroute/) private peering into your Azure virtual network.
4343

4444
### Set up a private endpoint for IoT Hub ingress
4545

46-
Private endpoint works for IoT Hub device APIs (like device-to-cloud messages) and service APIs (like creating and updating devices).
46+
Private endpoints work for IoT Hub device APIs (like device-to-cloud messages) and service APIs (like creating and updating devices).
4747

4848
1. In the [Azure portal](https://portal.azure.com), navigate to your IoT hub.
4949

50-
1. Select **Networking** > **Private access**, and then select **Create a private endpoint**.
50+
1. In the left-side pane, under **Security settings**, select **Networking** > **Private access**, and then select **Create a private endpoint**.
5151

52-
:::image type="content" source="media/virtual-network-support/private-link.png" alt-text="Screenshot showing where to add private endpoint for IoT Hub." border="true":::
52+
:::image type="content" source="media/virtual-network-support/private-link.png" alt-text="Screenshot showing where to add a private endpoint for an IoT hub." border="true":::
5353

54-
1. Provide the subscription, resource group, name, and region to create the new private endpoint. Ideally, a private endpoint should be created in the same region as your hub.
54+
1. Provide the subscription, resource group, name, network interface name, and region to create the new private endpoint. Ideally, a private endpoint should be created in the same region as your hub.
5555

56-
1. Select **Next: Resource**, and provide the subscription for your IoT Hub resource, and select **"Microsoft.Devices/IotHubs"** as resource type, your IoT hub name as **resource**, and **iotHub** as target subresource.
56+
1. Select **Next: Resource**, and provide the subscription for your IoT Hub resource. Then, select **Microsoft.Devices/IotHubs** for the resource type, your IoT hub name as the resource**, and **iotHub** as the target subresource.
5757

58-
1. Select **Next: Configuration** and provide your virtual network and subnet to create the private endpoint in. Select the option to integrate with Azure private DNS zone, if desired.
58+
1. Select **Next: Virtual Network**, and provide your virtual network and subnet to create the private endpoint in.
59+
60+
1. Select **Next: DNS**, and select the option to integrate with private DNS zone, if desired.
5961

6062
1. Select **Next: Tags**, and optionally provide any tags for your resource.
6163

62-
1. Select **Review + create** to create your private link resource.
64+
1. Select **Next: Review + create** to review the details for your private link resource, and then select **Create** to create the resource.
6365

6466
### Built-in Event Hubs compatible endpoint
6567

66-
The [built-in Event Hubs compatible endpoint](iot-hub-devguide-messages-read-builtin.md) can also be accessed over private endpoint. When private link is configured, you should see another private endpoint connection for the built-in endpoint. It's the one with `servicebus.windows.net` in the FQDN.
68+
The [built-in Event Hubs compatible endpoint](iot-hub-devguide-messages-read-builtin.md) can also be accessed over private endpoint. When private link is configured, you should see another private endpoint connection and configuration for the built-in endpoint. It's the one with `servicebus.windows.net` in the FQDN.
6769

68-
:::image type="content" source="media/virtual-network-support/private-built-in-endpoint.png" alt-text="Screenshot showing two private endpoints given each IoT Hub private link":::
70+
:::image type="content" source="media/virtual-network-support/private-built-in-endpoint.png" alt-text="Screenshot showing two private endpoints for an IoT Hub private link, highlighting the FQDN and configuration for the built-in endpoint.":::
6971

7072
IoT Hub's [IP filter](iot-hub-ip-filtering.md) can optionally control public access to the built-in endpoint.
7173

@@ -77,9 +79,9 @@ For pricing details, see [Azure Private Link pricing](https://azure.microsoft.co
7779

7880
## Egress connectivity from IoT Hub to other Azure resources
7981

80-
IoT Hub can connect to your Azure blob storage, event hub, service bus resources for [message routing](./iot-hub-devguide-messages-d2c.md), [file upload](./iot-hub-devguide-file-upload.md), and [bulk device import/export](./iot-hub-bulk-identity-mgmt.md) over the resources' public endpoint. Binding your resource to a VNet blocks connectivity to the resource by default. As a result, this configuration prevents IoT hubs from sending data to your resources. To fix this issue, enable connectivity from your IoT Hub resource to your storage account, event hub, or service bus resources via the **trusted Microsoft service** option.
82+
IoT Hub can connect to your Azure blob storage, event hub, service bus resources for [message routing](./iot-hub-devguide-messages-d2c.md), [file upload](./iot-hub-devguide-file-upload.md), and [bulk device import/export](./iot-hub-bulk-identity-mgmt.md) over the resources' public endpoint. Binding your resource to a virtual network blocks connectivity to the resource by default. As a result, this configuration prevents IoT hubs from sending data to your resources. To fix this issue, enable connectivity from your IoT Hub resource to your storage account, event hub, or service bus resources via the **trusted Microsoft service** option.
8183

82-
To allow other services to find your IoT hub as a trusted Microsoft service, your hub must use a managed identity. Once a managed identity is provisioned, grant permission to your hub's managed identity to access your custom endpoint. Follow the article [Managed identities support in IoT Hub](./iot-hub-managed-identity.md) to provision a managed identity with Azure role-based access control (RBAC) permission, and add the custom endpoint to your IoT hub. Make sure you turn on the trusted Microsoft first party exception to allow your IoT hubs access to the custom endpoint if you have the firewall configurations in place.
84+
To allow other services to find your IoT hub as a trusted Microsoft service, your hub must use a managed identity. Once a managed identity is provisioned, grant permission to your hub's managed identity to access your custom endpoint. Follow the procedures provided in [IoT Hub support for managed identities](./iot-hub-managed-identity.md) to provision a managed identity with Azure role-based access control (RBAC) permission, and add the custom endpoint to your IoT hub. To allow your IoT hubs access to the custom endpoint, make sure you turn on the trusted Microsoft first party exception if you have the firewall configurations in place.
8385

8486
### Pricing for trusted Microsoft service option
8587

@@ -89,6 +91,6 @@ Trusted Microsoft first party services exception feature is free of charge. Char
8991

9092
Use the following links to learn more about IoT Hub features:
9193

92-
* [Message routing](./iot-hub-devguide-messages-d2c.md)
93-
* [File upload](./iot-hub-devguide-file-upload.md)
94-
* [Bulk device import/export](./iot-hub-bulk-identity-mgmt.md)
94+
* [Use IoT Hub message routing to send device-to-cloud messages to Azure services](./iot-hub-devguide-messages-d2c.md)
95+
* [Upload files with IoT Hub](./iot-hub-devguide-file-upload.md)
96+
* [Import and export IoT Hub device identities in bulk](./iot-hub-bulk-identity-mgmt.md)

0 commit comments

Comments
 (0)