Skip to content

Commit 835d02f

Browse files
Merge pull request #115079 from jlian/master
Clarify access for built-in endpoint
2 parents 7f6e20b + bbed435 commit 835d02f

File tree

2 files changed

+20
-15
lines changed

2 files changed

+20
-15
lines changed

articles/iot-hub/iot-hub-ip-filtering.md

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ author: robinsh
55
ms.service: iot-hub
66
services: iot-hub
77
ms.topic: conceptual
8-
ms.date: 07/22/2017
8+
ms.date: 05/12/2020
99
ms.author: robinsh
1010
---
1111

@@ -23,9 +23,12 @@ There are two specific use-cases when it is useful to block the IoT Hub endpoint
2323

2424
## How filter rules are applied
2525

26-
The IP filter rules are applied at the IoT Hub service level. Therefore the IP filter rules apply to all connections from devices and back-end apps using any supported protocol.
26+
The IP filter rules are applied at the IoT Hub service level. Therefore, the IP filter rules apply to all connections from devices and back-end apps using any supported protocol. However, clients reading directly from the [built-in Event Hub compatible endpoint](iot-hub-devguide-messages-read-builtin.md) (not via the IoT Hub connection string) are not bound to the IP filter rules.
2727

28-
Any connection attempt from an IP address that matches a rejecting IP rule in your IoT hub receives an unauthorized 401 status code and description. The response message does not mention the IP rule.
28+
Any connection attempt from an IP address that matches a rejecting IP rule in your IoT hub receives an unauthorized 401 status code and description. The response message does not mention the IP rule. Rejecting IP addresses can prevent other Azure services such as Azure Stream Analytics, Azure Virtual Machines, or the Device Explorer in Azure portal from interacting with the IoT hub.
29+
30+
> [!NOTE]
31+
> If you must use Azure Stream Analytics (ASA) to read messages from an IoT hub with IP filter enabled, use the event hub-compatible name and endpoint of your IoT hub to manually add an [Event Hubs stream input](../stream-analytics/stream-analytics-define-inputs.md#stream-data-from-event-hubs) in the ASA.
2932
3033
## Default setting
3134

@@ -57,12 +60,6 @@ The **Add** option is disabled when you reach the maximum of 10 IP filter rules.
5760

5861
To edit an existing rule, select the data you want to change, make the change, then select **Save** to save your edit.
5962

60-
> [!NOTE]
61-
> Rejecting IP addresses can prevent other Azure Services (such as Azure Stream Analytics, Azure Virtual Machines, or the Device Explorer in the portal) from interacting with the IoT hub.
62-
63-
> [!WARNING]
64-
> If you use Azure Stream Analytics (ASA) to read messages from an IoT hub with IP filtering enabled, use the event hub-compatible name and endpoint of your IoT hub to manually add an [Event Hubs stream input](https://docs.microsoft.com/azure/stream-analytics/stream-analytics-define-inputs#stream-data-from-event-hubs) in the ASA.
65-
6663
## Delete an IP filter rule
6764

6865
To delete an IP filter rule, select the trash can icon on that row and then select **Save**. The rule is removed and the change is saved.

articles/iot-hub/virtual-network-support.md

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
author: jlian
66
ms.service: iot-fundamentals
77
ms.topic: conceptual
8-
ms.date: 04/28/2020
8+
ms.date: 05/12/2020
99
ms.author: jlian
1010
---
1111

@@ -42,10 +42,7 @@ This article describes how to achieve these goals using [private endpoints](../p
4242

4343
## Ingress connectivity to IoT Hub using private endpoints
4444

45-
A private endpoint is a private IP address allocated inside a customer-owned VNET via which an Azure resource is reachable. By having a private endpoint for your IoT hub, you will be able to allow services operating inside your VNET to reach IoT Hub without requiring traffic to be sent to IoT Hub's public endpoint. Similarly, devices that operate in your on-premises can use [Virtual Private Network (VPN)](https://docs.microsoft.com/azure/vpn-gateway/vpn-gateway-about-vpngateways) or [ExpressRoute](https://azure.microsoft.com/services/expressroute/) Private Peering to gain connectivity to your VNET in Azure and subsequently to your IoT Hub (via its private endpoint). As a result, customers who wish to restrict connectivity to their IoT hub's public endpoints (or possibly completely block it off) can achieve this goal by using [IoT Hub firewall rules](./iot-hub-ip-filtering.md) while retaining connectivity to their Hub using the private endpoint.
46-
47-
> [!NOTE]
48-
> The main focus of this setup is for devices inside an on-premises network. This setup is not advised for devices deployed in a wide-area network.
45+
A private endpoint is a private IP address allocated inside a customer-owned VNET via which an Azure resource is reachable. By having a private endpoint for your IoT hub, you will be able to allow services operating inside your VNET to reach IoT Hub without requiring traffic to be sent to IoT Hub's public endpoint. Similarly, devices that operate in your on-premises can use [Virtual Private Network (VPN)](https://docs.microsoft.com/azure/vpn-gateway/vpn-gateway-about-vpngateways) or [ExpressRoute](https://azure.microsoft.com/services/expressroute/) Private Peering to gain connectivity to your VNET in Azure and subsequently to your IoT Hub (via its private endpoint). As a result, customers who wish to restrict connectivity to their IoT hub's public endpoints (or possibly completely block it off) can achieve this goal by using [IoT Hub IP filter](./iot-hub-ip-filtering.md) and [configuring routing to not send any data to the built-in endpoint](#built-in-event-hub-compatible-endpoint-doesnt-support-access-over-private-endpoint). This approach retains connectivity to their Hub using the private endpoint for devices. The main focus of this setup is for devices inside an on-premises network. This setup is not advised for devices deployed in a wide-area network.
4946

5047
![IoT Hub public endpoint](./media/virtual-network-support/virtual-network-ingress.png)
5148

@@ -91,8 +88,19 @@ To set up a private endpoint, follow these steps:
9188
9289
6. Click **Next: Tags**, and optionally provide any tags for your resource.
9390
94-
7. Click **Review + create** to create your private endpoint resource.
91+
7. Click **Review + create** to create your private link resource.
92+
93+
### Built-in Event Hub compatible endpoint doesn't support access over private endpoint
94+
95+
The [built-in Event Hub compatible endpoint](iot-hub-devguide-messages-read-builtin.md) doesn't support access over private endpoint. When configured, an IoT hub's private endpoint is for ingress connectivity only. Consuming data from built-in Event Hub compatible endpoint can only be done over the public internet.
96+
97+
IoT Hub's [IP filter](iot-hub-ip-filtering.md) also doesn't control public access to the built-in endpoint. To completely block public network access to your IoT hub, you must:
9598
99+
1. Configure private endpoint access for IoT Hub
100+
1. Turn off public network access by using IP filter to block all IP
101+
1. Turn off the built-in Event Hub endpoint by [setting up routing to not send data to it](iot-hub-devguide-messages-d2c.md)
102+
1. Turn off the [fallback route](iot-hub-devguide-messages-d2c.md#fallback-route)
103+
1. Configure egress to other Azure resources using [Azure first party trusted services](#egress-connectivity-from-iot-hub-to-other-azure-resources)
96104
97105
### Pricing (private endpoints)
98106

0 commit comments

Comments
 (0)