Skip to content

Commit 49827f9

Browse files
committed
security overview outbound traffic clean up
1 parent e266e7f commit 49827f9

File tree

1 file changed

+23
-14
lines changed

1 file changed

+23
-14
lines changed

articles/search/search-security-overview.md

Lines changed: 23 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ ms.service: cognitive-search
1010
ms.custom:
1111
- ignite-2023
1212
ms.topic: conceptual
13-
ms.date: 11/10/2023
13+
ms.date: 03/25/2024
1414
---
1515

1616
# Security overview for Azure AI Search
@@ -29,32 +29,41 @@ Azure AI Search has three basic network traffic patterns:
2929

3030
### Inbound traffic
3131

32-
Inbound requests that target a search service endpoint can be characterized as:
32+
Inbound requests that target a search service endpoint include:
3333

34-
+ Create or manage indexes, indexers, data sources, skillsets, and synonym maps
34+
+ Create or manage objects on the search service (indexes, indexers, data sources, skillsets, synonym maps)
3535
+ Trigger indexer or skillset execution
36-
+ Load or query an index
36+
+ Load an index
37+
+ Query an index
3738

3839
You can review the [REST APIs](/rest/api/searchservice/) to understand the full range of inbound requests that are handled by a search service.
3940

40-
At a minimum, all inbound requests must be authenticated:
41+
At a minimum, all inbound requests must be authenticated using either of these options:
4142

42-
+ Key-based authentication is the default. Inbound requests that include a valid API key are accepted by the search service as originating from a trusted party.
43-
+ Microsoft Entra ID and role-based access control are also widely used for data plane operations.
43+
+ Key-based authentication (default). Inbound requests provide a valid API key.
44+
+ Role-based access control. Microsoft Entra identities and role assignments authorize access.
4445

4546
Additionally, you can add [network security features](#service-access-and-authentication) to further restrict access to the endpoint. You can create either inbound rules in an IP firewall, or create private endpoints that fully shield your search service from the public internet.
4647

4748
### Outbound traffic
4849

4950
Outbound requests from a search service to other applications are typically made by indexers for text-based indexing, skills-based AI enrichment, and vectorization. Outbound requests include both read and write operations.
5051

51-
The following list is a full enumeration of the outbound requests that can be made by a search service. A search service makes requests on its own behalf, and on the behalf of an indexer or custom skill:
52+
The following list is a full enumeration of the outbound requests that can be made by a search service. A search service makes requests on its own behalf, and on the behalf of an indexer or custom skill.
5253

53-
+ Indexers [read from external data sources](search-indexer-securing-resources.md).
54+
| Operation | Scenario |
55+
| ----------| -------- |
56+
| Indexers | Connect to external data sources to retrieve data. For more information, see [Indexer access to content protected by Azure network security](search-indexer-securing-resources.md). |
57+
| Indexers | Connect to Azure Storage to persist [knowledge stores](knowledge-store-concept-intro.md), [cached enrichments](cognitive-search-incremental-indexing-conceptual.md), [debug sessions](cognitive-search-debug-session.md). |
58+
| Custom skills | Connect to Azure functions, Azure web apps, or other apps running external code that's hosted off-service. The request for external processing is sent during skillset execution. |
59+
| Indexers and [integrated vectorization](vector-search-integrated-vectorization.md) | Connect to Azure OpenAI and a deployed embedding model, or it goes through a custom skill to connect to an embedding model that you provide. The search service sends text to embedding models for vectorization during indexing or query execution. |
60+
| Search service | Connect to Azure Key Vault for customer-managed keys, used to encrypt and decrypt sensitive data. |
61+
62+
<!-- + Indexers connect to external data sources. For more information, see [Indexer access to content protected by Azure network security](search-indexer-securing-resources.md).
5463
+ Indexers write to Azure Storage when creating knowledge stores, persisting cached enrichments, and persisting debug sessions.
55-
+ If you're using custom skills, custom skills connect to an external Azure function or app to run external code that's hosted off-service. The request for external processing is sent during skillset execution.
56-
+ If you're using [integrated vectorization](vector-search-integrated-vectorization.md), the search service connects to Azure OpenAI and a deployed embedding model, or it goes through a custom skill to connect to an embedding model that you provide. The search service sends text to embedding models for vectorization during indexing or query execution.
57-
+ If you're using customer-managed keys, the service connects to an external Azure Key Vault for a customer-managed key used to encrypt and decrypt sensitive data.
64+
+ Custom skills connect to an external Azure function or app to run external code that's hosted off-service. The request for external processing is sent during skillset execution.
65+
+ During [integrated vectorization](vector-search-integrated-vectorization.md), the search service connects to Azure OpenAI and a deployed embedding model, or it goes through a custom skill to connect to an embedding model that you provide. The search service sends text to embedding models for vectorization during indexing or query execution.
66+
+ Search services connect to Azure Key Vault for customer-managed keys, used to encrypt and decrypt sensitive data. -->
5867

5968
Outbound connections can be made using a resource's full access connection string that includes a key or a database login, or [a managed identity](search-howto-managed-identities-data-sources.md) if you're using Microsoft Entra ID and role-based access.
6069

@@ -123,7 +132,7 @@ Azure AI Search provides authorization models for service management and content
123132

124133
### Authorize service management
125134

126-
Resource management is authorized through [Azure role-based access control (Azure RBAC)](../role-based-access-control/overview.md). Azure RBAC is the authorization system for [Azure Resource Manager](../azure-resource-manager/management/overview.md).
135+
Resource management is authorized through [role-based access control](../role-based-access-control/overview.md) in your Microsoft Entra tenant.
127136

128137
In Azure AI Search, Resource Manager is used to create or delete the service, manage API keys, scale the service, and configure security. As such, Azure role assignments will determine who can perform those tasks, regardless of whether they're using the [portal](search-manage.md), [PowerShell](search-manage-powershell.md), or the [Management REST APIs](/rest/api/searchmanagement).
129138

@@ -163,7 +172,7 @@ If you require permissioned access over content in search results, there's a tec
163172

164173
When you set up a search service, you choose a location or region that determines where customer data is stored and processed. Azure AI Search won't store customer data outside of your specified region unless you configure a feature that has a dependency on another Azure resource, and that resource is provisioned in a different region.
165174

166-
Currently, the only external resource that a search service writes customer data to is Azure Storage. The storage account is one that you provide, and it could be in any region. A search service will write to Azure Storage if you use any of the following features: [enrichment cache](cognitive-search-incremental-indexing-conceptual.md), [debug session](cognitive-search-debug-session.md), [knowledge store](knowledge-store-concept-intro.md).
175+
Currently, the only external resource that a search service writes to is Azure Storage. The storage account is one that you provide, and it could be in any region. A search service will write to Azure Storage if you use any of the following features: [enrichment cache](cognitive-search-incremental-indexing-conceptual.md), [debug session](cognitive-search-debug-session.md), [knowledge store](knowledge-store-concept-intro.md).
167176

168177
### Exceptions to data residency commitments
169178

0 commit comments

Comments
 (0)