Skip to content

Commit 995f330

Browse files
committed
Added roles to portal-based RAG quickstarts
1 parent 75dfc09 commit 995f330

File tree

2 files changed

+69
-19
lines changed

2 files changed

+69
-19
lines changed

articles/search/search-get-started-portal-image-search.md

Lines changed: 55 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,14 @@ author: haileytap
66
ms.author: haileytapia
77
ms.service: azure-ai-search
88
ms.topic: quickstart
9-
ms.date: 05/21/2025
9+
ms.date: 05/22/2025
1010
ms.custom:
1111
- references_regions
1212
---
1313

1414
# Quickstart: Search for multimodal content in the Azure portal
1515

16-
In this quickstart, you use the **Import and vectorize data** wizard in the Azure portal to get started with [multimodal search](multimodal-search-overview.md). The wizard simplifies the process of extracting page text and inline images from documents, describing images in natural language, vectorizing both text and image descriptions, and storing images for later retrieval.
16+
In this quickstart, you use the **Import and vectorize data** wizard in the Azure portal to get started with [multimodal search](multimodal-search-overview.md). The wizard simplifies the process of extracting page text and inline images from documents, describing images in natural language, vectorizing image descriptions and text, and storing images for later retrieval.
1717

1818
The sample data consists of a multimodal PDF in the [azure-search-sample-data](https://github.com/Azure-Samples/azure-search-sample-data/tree/main/sustainable-ai-pdf) repo, but you can use different files and still follow this quickstart.
1919

@@ -23,7 +23,7 @@ The sample data consists of a multimodal PDF in the [azure-search-sample-data](h
2323

2424
+ An [Azure Storage account](/azure/storage/common/storage-account-create). Use Azure Blob Storage or Azure Data Lake Storage Gen2 (storage account with a hierarchical namespace) on a standard performance (general-purpose v2) account. Access tiers can be hot, cool, or cold.
2525

26-
+ An [Azure AI services multi-service account](/azure/ai-services/multi-service-resource#azure-ai-services-resource-for-azure-ai-search-skills) in East US, West Europe, or North Central US.
26+
+ An [Azure AI services multi-service account](/azure/ai-services/multi-service-resource#azure-ai-multi-services-resource-for-azure-ai-search-skills) in East US, West Europe, or North Central US.
2727

2828
+ An [Azure AI Search service](search-create-service-portal.md) in the same region as your Azure AI multi-service account.
2929

@@ -37,17 +37,59 @@ All of the preceding resources must have public access enabled so that the Azure
3737

3838
If private endpoints are already present and you can't disable them, the alternative is to run the respective end-to-end flow from a script or program on a virtual machine. The virtual machine must be on the same virtual network as the private endpoint. [Here's a Python code sample](https://github.com/Azure/azure-search-vector-samples/tree/main/demo-python/code/integrated-vectorization) for integrated vectorization. The same [GitHub repo](https://github.com/Azure/azure-search-vector-samples/tree/main) has samples in other programming languages.
3939

40-
### Role-based access
40+
### Check for space
4141

42-
A free search service supports role-based access control on connections to Azure AI Search, but it doesn't support managed identities on outbound connections to Azure Storage or Azure AI Vision. This level of support means you must use key-based authentication on connections between a free search service and other Azure services. For more secure connections:
42+
If you're starting with the free service, you're limited to three indexes, three data sources, three skillsets, and three indexers. Make sure you have room for extra items before you begin. This quickstart creates one of each object.
4343

44-
+ Use the Basic tier or higher.
44+
## Configure access
4545

46-
+ [Configure a system-assigned managed identity](search-howto-managed-identities-data-sources.md#create-a-system-managed-identity) and role assignments to admit requests from Azure AI Search on other Azure services.
46+
Before you begin, make sure you have permissions to access content and operations. We recommend Microsoft Entra ID authentication and role-based access for authorization. You must be an **Owner** or **User Access Administrator** to assign roles. If roles aren't feasible, you can use [key-based authentication](search-security-api-keys.md) instead.
4747

48-
### Check for space
48+
Configure access to each resource identified in this section.
4949

50-
If you're starting with the free service, you're limited to three indexes, three data sources, three skillsets, and three indexers. Make sure you have room for extra items before you begin. This quickstart creates one of each object.
50+
### [**Azure AI Search**](#tab/search-perms)
51+
52+
Azure AI Search provides the multimodal pipeline. Configure access for yourself and your search service to read data, run the pipeline, and interact with other Azure resources.
53+
54+
On your Azure AI Search service:
55+
56+
1. [Enable role-based access](search-security-enable-roles.md).
57+
58+
1. [Configure a system-assigned managed identity](search-howto-managed-identities-data-sources.md#create-a-system-managed-identity).
59+
60+
1. [Assign the following roles](search-security-rbac.md) to yourself.
61+
62+
+ **Search Service Contributor**
63+
64+
+ **Search Index Data Contributor**
65+
66+
+ **Search Index Data Reader**
67+
68+
### [**Azure Storage**](#tab/storage-perms)
69+
70+
Azure Storage is both the data source for your documents and the destination for extracted images. Your search service requires access to these storage containers, which you create in the next section of this quickstart.
71+
72+
On your Azure Storage account:
73+
74+
+ Assign **Storage Blob Data Contributor** to your [search service identity](search-howto-managed-identities-data-sources.md#create-a-system-managed-identity).
75+
76+
### [**Azure AI services**](#tab/ai-services-perms)
77+
78+
An Azure AI multi-service account provides multiple Azure AI services, including [Azure AI Document Intelligence](/azure/ai-services/document-intelligence/overview) for content extraction and semantic chunking. Your search service requires access to call the [Document Layout skill](cognitive-search-skill-document-intelligence-layout.md).
79+
80+
On your Azure AI multi-service account:
81+
82+
+ Assign **Cognitive Services User** to your [search service identity](search-howto-managed-identities-data-sources.md#create-a-system-managed-identity).
83+
84+
### [**Azure OpenAI**](#tab/openai-perms)
85+
86+
Azure OpenAI provides large language models (LLMs) for image verbalization and embedding models for text and image vectorization. Your search service requires access to call the [GenAI Prompt skill](cognitive-search-skill-genai-prompt.md) and [Azure OpenAI Embedding skill](cognitive-search-skill-azure-openai-embedding.md).
87+
88+
On your Azure OpenAI resource:
89+
90+
+ Assign **Cognitive Services OpenAI User** to your [search service identity](search-howto-managed-identities-data-sources.md#create-a-system-managed-identity).
91+
92+
---
5193

5294
## Prepare sample data
5395

@@ -65,7 +107,7 @@ To prepare the sample data for this quickstart:
65107

66108
## Deploy models
67109

68-
The wizard requires a large language model (LLM) to verbalize images and an embedding model to generate vector representations of text and verbalized text content. Both models are available through Azure OpenAI.
110+
The wizard requires an LLM to verbalize images and an embedding model to generate vector representations of text and verbalized text content. Both models are available through Azure OpenAI.
69111

70112
To deploy the models for this quickstart:
71113

@@ -125,7 +167,7 @@ To connect to your data:
125167

126168
The next step is to select a method for document cracking and chunking.
127169

128-
Your Azure AI multi-service account provides access to the [Document Layout skill](cognitive-search-skill-document-intelligence-layout.md), which extracts page numbers, bounding polygons, and other location metadata from both text and images. The Document Layout skill also breaks large documents into smaller, more manageable chunks.
170+
Your Azure AI multi-service account provides access to the [Document Layout skill](cognitive-search-skill-document-intelligence-layout.md), which extracts page numbers, bounding polygons, and other location metadata from both text and images. The Document Layout skill also breaks documents into smaller, more manageable chunks.
129171

130172
To use the Document Layout skill:
131173

@@ -143,7 +185,7 @@ To use the Document Layout skill:
143185

144186
## Embed your content
145187

146-
During this step, the wizard calls two skills to generate both descriptive text for images (image verbalization) and vector embeddings for text and images.
188+
During this step, the wizard calls two skills to generate descriptive text for images (image verbalization) and vector embeddings for text and images.
147189

148190
For image verbalization, the [GenAI Prompt skill](cognitive-search-skill-genai-prompt.md) uses the LLM you deployed to analyze each extracted image and produce a natural-language description.
149191

@@ -183,7 +225,7 @@ To use the GenAI Prompt skill and Azure OpenAI Embedding skill:
183225

184226
## Store the extracted images
185227

186-
The next step is to save any images extracted from your documents in Azure Storage. In Azure AI Search, this is known as a knowledge store.
228+
The next step is to send images extracted from your documents to Azure Storage. In Azure AI Search, this secondary storage is known as a [knowledge store](knowledge-store-concept-intro.md).
187229

188230
To store the extracted images:
189231

articles/search/search-get-started-portal-import-vectors.md

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ ms.custom:
99
- build-2024
1010
- ignite-2024
1111
ms.topic: quickstart
12-
ms.date: 05/21/2025
12+
ms.date: 05/22/2025
1313
---
1414

1515
# Quickstart: Vectorize text in the Azure portal
@@ -47,7 +47,7 @@ For integrated vectorization, you must use one of the following embedding models
4747
| Provider | Supported models |
4848
|--|--|
4949
| [Azure OpenAI in Azure AI Foundry Models](/azure/ai-services/openai/how-to/create-resource) <sup>1, 2</sup> | text-embedding-ada-002<br>text-embedding-3-small<br>text-embedding-3-large |
50-
| [Azure AI services multi-service resource](/azure/ai-services/multi-service-resource#azure-ai-services-resource-for-azure-ai-search-skills) <sup>3</sup> | For text and images: [Azure AI Vision multimodal](/azure/ai-services/computer-vision/how-to/image-retrieval) <sup>4</sup></li> |
50+
| [Azure AI services multi-service resource](/azure/ai-services/multi-service-resource#azure-ai-multi-services-resource-for-azure-ai-search-skills) <sup>3</sup> | For text and images: [Azure AI Vision multimodal](/azure/ai-services/computer-vision/how-to/image-retrieval) <sup>4</sup></li> |
5151
| [Azure AI Foundry model catalog](/azure/ai-foundry/what-is-azure-ai-foundry) | For text:<br>Cohere-embed-v3-english<br>Cohere-embed-v3-multilingual<br><br>For images:<br>Facebook-DinoV2-Image-Embeddings-ViT-Base<br>Facebook-DinoV2-Image-Embeddings-ViT-Giant |
5252

5353
<sup>1</sup> The endpoint of your Azure OpenAI resource must have a [custom subdomain](/azure/ai-services/cognitive-services-custom-subdomains), such as `https://my-unique-name.openai.azure.com`. If you created your resource in the [Azure portal](https://portal.azure.com/), this subdomain was automatically generated during resource setup.
@@ -74,6 +74,14 @@ To configure the recommended role-based access:
7474

7575
1. On your search service, [enable roles](search-security-enable-roles.md) and [configure a system-assigned managed identity](search-howto-managed-identities-data-sources.md#create-a-system-managed-identity).
7676

77+
1. [Assign the following roles](search-security-rbac.md) to yourself.
78+
79+
+ **Search Service Contributor**
80+
81+
+ **Search Index Data Contributor**
82+
83+
+ **Search Index Data Reader**
84+
7785
1. On your data source platform and embedding model provider, create role assignments that allow your search service to access data and models. See [Prepare sample data](#prepare-sample-data) and [Prepare embedding models](#prepare-embedding-model).
7886

7987
> [!NOTE]
@@ -101,7 +109,7 @@ This section points you to the content that works for this quickstart. Before yo
101109

102110
1. Select **Add** > **Add role assignment**.
103111

104-
1. Under **Job function roles**, select **[Storage Blob Data Reader](search-howto-managed-identities-data-sources.md#assign-a-role)**, and then select **Next**.
112+
1. Under **Job function roles**, select **Storage Blob Data Reader**, and then select **Next**.
105113

106114
1. Under **Members**, select **Managed identity**, and then select **Select members**.
107115

@@ -127,7 +135,7 @@ This section points you to the content that works for this quickstart. Before yo
127135

128136
1. Select **Add** > **Add role assignment**.
129137

130-
1. Under **Job function roles**, select **[Storage Blob Data Reader](search-howto-managed-identities-data-sources.md#assign-a-role)**, and then select **Next**.
138+
1. Under **Job function roles**, select **Storage Blob Data Reader**, and then select **Next**.
131139

132140
1. Under **Members**, select **Managed identity**, and then select **Select members**.
133141

@@ -188,7 +196,7 @@ The wizard supports text-embedding-ada-002, text-embedding-3-large, and text-emb
188196

189197
1. Select **Add** > **Add role assignment**.
190198

191-
1. Under **Job function roles**, select **[Cognitive Services OpenAI User](/azure/ai-services/openai/how-to/role-based-access-control#azure-openai-roles)**, and then select **Next**.
199+
1. Under **Job function roles**, select **Cognitive Services OpenAI User**, and then select **Next**.
192200

193201
1. Under **Members**, select **Managed identity**, and then select **Select members**.
194202

@@ -371,7 +379,7 @@ In this step, you specify an embedding model to vectorize chunked data. Chunking
371379

372380
+ Azure AI Foundry model catalog
373381

374-
+ An Azure AI Vision multimodal resource in the same region as Azure AI Search. If there's no [Azure AI services multi-service account](/azure/ai-services/multi-service-resource#azure-ai-services-resource-for-azure-ai-search-skills) in the same region, this option isn't available.
382+
+ An Azure AI Vision multimodal resource in the same region as Azure AI Search. If there's no [Azure AI services multi-service account](/azure/ai-services/multi-service-resource#azure-ai-multi-services-resource-for-azure-ai-search-skills) in the same region, this option isn't available.
375383

376384
1. Specify the Azure subscription.
377385

0 commit comments

Comments
 (0)