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
In this article, learn about the network communication requirements when securing Azure Machine Learning workspace in a virtual network (VNet). This includes how to configure Azure Firewall to control access to your Azure Machine Learning workspace and the public internet. To learn more about securing Azure Machine Learning, see [Enterprise security for Azure Machine Learning](concept-enterprise-security.md).
18
+
In this article, learn about the network communication requirements when securing Azure Machine Learning workspace in a virtual network (VNet). Including how to configure Azure Firewall to control access to your Azure Machine Learning workspace and the public internet. To learn more about securing Azure Machine Learning, see [Enterprise security for Azure Machine Learning](concept-enterprise-security.md).
19
19
20
20
> [!NOTE]
21
21
> The information in this article applies to Azure Machine Learning workspace configured with a private endpoint.
@@ -30,6 +30,18 @@ In this article, learn about the network communication requirements when securin
30
30
> *[Enable studio functionality](how-to-enable-studio-virtual-network.md)
31
31
> *[Use custom DNS](how-to-custom-dns.md)
32
32
33
+
## Well-known ports
34
+
35
+
The following are well-known ports used by services listed in this article. If a port range is used in this article and is not listed in this section, it is specific to the service and may not have published information on what it is used for:
36
+
37
+
38
+
| Port | Description |
39
+
| ----- | ----- |
40
+
| 80 | Unsecured web traffic (HTTP) |
41
+
| 443 | Secured web traffic (HTTPS) |
42
+
| 445 | SMB traffic used to access file shares in Azure File storage |
43
+
| 8787 | Used when connecting to RStudio on a compute instance |
@@ -57,7 +69,7 @@ These rule collections are described in more detail in [What are some Azure Fire
57
69
58
70
| Service tag | Protocol | Port |
59
71
| ----- |:-----:|:-----:|
60
-
| AzureActiveDirectory | TCP |*|
72
+
| AzureActiveDirectory | TCP |80, 443|
61
73
| AzureMachineLearning | TCP | 443 |
62
74
| AzureResourceManager | TCP | 443 |
63
75
| Storage.region | TCP | 443 |
@@ -67,7 +79,7 @@ These rule collections are described in more detail in [What are some Azure Fire
67
79
| Keyvault.region | TCP | 443 |
68
80
69
81
> [!TIP]
70
-
> * ContainerRegistry.region is only needed for custom Docker images. This includes small modifications (such as additional packages) to base images provided by Microsoft.
82
+
> * ContainerRegistry.region is only needed for custom Docker images. Including small modifications (such as additional packages) to base images provided by Microsoft.
71
83
> * MicrosoftContainerRegistry.region is only needed if you plan on using the _default Docker images provided by Microsoft_, and _enabling user-managed dependencies_.
72
84
> * Keyvault.region is only needed if your workspace was created with the [hbi_workspace](/python/api/azureml-core/azureml.core.workspace%28class%29#create-name--auth-none--subscription-id-none--resource-group-none--location-none--create-resource-group-true--sku--basic---friendly-name-none--storage-account-none--key-vault-none--app-insights-none--container-registry-none--cmk-keyvault-none--resource-cmk-uri-none--hbi-workspace-false--default-cpu-compute-target-none--default-gpu-compute-target-none--exist-ok-false--show-output-true-) flag enabled.
73
85
> * For entries that contain `region`, replace with the Azure region that you're using. For example, `ContainerRegistry.westus`.
@@ -117,52 +129,143 @@ If not configured correctly, the firewall can cause problems using your workspac
117
129
118
130
The hosts in the following tables are owned by Microsoft, and provide services required for the proper functioning of your workspace. The tables list hosts for the Azure public, Azure Government, and Azure China 21Vianet regions.
119
131
132
+
> [!IMPORTANT]
133
+
> Azure Machine Learning uses Azure Storage Accounts in your subscription and in Microsoft-managed subscriptions. Where applicable, the following terms are used to differentiate between them in this section:
134
+
>
135
+
> *__Your storage__: The Azure Storage Account(s) in your subscription, which is used to store your data and artifacts such as models, training data, training logs, and Python scripts.>
136
+
> *__Microsoft storage__: The Azure Machine Learning compute instance and compute clusters rely on Azure Batch, and must access storage located in a Microsoft subscription. This storage is used only for the management of the compute instances. None of your data is stored here.
137
+
120
138
**General Azure hosts**
121
139
122
-
|**Required for**|**Azure public**|**Azure Government**|**Azure China 21Vianet**|
> * The host for __Azure Key Vault__ is only needed if your workspace was created with the [hbi_workspace](/python/api/azureml-core/azureml.core.workspace%28class%29#create-name--auth-none--subscription-id-none--resource-group-none--location-none--create-resource-group-true--sku--basic---friendly-name-none--storage-account-none--key-vault-none--app-insights-none--container-registry-none--cmk-keyvault-none--resource-cmk-uri-none--hbi-workspace-false--default-cpu-compute-target-none--default-gpu-compute-target-none--exist-ok-false--show-output-true-) flag enabled.
216
+
> * Ports 8787 and 18881 for __compute instance__ are only needed when your Azure Machine workspace has a private endpoint.
217
+
> * In the following table, replace `<storage>` with the name of the default storage account for your Azure Machine Learning workspace.
153
218
154
-
> [!IMPORTANT]
155
-
> Your firewall must allow communication with \*.instances.azureml.ms over __TCP__ ports __18881, 443, and 8787__.
219
+
# [Azure public](#tab/public)
156
220
157
-
> [!TIP]
158
-
> The FQDN for Azure Key Vault is only needed if your workspace was created with the [hbi_workspace](/python/api/azureml-core/azureml.core.workspace%28class%29#create-name--auth-none--subscription-id-none--resource-group-none--location-none--create-resource-group-true--sku--basic---friendly-name-none--storage-account-none--key-vault-none--app-insights-none--container-registry-none--cmk-keyvault-none--resource-cmk-uri-none--hbi-workspace-false--default-cpu-compute-target-none--default-gpu-compute-target-none--exist-ok-false--show-output-true-) flag enabled.
> *__Azure Container Registry__ is required for any custom Docker image. This includes small modifications (such as additional packages) to base images provided by Microsoft.
@@ -233,7 +336,7 @@ Enable outbound access to the following endpoints when deploying the Azure Machi
233
336
| quay.io, *.quay.io | https:443 | Quay.io registry, required to pull container images for AML extension components |
234
337
| gcr.io| https:443 | Google cloud repository, required to pull container images for AML extension components |
235
338
| storage.googleapis.com | https:443 | Google cloud storage, gcr images are hosted on |
236
-
| registry-1.docker.io, production.cloudflare.docker.com | https:443 | Docker hub registry,required to pull container images for AML extension components |
339
+
| registry-1.docker.io, production.cloudflare.docker.com | https:443 | Docker hub registry,required to pull container images for AML extension components |
|*.kusto.windows.net, *.table.core.windows.net, *.queue.core.windows.net | https:443 | Required to upload and analyze system logs in Kusto |
239
342
@@ -254,7 +357,7 @@ In addition to the endpoints for training workloads, enable outbound access for
254
357
|--|--|--|
255
358
|*.azurecr.io | https:443 | Azure container registry, required to pull container images to host training or inference jobs|
256
359
|*.blob.core.windows.net | https:443 | Azure blob storage, required to fetch machine learning project scripts, container images and job logs/metrics |
257
-
|*.workspace.\<region\>.api.azureml.ms , \<region\>.experiments.azureml.net, \<region\>.api.azureml.ms | https:443 | Azure mahince learning service api, required to communicate with AML |
360
+
|*.workspace.\<region\>.api.azureml.ms , \<region\>.experiments.azureml.net, \<region\>.api.azureml.ms | https:443 | Azure machine learning service api, required to communicate with AML |
| Outbound | 443 | AzureResourceManager | Creation of Azure resources with Azure Machine Learning. |
22
22
| Outbound | 443 | Storage.region | Access data stored in the Azure Storage Account for the Azure Batch service. |
@@ -43,8 +43,8 @@ You may also need to allow __outbound__ traffic to Visual Studio Code and non-Mi
43
43
|**cloud.r-project.org**| Used when installing CRAN packages for R development. |
44
44
|**\*pytorch.org**| Used by some examples based on PyTorch. |
45
45
|**\*.tensorflow.org**| Used by some examples based on Tensorflow. |
46
-
|**update.code.visualstudio.com**</br></br>**\*.vo.msecnd.net**| Used to retrieve VS Code server bits which are installed on the compute instance through a setup script.|
47
-
|**raw.githubusercontent.com/microsoft/vscode-tools-for-ai/master/azureml_remote_websocket_server/\***| Used to retrieve websocket server bits which are installed on the compute instance. The websocket server is used to transmit requests from Visual Studio Code client (desktop application) to Visual Studio Code server running on the compute instance.|
46
+
|**update.code.visualstudio.com**</br></br>**\*.vo.msecnd.net**| Used to retrieve VS Code server bits, which are installed on the compute instance through a setup script.|
47
+
|**raw.githubusercontent.com/microsoft/vscode-tools-for-ai/master/azureml_remote_websocket_server/\***| Used to retrieve websocket server bits, which are installed on the compute instance. The websocket server is used to transmit requests from Visual Studio Code client (desktop application) to Visual Studio Code server running on the compute instance.|
48
48
49
49
When using Azure Kubernetes Service (AKS) with Azure Machine Learning, allow the following traffic to the AKS VNet:
0 commit comments