Skip to content

Commit d3e323a

Browse files
committed
Add Private Link sections
1 parent 116abf0 commit d3e323a

File tree

1 file changed

+30
-2
lines changed

1 file changed

+30
-2
lines changed

articles/digital-twins/how-to-enable-private-link.md

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -247,8 +247,36 @@ armclient PATCH /subscriptions/<your-Azure-subscription-ID>/resourceGroups/<your
247247

248248
---
249249

250+
## Deploy with ARM
251+
252+
You can also set up Private Link with Azure Digital Twins using an ARM template.
253+
254+
For a sample template that allows an Azure function to connect to Azure Digital Twins through a Private Link endpoint, see [Azure Digital Twins with Azure function and Private Link (ARM template)](https://github.com/Azure/azure-quickstart-templates/tree/master/quickstarts/microsoft.digitaltwins/digitaltwins-with-function-private-link).
255+
256+
This template creates an Azure Digital Twins instance, a virtual network, an Azure function connected to the virtual network, and a Private Link connection to make the Azure Digital Twins instance accessible to the Azure function through a private endpoint.
257+
258+
## Troubleshooting Private Link with Azure Digital Twins
259+
260+
Here are some common issues experienced with Private Link for Azure Digital Twins.
261+
262+
* **Issue:** When trying to access Azure Digital Twins APIs, you see an HTTP error code 403 with the following error in the response body:
263+
```json
264+
{
265+
"statusCode": 403,
266+
"message": "Public network access disabled by policy."
267+
}
268+
```
269+
270+
**Resolution:** This error occurs when `publicNetworkAccess` has been disabled for the Azure Digital Twins instance and API requests are expected to come through Private Link, but the call was routed through the public network (possibly over a load balancer configured for a virtual network). Make sure that your API client is resolving the private IP for the private endpoint when trying to access the API through the endpoint hostname.
271+
272+
To facilitate hostname resolution to the private IP of the private endpoint in a subnet, you can configure a private DNS zone. Verify that the private DNS zone is correctly linked to the virtual network and uses the right zone name, such as `privatelink.digitaltwins.azure.net`.
273+
274+
* **Issue:** When trying to access Azure Digital Twins through a private endpoint, the connection times out.
275+
276+
**Resolution:** Verify that there are no [network security group](../virtual-network/network-security-groups-overview.md) rules that prohibit the client from communicating to the private endpoint and its subnet. Communication on TCP port 443 must be permitted between the client's source IP address/subnet, and the private endpoint destination IP address/subnet.
250277

251278
## Next steps
252279

253-
Learn more about Private Link for Azure:
254-
* [What is Azure Private Link service?](../private-link/private-link-service-overview.md)
280+
Quickly set up a protected environment with Private Link using an ARM template: [Azure Digital Twins with Azure function and Private Link](https://github.com/Azure/azure-quickstart-templates/tree/master/quickstarts/microsoft.digitaltwins/digitaltwins-with-function-private-link).
281+
282+
Or, learn more about Private Link for Azure: [What is Azure Private Link service?](../private-link/private-link-service-overview.md)

0 commit comments

Comments
 (0)