You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#Customer intent: As an administrator, I want to configure a managed network for Azure AI Foundry hubs so that my computing resources are protected.
16
+
14
17
---
15
18
16
19
# How to configure a managed network for Azure AI Foundry hubs
17
20
18
21
We have two network isolation aspects. One is the network isolation to access an Azure AI Foundry hub. Another is the network isolation of computing resources for both your hub and project (such as compute instance, serverless and managed online endpoint.) This document explains the latter highlighted in the diagram. You can use hub built-in network isolation to protect your computing resources.
19
22
20
-
:::image type="content" source="../media/how-to/network/azure-ai-network-outbound.svg" alt-text="Diagram of hub network isolation." lightbox="../media/how-to/network/azure-ai-network-outbound.png":::
23
+
:::image type="content" source="../media/how-to/network/azure-ai-network-outbound.svg" alt-text="Diagram of hub network isolation configuration with Azure AI Foundry." lightbox="../media/how-to/network/azure-ai-network-outbound.png":::
21
24
22
25
You need to configure following network isolation configurations.
23
26
@@ -54,12 +57,12 @@ The following diagram shows a managed virtual network configured to __allow inte
54
57
The following diagram shows a managed virtual network configured to __allow only approved outbound__:
55
58
56
59
> [!NOTE]
57
-
> In this configuration, the storage, key vault, and container registry used by the hub are flagged as private. Since they are flagged as private, a private endpoint is used to communicate with them.
60
+
> In this configuration, the storage, key vault, and container registry used by the hub are flagged as private. Since they're flagged as private, a private endpoint is used to communicate with them.
58
61
59
62
:::image type="content" source="../media/how-to/network/only-approved-outbound.svg" alt-text="Diagram of managed virtual network isolation configured for allow only approved outbound." lightbox="../media/how-to/network/only-approved-outbound.png":::
60
63
61
64
> [!NOTE]
62
-
> When you are accessing a private storage account from a public AI Foundry hub, ensure you are accessing AI Foundry from within the virtual network of your storage account. This ensures you can call actions such as upload files to a private storage account, which is independent of your AI Foundry hub's networking settings. For more on setting your private storage accounts virtual network, see [Configure Azure Storage firewalls and virtual networks](https://learn.microsoft.com/en-us/azure/storage/common/storage-network-security?tabs=azure-portal).
65
+
> When you're accessing a private storage account from a public AI Foundry hub, you must access AI Foundry from within the virtual network of your storage account. Accessing AI Foundry from within the virtual network ensures that you can call actions such as upload files to the private storage account. The private storage account is independent of your AI Foundry hub's networking settings. For more on setting your private storage accounts virtual network, see [Configure Azure Storage firewalls and virtual networks](/azure/storage/common/storage-network-security).
63
66
64
67
## Prerequisites
65
68
@@ -138,7 +141,7 @@ Before following the steps in this article, make sure you have the following pre
138
141
139
142
## Limitations
140
143
141
-
* Azure AI Foundry supports managed virtual network isolation for securing your compute resources. Azure AI Foundry does notsupport bring your own virtual network for securing compute resources. Please note bring your own virtual network for securing computes is different than your Azure virtual network that is required to access Azure AI Foundry from your on-premises network.
144
+
* Azure AI Foundry supports managed virtual network isolation for securing your compute resources. Azure AI Foundry doesn't support bring your own virtual network for securing compute resources. Note that bringing your own virtual network for securing computes is different than your Azure virtual network that is required to access Azure AI Foundry from your on-premises network.
142
145
* Once you enable managed virtual network isolation of your Azure AI, you can't disable it.
143
146
* Managed virtual network uses private endpoint connection to access your private resources. You can't have a private endpoint and a service endpoint at the same time for your Azure resources, such as a storage account. We recommend using private endpoints in all scenarios.
144
147
* The managed virtual network is deleted when the Azure AIis deleted.
@@ -152,14 +155,14 @@ Before following the steps in this article, make sure you have the following pre
152
155
## Configure a managed virtual network to allow internet outbound
153
156
154
157
> [!TIP]
155
-
> The creation of the managed VNetis deferred until a compute resource is created or provisioning is manually started. When allowing automatic creation, it can take around __30 minutes__ to create the first compute resource as it is also provisioning the network.
158
+
> The creation of the managed virtual networkis deferred until a compute resource is created or provisioning is manually started. When allowing automatic creation, it can take around __30 minutes__ to create the first compute resource as it is also provisioning the network.
156
159
157
160
# [Azure portal](#tab/portal)
158
161
159
162
* __Create a new hub__:
160
163
161
164
1. Sign in to the [Azure portal](https://portal.azure.com), and choose Azure AI Foundry from Create a resource menu.
162
-
1. Select **+ New Azure AI**.
165
+
1. Select __+ New Azure AI__.
163
166
1. Provide the required information on the __Basics__ tab.
164
167
1. From the __Networking__ tab, select __Private with Internet Outbound__.
165
168
1. To add an _outbound rule_, select __Add user-defined outbound rules__ from the __Networking__ tab. From the __Outbound rules__ sidebar, provide the following information:
@@ -335,14 +338,14 @@ To configure a managed virtual network that allows internet outbound communicati
335
338
## Configure a managed virtual network to allow only approved outbound
336
339
337
340
> [!TIP]
338
-
> The managed VNetis automatically provisioned when you create a compute resource. When allowing automatic creation, it can take around __30 minutes__ to create the first compute resource as it is also provisioning the network. If you configured FQDN outbound rules, the first FQDN rule adds around __10 minutes__ to the provisioning time.
341
+
> The managed virtual networkis automatically provisioned when you create a compute resource. When allowing automatic creation, it can take around __30 minutes__ to create the first compute resource as it is also provisioning the network. If you configured FQDN outbound rules, the first FQDN rule adds around __10 minutes__ to the provisioning time.
339
342
340
343
# [Azure portal](#tab/portal)
341
344
342
345
* __Create a new hub__:
343
346
344
347
1. Sign in to the [Azure portal](https://portal.azure.com), and choose Azure AI Foundry from Create a resource menu.
345
-
1. Select **+ New Azure AI**.
348
+
1. Select __+ New Azure AI__.
346
349
1. Provide the required information on the __Basics__ tab.
347
350
1. From the __Networking__ tab, select __Private with Approved Outbound__.
348
351
@@ -627,7 +630,7 @@ To reduce the wait time and avoid potential timeout errors, we recommend manuall
627
630
Alternatively, you can use the `provision_network_now` flag to provision the managed network as part of hub creation. This flag isin preview.
628
631
629
632
> [!NOTE]
630
-
> To create an online deployment, you must manually provision the managed network, or create a compute instance first which will automatically provision it.
633
+
> To create an online deployment, you must manually provision the managed network, or create a compute instance first. Creating a compute instance automatically provision it.
631
634
632
635
# [Azure portal](#tab/portal)
633
636
@@ -647,7 +650,7 @@ The following example shows how to provision a managed virtual network.
647
650
az ml workspace provision-network -g my_resource_group -n my_ai_hub_name
648
651
```
649
652
650
-
To verify that the provisioning has completed, use the following command:
653
+
To verify that the provisioning completed, use the following command:
651
654
652
655
```azurecli
653
656
az ml workspace show -n my_ai_hub_name -g my_resource_group --query managed_network
To verify that the AIHub has been provisioned, use `ml_client.workspaces.get()` to get the AI Hub information. The `managed_network`property contains the status of the managed network.
676
+
To verify the AIprovisioning, use `ml_client.workspaces.get()` to get the AI Hub information. The `managed_network`property contains the status of the managed network.
674
677
675
678
```python
676
679
ws= ml_client.workspaces.get()
@@ -764,7 +767,7 @@ __Inbound__ service tag rules:
764
767
To allow installation of __Python packages for training and deployment__, add outbound _FQDN_ rules to allow traffic to the following host names:
765
768
766
769
> [!NOTE]
767
-
> This isnot a complete list of the hosts required forall Python resources on the internet, only the most commonly used. For example, if you need access to a GitHub repository or other host, you must identify and add the required hosts for that scenario.
770
+
> This isn't a complete list of the hosts required for all Python resources on the internet, only the most commonly used. For example, if you need access to a GitHub repository or other host, you must identify and add the required hosts for that scenario.
768
771
769
772
| __Host name__ | __Purpose__ |
770
773
|----|----|
@@ -782,7 +785,7 @@ Visual Studio Code relies on specific hosts and ports to establish a remote conn
782
785
The hosts in this section are used to install Visual Studio Code packages to establish a remote connection between Visual Studio Code and the compute instances for your project.
783
786
784
787
> [!NOTE]
785
-
> This isnot a complete list of the hosts required forall Visual Studio Code resources on the internet, only the most commonly used. For example, if you need access to a GitHub repository or other host, you must identify and add the required hosts for that scenario. For a complete list of host names, see [Network Connections in Visual Studio Code](https://code.visualstudio.com/docs/setup/network).
788
+
> This isn't a complete list of the hosts required for all Visual Studio Code resources on the internet, only the most commonly used. For example, if you need access to a GitHub repository or other host, you must identify and add the required hosts for that scenario. For a complete list of host names, see [Network Connections in Visual Studio Code](https://code.visualstudio.com/docs/setup/network).
786
789
787
790
| __Host name__ | __Purpose__ |
788
791
|----|----|
@@ -850,7 +853,7 @@ When you create a private endpoint for hub dependency resources, such as Azure S
850
853
A private endpoint is automatically created for a connection if the target resource is an Azure resource listed previously. A valid target IDis expected for the private endpoint. A valid target IDfor the connection can be the Azure Resource Manager ID of a parent resource. The target IDis also expected in the target of the connection orin`metadata.resourceid`. For more on connections, see [How to add a new connection in Azure AI Foundry portal](connections-add.md).
851
854
852
855
> [!IMPORTANT]
853
-
> As of March 31st2025, the Azure AI Enterprise Network Connection Approver role must be assigned to the Azure AI Foundry hub's managed identity to approve private endpoints to securely access your Azure resources from the managed virtual network. This does not impact existing resources with approved private endpoints as the role is correctly assigned by the service. For new resources, please ensure the role is assigned to the hub's managed identity. For Azure Data Factory, Azure Databricks, and Azure Function Apps, the Contributor role should instead be assigned to your hub's managed identity. This role assignment is applicable to both User-assigned identity and System-assigned identity workspaces.
856
+
> As of March 31st2025, the Azure AI Enterprise Network Connection Approver role must be assigned to the Azure AI Foundry hub's managed identity to approve private endpoints to securely access your Azure resources from the managed virtual network. This doesn't impact existing resources with approved private endpoints as the role is correctly assigned by the service. For new resources, please ensure the role is assigned to the hub's managed identity. For Azure Data Factory, Azure Databricks, and Azure Function Apps, the Contributor role should instead be assigned to your hub's managed identity. This role assignment is applicable to both User-assigned identity and System-assigned identity workspaces.
854
857
855
858
## Select an Azure Firewall version for allowed only approved outbound (Preview)
856
859
@@ -902,7 +905,7 @@ The hub managed virtual network feature is free. However, you're charged for the
902
905
*FQDN outbound rules -FQDN outbound rules are implemented using Azure Firewall. If you use outbound FQDN rules, charges for Azure Firewall are included in your billing. A standard version of Azure Firewall is used by default. For information on selecting the basic version, see [Select an Azure Firewall version](#select-an-azure-firewall-version-for-allowed-only-approved-outbound-preview). Azure Firewall is provisioned per hub.
903
906
904
907
> [!IMPORTANT]
905
-
> The firewall isn't created until you add an outbound FQDN rule. If you don't use FQDN rules, you will not be charged for Azure Firewall. For more information on pricing, see [Azure Firewall pricing](https://azure.microsoft.com/pricing/details/azure-firewall/).
908
+
> The firewall isn't created until you add an outbound FQDN rule. If you don't use FQDN rules, you won't be charged for Azure Firewall. For more information on pricing, see [Azure Firewall pricing](https://azure.microsoft.com/pricing/details/azure-firewall/).
0 commit comments