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
Copy file name to clipboardExpand all lines: articles/search/search-how-to-create-search-index.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ ms.author: heidist
8
8
ms.service: azure-ai-search
9
9
ms.update-cycle: 180-days
10
10
ms.topic: how-to
11
-
ms.date: 05/19/2025
11
+
ms.date: 08/07/2025
12
12
---
13
13
14
14
# Create an index in Azure AI Search
@@ -53,7 +53,7 @@ Use this checklist to assist the design decisions for your search index.
53
53
54
54
1. Review [supported data types](/rest/api/searchservice/supported-data-types). The data type affects how the field is used. For example, numeric content is filterable but not full text searchable. The most common data type is `Edm.String` for searchable text, which is tokenized and queried using the full text search engine. The most common data type for a vector field is `Edm.Single` but you can use other types as well.
55
55
56
-
1. Provide a description of the index (preview), 4,000 character maximum. This human-readable text is invaluable when a system must access several indexes and make a decision based on the description. Consider a Model Context Protocol (MCP) server that must pick the correct index at run time. The decision can be based on the description rather than on index name alone. An index Description field is available in the [2025-05-01-preview REST API](/rest/api/searchservice/indexes/create-or-update?view=rest-searchservice-2025-05-01-preview&preserve-view=true), the Azure portal, or a prerelease package of an Azure SDK that provides the feature. For more information, see [Add an index description](search-howto-reindex.md#add-an-index-description-preview).
56
+
1. Provide a description of the index (preview), 4,000 character maximum. This human-readable text is invaluable when a system must access several indexes and make a decision based on the description. Consider a Model Context Protocol (MCP) server that must pick the correct index at run time. The decision can be based on the description rather than on index name alone. An index Description field is available in the [2025-05-01-preview REST API](/rest/api/searchservice/indexes/create-or-update?view=rest-searchservice-2025-05-01-preview&preserve-view=true), the Azure portal, or a preview package of an Azure SDK that provides the feature. For more information, see [Add an index description](search-howto-reindex.md#add-an-index-description-preview).
57
57
58
58
1. Identify a [document key](#document-keys). A document key is an index requirement. It's a single string field populated from a source data field that contains unique values. For example, if you're indexing from Blob Storage, the metadata storage path is often used as the document key because it uniquely identifies each blob in the container.
59
59
@@ -277,12 +277,12 @@ To minimize churn in the design process, the following table describes which ele
277
277
| Field attribute (retrievable) | Yes |
278
278
| Stored (applies to vectors) | No |
279
279
| [Analyzer](search-analyzers.md) | You can add and modify custom analyzers in the index. Regarding analyzer assignments on string fields, you can only modify `searchAnalyzer`. All other assignments and modifications require a rebuild. |
Copy file name to clipboardExpand all lines: articles/search/search-howto-managed-identities-cosmos-db.md
+7-7Lines changed: 7 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ author: arv100kri
6
6
ms.author: arjagann
7
7
ms.service: azure-ai-search
8
8
ms.topic: how-to
9
-
ms.date: 01/06/2025
9
+
ms.date: 08/07/2025
10
10
ms.custom:
11
11
- subject-rbac-steps
12
12
- ignite-2023
@@ -31,7 +31,7 @@ Azure AI Search supports two mechanisms to connect to Azure Cosmos DB using mana
31
31
32
32
* The _modern_ approach requires configuring the managed identity appropriate roles on the control and data plane of the target Azure Cosmos DB account. Azure AI Search will then request an access token to access the data in the Cosmos DB account. This approach works even if the Cosmos DB account has `"disableLocalAuth": true`.
33
33
34
-
Indexers that connect to Azure Cosmos DB for NoSQL support both the _legacy_ and the _modern_ approach - the _modern_ approach is highly recommended.
34
+
Indexers that connect to Azure Cosmos DB for NoSQL support both the _legacy_ and the _modern_ approach - the _modern_ approach is recommended.
35
35
36
36
## Limitations
37
37
@@ -104,7 +104,7 @@ When you're connecting with a system-assigned managed identity, the only change
104
104
Here's an example using the [Create Data Source](/rest/api/searchservice/data-sources/create) REST API that exercises the _modern_ approach.
105
105
106
106
```http
107
-
POST https://[service name].search.windows.net/datasources?api-version=2024-11-01-preview
107
+
POST https://[service name].search.windows.net/datasources?api-version=2024-07-01
108
108
{
109
109
"name": "my-cosmosdb-ds",
110
110
"type": "cosmosdb",
@@ -118,14 +118,14 @@ POST https://[service name].search.windows.net/datasources?api-version=2024-11-0
118
118
>[!NOTE]
119
119
> If the `IdentityAuthType` property isn't part of the connection string, then Azure AI Search defaults to the _legacy_ approach to ensure backward compatibility.
120
120
121
-
#### Connect through user-assigned identity
121
+
#### Connect through user-assigned identity (preview)
122
122
123
123
You need to add an "identity" property to the data source definition, where you specify the specific identity (out of several that can be assigned to the search service), that will be used to connect to the Azure Cosmos DB account.
124
124
125
125
Here's an example using user-assigned identity via the _modern_ approach.
126
126
127
127
```http
128
-
POST https://[service name].search.windows.net/datasources?api-version=2024-11-01-preview
128
+
POST https://[service name].search.windows.net/datasources?api-version=2025-05-01-preview
129
129
{
130
130
"name": "[my-cosmosdb-ds]",
131
131
"type": "cosmosdb",
@@ -157,7 +157,7 @@ Follow the same steps as before to assign the appropriate roles on the control p
157
157
Here's an example to connect to MongoDB collections using system-assigned identity via the REST API
158
158
159
159
```http
160
-
POST https://[service name].search.windows.net/datasources?api-version=2024-11-01-preview
160
+
POST https://[service name].search.windows.net/datasources?api-version=2025-05-01-preview
161
161
{
162
162
"name": "my-cosmosdb-ds",
163
163
"type": "cosmosdb",
@@ -172,7 +172,7 @@ POST https://[service name].search.windows.net/datasources?api-version=2024-11-0
172
172
Here's an example to connect to Gremlin graphs using user-assigned identity.
173
173
174
174
```http
175
-
POST https://[service name].search.windows.net/datasources?api-version=2024-11-01-preview
175
+
POST https://[service name].search.windows.net/datasources?api-version=2025-05-01-preview
Copy file name to clipboardExpand all lines: articles/search/search-howto-managed-identities-data-sources.md
+16-9Lines changed: 16 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ author: HeidiSteen
7
7
ms.author: heidist
8
8
ms.service: azure-ai-search
9
9
ms.topic: how-to
10
-
ms.date: 07/31/2025
10
+
ms.date: 08/07/2025
11
11
ms.custom:
12
12
- ignite-2023
13
13
- build-2024
@@ -32,9 +32,9 @@ Azure AI Search can connect to other Azure resources under its system-assigned m
32
32
33
33
+ Search service configuration of a managed identity, whether system-assigned or user-assigned, is generally available.
34
34
35
-
+ Data plane usage of a managed identity, whether system-assigned or user-assigned, is generally available. For example, if you want a user-assigned managed identity on an indexer data source connection, key vault, debug session, or enrichment cache, you can use a generally available REST API version to create the connection, assuming the feature you're using is also generally available.
35
+
+ Data plane usage of a managed identity, whether system-assigned or user-assigned, is generally available for role assignments.
36
36
37
-
A system managed identity is indicated when a connection string is the unique resource ID of a Microsoft Entra ID-aware service or application. A user-assigned managed identityis specified through an "identity" property.
37
+
+ Data plane connections via indexer data sources, such as to Azure Storage or Cosmos DB, can use either a system-assigned or user-assigned managed identity, but only system-assigned is generally available. A user identity is defined using the [SearchIndexerDataUserAssignedIdentity](/rest/api/searchservice/data-sources/create-or-update?view=rest-searchservice-2025-05-01-preview&preserve-view=true#searchindexerdatauserassignedidentity) API, which is currently in preview.
38
38
39
39
A search service uses Azure Storage as an indexer data source and as a data sink for debug sessions, enrichment caching, and knowledge store. For search features that write back to storage, the managed identity needs a contributor role assignment as described in the ["Assign a role"](#assign-a-role) section.
40
40
@@ -129,15 +129,17 @@ A user-assigned managed identity is an Azure resource that can be scoped to subs
129
129
130
130
The steps are as follows:
131
131
132
-
1. In your Azure subscription, create a user-assigned managed identity.
132
+
+ In your Azure subscription, create a user-assigned managed identity.
133
133
134
-
1. On your search service, update the service definition to enable the user-assigned managed identity.
134
+
+ On your search service, update the service definition to enable the user-assigned managed identity.
135
135
136
-
1. On other Azure services you want to connect to, create a role assignment for the identity.
136
+
+ On other Azure services you want to connect to, create a role assignment for the identity.
137
137
138
-
1. In data source connections on Azure AI Search, such as an indexer data source, reference the user-managed identity in the connection details. This step is generally available if support for the feature is generally available.
138
+
Associating a user-assigned managed identity with an Azure AI Search service is supported in the Azure portal, Search Management REST APIs, and SDK packages that provide the feature.
139
139
140
-
Associating a user-assigned managed identity is supported in the Azure portal, Search Management REST APIs, and SDK packages that provide the feature.
140
+
> [!NOTE]
141
+
> User-assigned managed identities can also be used in indexer data source connection strings. Currently, only the newer preview REST APIs and preview packages support a user-assigned managed identity in a data source connection string. Be sure to switch to a preview version if you call the
@@ -224,9 +226,14 @@ The following steps illustrate the role assignment workflow. This example is for
224
226
225
227
## Connection string examples
226
228
229
+
A system managed identity is indicated when a connection string is the unique resource ID of a Microsoft Entra ID-aware service or application. A user-assigned managed identity is specified through an "identity" property.
230
+
227
231
Once a managed identity is defined for the search service and given a role assignment, outbound connections can be modified to use the unique resource ID of the other Azure resource. Here are some examples of connection strings for various scenarios.
228
232
229
-
You can use generally available REST API versions and Azure SDK packages for these connections.
233
+
You can use generally available REST API versions and Azure SDK packages for connections using a system-assigned managed identity.
234
+
235
+
User-assigned managed identities can also be used in indexer data source connection strings. Currently, only the newer preview REST APIs and preview packages support a user-assigned managed identity in a data source connection string. Be sure to switch to a preview version if you call the
> You can create most of these objects in the Azure portal, specifying either a system or user-assigned managed identity, and then view the JSON definition to get the connection string.
Copy file name to clipboardExpand all lines: articles/search/search-security-manage-encryption-keys.md
+7-1Lines changed: 7 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,7 +18,11 @@ ms.custom:
18
18
19
19
Azure AI Search automatically encrypts data at rest with [Microsoft-managed keys](/azure/security/fundamentals/encryption-atrest#azure-encryption-at-rest-components). If you need another layer of encryption or the ability to revoke keys and shut down access to content, you can use keys that you create and manage in Azure Key Vault. This article explains how to set up customer-managed key (CMK) encryption.
20
20
21
-
You can store keys using either Azure Key Vault or Azure Key Vault Managed HSM (Hardware Security Module). An Azure Key Vault Managed HSM is an FIPS 140-2 Level 3 validated HSM. HSM support is new in Azure AI Search. To migrate to HSM, [rotate your keys](#rotate-or-update-encryption-keys) and choose Managed HSM for storage.
21
+
You can store keys using either:
22
+
23
+
+ Azure Key Vault
24
+
25
+
+ Azure Key Vault Managed HSM (Hardware Security Module). An Azure Key Vault Managed HSM is an FIPS 140-2 Level 3 validated HSM. HSM support is new in Azure AI Search. To migrate from Azure Key Vault to HSM, [rotate your keys](#rotate-or-update-encryption-keys) and choose Managed HSM for storage.
22
26
23
27
> [!IMPORTANT]
24
28
> CMK encryption is irreversible. You can rotate keys and change CMK configuration, but index encryption lasts for the lifetime of the index. Post-CMK encryption, an index is only accessible if the search service has access to the key. If you revoke access to the key by deleting or changing role assignment, the index is unusable and the service can't be scaled until the index is deleted or access to the key is restored. If you delete or rotate keys, the most recent key is cached for up to 60 minutes.
@@ -37,6 +41,8 @@ Encryption is performed over the following content:
37
41
38
42
If you require CMK across your search service, [set an enforcement policy](#set-up-a-policy-to-enforce-cmk-compliance).
39
43
44
+
Although you can't add encryption to an existing object, once an object is configured for encryption, you can change all parts of its encryption definition, including switching to a different key vault or HMS storage as long as the resource is in the same tenant.
45
+
40
46
## Prerequisites
41
47
42
48
+[Azure AI Search](search-create-service-portal.md) on a [billable tier](search-sku-tier.md#tier-descriptions) (Basic or higher, in any region).
Copy file name to clipboardExpand all lines: articles/search/tutorial-document-layout-image-verbalization.md
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -73,7 +73,7 @@ The following instructions apply to Azure Storage which provides the sample data
73
73
}
74
74
```
75
75
76
-
1. For connections made using a user-assigned managed identity, get a connection string that contains a ResourceId, with no account key or password. The ResourceId must include the subscription ID of the storage account, the resource group of the storage account, and the storage account name. Provide an identity using the syntax shown in the following example. Set userAssignedIdentity to the user-assigned managed identity. The connection string is similar to the following example:
76
+
1. For connections made using a user-assigned managed identity, get a connection string that contains a ResourceId, with no account key or password. The ResourceId must include the subscription ID of the storage account, the resource group of the storage account, and the storage account name. Provide an identity using the syntax shown in the following example. Set userAssignedIdentity to the user-assigned managed identity The connection string is similar to the following example:
77
77
78
78
```json
79
79
"credentials" : {
@@ -131,6 +131,7 @@ For authenticated connections that occur during indexer and skillset processing,
Copy file name to clipboardExpand all lines: articles/search/whats-new.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ description: Announcements of new and enhanced features, including a service ren
4
4
author: HeidiSteen
5
5
ms.author: heidist
6
6
manager: nitinme
7
-
ms.date: 08/01/2025
7
+
ms.date: 08/07/2025
8
8
ms.service: azure-ai-search
9
9
ms.topic: overview
10
10
ms.custom:
@@ -27,7 +27,7 @@ Learn about the latest updates to Azure AI Search functionality, docs, and sampl
27
27
|[Search Management 2025-05-01](/rest/api/searchmanagement/operation-groups?view=rest-searchmanagement-2025-05-01&preserve-view=true)| REST | Stable release of the REST APIs for the control plane operations described in this table. For migration guidance, see [Upgrade to the latest REST API in Azure AI Search](search-api-migration.md). |
28
28
|[Service upgrade](search-how-to-upgrade.md)| Service | Now generally available through [Upgrade Service (REST API)](/rest/api/searchmanagement/services/upgrade?view=rest-searchmanagement-2025-05-01&preserve-view=true) and the Azure portal. |
29
29
|[Pricing tier change](search-capacity-planning.md#change-your-pricing-tier)| Service | Now generally available through the `sku` property in [Update Service (REST API)](/rest/api/searchmanagement/services/update?view=rest-searchmanagement-2025-05-01&preserve-view=true) and the Azure portal. |
30
-
|[User-assigned managed identity](search-howto-managed-identities-data-sources.md)| Security | Now generally available through the `identity` property in [Update Service (REST API)](/rest/api/searchmanagement/services/update?view=rest-searchmanagement-2025-05-01&preserve-view=true)and the Azure portal. |
30
+
|[User-assigned managed identity](search-howto-managed-identities-data-sources.md)| Security | Now generally available through the `identity` property that associates a user-assigned managed identity to a search service. User-assigned managed identities can be used for search service authentication in Azure-to-Azure connections. Configure the association using the [Update Service (REST API)](/rest/api/searchmanagement/services/update?view=rest-searchmanagement-2025-05-01&preserve-view=true)or the Azure portal. |
0 commit comments