Skip to content

Commit 411dc34

Browse files
Merge pull request #1618 from Blackmist/336446-network
adding info per PM
2 parents 14b3a3a + 3e9b3f3 commit 411dc34

File tree

1 file changed

+22
-9
lines changed

1 file changed

+22
-9
lines changed

articles/ai-studio/how-to/configure-private-link.md

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ You get several hub default resources in your resource group. You need to config
2323

2424
- Disable public network access of hub default resources such as Azure Storage, Azure Key Vault, and Azure Container Registry.
2525
- Establish private endpoint connection to hub default resources. You need to have both a blob and file private endpoint for the default storage account.
26-
- [Managed identity configurations](#managed-identity-configuration) to allow hubs access to your storage account if it's private.
26+
- If your storage account is private, [assign roles](#private-storage-configuration) to allow access.
2727

2828

2929
## Prerequisites
@@ -234,15 +234,28 @@ az extension add --name ml
234234

235235
---
236236

237-
## Managed identity configuration
238237

239-
A manged identity configuration is required if you make your storage account private. Our services need to read/write data in your private storage account using [Allow Azure services on the trusted services list to access this storage account](/azure/storage/common/storage-network-security#grant-access-to-trusted-azure-services) with following managed identity configurations. Enable the system assigned managed identity of Azure AI Service and Azure AI Search, then configure role-based access control for each managed identity.
238+
## Private storage configuration
240239

241-
| Role | Managed Identity | Resource | Purpose | Reference |
242-
|--|--|--|--|--|
243-
| `Storage File Data Privileged Contributor` | Azure AI Foundry project | Storage Account | Read/Write prompt flow data. | [Prompt flow doc](/azure/machine-learning/prompt-flow/how-to-secure-prompt-flow#secure-prompt-flow-with-workspace-managed-virtual-network) |
244-
| `Storage Blob Data Contributor` | Azure AI Service | Storage Account | Read from input container, write to pre-process result to output container. | [Azure OpenAI Doc](../../ai-services/openai/how-to/managed-identity.md) |
245-
| `Storage Blob Data Contributor` | Azure AI Search | Storage Account | Read blob and write knowledge store | [Search doc](/azure/search/search-howto-managed-identities-data-sources). |
240+
If your storage account is private (uses a private endpoint to communicate with your project), you perform the following steps:
241+
242+
1. Our services need to read/write data in your private storage account using [Allow Azure services on the trusted services list to access this storage account](/azure/storage/common/storage-network-security#grant-access-to-trusted-azure-services) with following managed identity configurations. Enable the system assigned managed identity of Azure AI Service and Azure AI Search, then configure role-based access control for each managed identity.
243+
244+
| Role | Managed Identity | Resource | Purpose | Reference |
245+
|--|--|--|--|--|
246+
| `Reader` | Azure AI Foundry project | Private endpoint of the storage account | Read data from the private storage account. |
247+
| `Storage File Data Privileged Contributor` | Azure AI Foundry project | Storage Account | Read/Write prompt flow data. | [Prompt flow doc](/azure/machine-learning/prompt-flow/how-to-secure-prompt-flow#secure-prompt-flow-with-workspace-managed-virtual-network) |
248+
| `Storage Blob Data Contributor` | Azure AI Service | Storage Account | Read from input container, write to preprocess result to output container. | [Azure OpenAI Doc](../../ai-services/openai/how-to/managed-identity.md) |
249+
| `Storage Blob Data Contributor` | Azure AI Search | Storage Account | Read blob and write knowledge store | [Search doc](/azure/search/search-howto-managed-identities-data-sources). |
250+
251+
> [!TIP]
252+
> Your storage account may have multiple private endpoints. You need to assign the `Reader` role to each private endpoint.
253+
254+
1. Assign the `Storage Blob Data reader` role to your developers. This role allows them to read data from the storage account.
255+
256+
1. Verify that the project's connection to the storage account uses Microsoft Entra ID for authentication. To view the connection information, go to the __Management center__, select __Connected resources__, and then select the storage account connections. If the credential type isn't Entra ID, select the pencil icon to update the connection and set the __Authentication method__ to __Microsoft Entra ID__.
257+
258+
For information on securing playground chat, see [Securely use playground chat](secure-data-playground.md).
246259

247260
## Custom DNS configuration
248261

@@ -265,7 +278,7 @@ If you need to configure custom DNS server without DNS forwarding, use the follo
265278
> * Compute instances can be accessed only from within the virtual network.
266279
> * The IP address for this FQDN is **not** the IP of the compute instance. Instead, use the private IP address of the workspace private endpoint (the IP of the `*.api.azureml.ms` entries.)
267280
268-
* `<instance-name>.<region>.instances.azureml.ms` - Only used by the `az ml compute connect-ssh` command to connect to computers in a managed virtual network. Not needed if you are not using a managed network or SSH connections.
281+
* `<instance-name>.<region>.instances.azureml.ms` - Only used by the `az ml compute connect-ssh` command to connect to computers in a managed virtual network. Not needed if you aren't using a managed network or SSH connections.
269282

270283
* `<managed online endpoint name>.<region>.inference.ml.azure.com` - Used by managed online endpoints
271284

0 commit comments

Comments
 (0)