Skip to content

Commit 04043a3

Browse files
committed
ported private connection doc updates from corrupted PR, plus steps for disable public network access
1 parent 7280aad commit 04043a3

File tree

5 files changed

+53
-22
lines changed

5 files changed

+53
-22
lines changed

articles/search/cognitive-search-skill-ocr.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ The **Optical character recognition (OCR)** skill recognizes printed and handwri
1919
An OCR skill uses the machine learning models provided by [Azure AI Vision](../ai-services/computer-vision/overview.md) API [v3.2](https://westus.dev.cognitive.microsoft.com/docs/services/computer-vision-v3-2/operations/5d986960601faab4bf452005) in Azure AI services. The **OCR** skill maps to the following functionality:
2020

2121
+ For the languages listed under [Azure AI Vision language support](../ai-services/computer-vision/language-support.md#optical-character-recognition-ocr), the [Read API](../ai-services/computer-vision/overview-ocr.md) is used.
22-
+ For Greek and Serbian Cyrillic, the [legacy OCR](https://westus.dev.cognitive.microsoft.com/docs/services/computer-vision-v3-2/operations/56f91f2e778daf14a499f20d) API is used.
22+
23+
+ For Greek and Serbian Cyrillic, the legacy [OCR in version 3.2](https://github.com/Azure/azure-rest-api-specs/tree/master/specification/cognitiveservices/data-plane/ComputerVision/stable/v3.2) API is used.
2324

2425
The **OCR** skill extracts text from image files. Supported file formats include:
2526

@@ -41,7 +42,7 @@ Parameters are case-sensitive.
4142

4243
| Parameter name | Description |
4344
|--------------------|-------------|
44-
| `detectOrientation` | Detects image orientation. Valid values are `true` or `false`. </p>This parameter only applies if the [legacy OCR](https://westus.dev.cognitive.microsoft.com/docs/services/computer-vision-v3-2/operations/56f91f2e778daf14a499f20d) API is used. |
45+
| `detectOrientation` | Detects image orientation. Valid values are `true` or `false`. </p>This parameter only applies if the [legacy OCR version 3.2](https://github.com/Azure/azure-rest-api-specs/tree/master/specification/cognitiveservices/data-plane/ComputerVision/stable/v3.2) API is used. |
4546
| `defaultLanguageCode` | Language code of the input text. Supported languages include all of the [generally available languages](../ai-services/computer-vision/language-support.md#analyze-image) of Azure AI Vision. You can also specify `unk` (Unknown). </p>If the language code is unspecified or null, the language is set to English. If the language is explicitly set to `unk`, all languages found are auto-detected and returned.|
4647
| `lineEnding` | The value to use as a line separator. Possible values: "Space", "CarriageReturn", "LineFeed". The default is "Space". |
4748

@@ -210,8 +211,6 @@ The above skillset example assumes that a normalized-images field exists. To gen
210211
}
211212
```
212213

213-
214-
215214
## See also
216215

217216
+ [What is optical character recognition](../ai-services/computer-vision/overview-ocr.md)

articles/search/search-indexer-howto-access-private.md

Lines changed: 18 additions & 9 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: how-to
13-
ms.date: 02/22/2024
13+
ms.date: 0403/2024
1414
---
1515

1616
# Make outbound connections through a shared private link
@@ -28,12 +28,15 @@ Shared private link is a premium feature that's billed by usage. When you set up
2828

2929
Azure AI Search makes outbound calls to other Azure PaaS resources in the following scenarios:
3030

31-
+ Indexer connection requests to supported data sources
32-
+ Indexer (skillset) connections to Azure Storage for caching enrichments or writing to a knowledge store
31+
+ Indexer or search engine connects to Azure OpenAI for text-to-vector embeddings
32+
+ Indexer connects to supported data sources
33+
+ Indexer (skillset) connections to Azure Storage for caching enrichments, debug session sate, or writing to a knowledge store
3334
+ Encryption key requests to Azure Key Vault
3435
+ Custom skill requests to Azure Functions or similar resource
3536

36-
In service-to-service communications, Azure AI Search typically sends a request over a public internet connection. However, if your data, key vault, or function should be accessed through a [private endpoint](../private-link/private-endpoint-overview.md), you must create a *shared private link*.
37+
Shared private links only work for Azure-to-Azure connections. If you're connecting to OpenAI or another external model, the connection must be over the public internet.
38+
39+
Shared private links are for operations and data accessed through a [private endpoint](../private-link/private-endpoint-overview.md) for Azure resources or clients that run in an Azure virtual network.
3740

3841
A shared private link is:
3942

@@ -51,21 +54,24 @@ There are two scenarios for using [Azure Private Link](../private-link/private-l
5154

5255
+ Scenario two: [configure search for a private *inbound* connection](service-create-private-endpoint.md) from clients that run in a virtual network.
5356

57+
Scenario one is covered in this article.
58+
5459
While both scenarios have a dependency on Azure Private Link, they are independent. You can create a shared private link without having to configure your own search service for a private endpoint.
5560

5661
### Limitations
5762

5863
When evaluating shared private links for your scenario, remember these constraints.
5964

60-
+ Several of the resource types used in a shared private link are in preview. If you're connecting to a preview resource (Azure Database for MySQL, Azure Functions, or Azure SQL Managed Instance), use a preview version of the Management REST API to create the shared private link. These versions include `2020-08-01-preview` or `2021-04-01-preview`.
65+
+ Several of the resource types used in a shared private link are in preview. If you're connecting to a preview resource (Azure Database for MySQL, Azure Functions, or Azure SQL Managed Instance), use a preview version of the Management REST API to create the shared private link. These versions include `2020-08-01-preview`, `2021-04-01-preview`, and `2024-03-01-preview`.
6166

6267
+ Indexer execution must use the private execution environment that's specific to your search service. Private endpoint connections aren't supported from the multitenant environment. The configuration setting for this requirement is covered in this article.
6368

6469
## Prerequisites
6570

6671
+ An Azure AI Search at the Basic tier or higher. If you're using [AI enrichment](cognitive-search-concept-intro.md) and skillsets, the tier must be Standard 2 (S2) or higher. See [Service limits](search-limits-quotas-capacity.md#shared-private-link-resource-limits) for details.
6772

68-
+ An Azure PaaS resource from the following list of supported resource types, configured to run in a virtual network.
73+
+ An Azure PaaS resource from the following list of [supported resource types](#supported-resource-types), configured to run in a virtual network.
74+
6975

7076
+ Permissions on both Azure AI Search and the data source:
7177

@@ -275,11 +281,14 @@ A `202 Accepted` response is returned on success. The process of creating an out
275281

276282
## 2 - Approve the private endpoint connection
277283

278-
Approval of the private endpoint connection is granted on the Azure PaaS side. If the service consumer has a role assignment on the service provider resource, the approval will be automatic. Otherwise, manual approval is required. For details, see [Manage Azure private endpoints](/azure/private-link/manage-private-endpoint).
284+
Approval of the private endpoint connection is granted on the Azure PaaS side. Explicit approval by the resource owner is required. The following steps cover approval using the Azure portal, but here are some links to approve the connection programmatically from the Azure PaaS side:
285+
286+
+ On Azure Storage, use [Private Endpoint Connections - Put](/rest/api/storagerp/private-endpoint-connections/put)
287+
+ On Azure Cosmos DB, use [Private Endpoint Connections - Create Or Update](/rest/api/cosmos-db-resource-provider/private-endpoint-connections/create-or-update)
279288

280-
This section assumes manual approval and the portal for this step, but you can also use the REST APIs of the Azure PaaS resource. [Private Endpoint Connections (Storage Resource Provider)](/rest/api/storagerp/privateendpointconnections) and [Private Endpoint Connections (Cosmos DB Resource Provider)](/rest/api/cosmos-db-resource-provider/2023-03-15/private-endpoint-connections) are two examples.
289+
Using the Azure portal, perform the following steps:
281290

282-
1. In the Azure portal, open the **Networking** page of the Azure PaaS resource.[text](https://ms.portal.azure.com/#blade%2FHubsExtension%2FResourceMenuBlade%2Fid%2F%2Fsubscriptions%2Fa5b1ca8b-bab3-4c26-aebe-4cf7ec4791a0%2FresourceGroups%2Ftest-private-endpoint%2Fproviders%2FMicrosoft.Network%2FprivateEndpoints%2Ftest-private-endpoint)
291+
1. Open the **Networking** page of the Azure PaaS resource.[text](https://ms.portal.azure.com/#blade%2FHubsExtension%2FResourceMenuBlade%2Fid%2F%2Fsubscriptions%2Fa5b1ca8b-bab3-4c26-aebe-4cf7ec4791a0%2FresourceGroups%2Ftest-private-endpoint%2Fproviders%2FMicrosoft.Network%2FprivateEndpoints%2Ftest-private-endpoint)
283292

284293
1. Find the section that lists the private endpoint connections. The following example is for a storage account.
285294

articles/search/search-manage-azure-cli.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ ms.custom:
1111
- devx-track-azurecli
1212
- ignite-2023
1313
ms.topic: how-to
14-
ms.date: 02/21/2024
14+
ms.date: 04/05/2024
1515
---
1616

1717
# Manage your Azure AI Search service with the Azure CLI
@@ -21,7 +21,9 @@ ms.date: 02/21/2024
2121
> * [Azure CLI](search-manage-azure-cli.md)
2222
> * [REST API](search-manage-rest.md)
2323
24-
You can run Azure CLI commands and scripts on Windows, macOS, Linux, or in [Azure Cloud Shell](../cloud-shell/overview.md) to create and configure Azure AI Search. The [**az search**](/cli/azure/search) module extends the [Azure CLI](/cli/) with full parity to the [Search Management REST APIs](/rest/api/searchmanagement) and the ability to perform the following tasks:
24+
You can run Azure CLI commands and scripts on Windows, macOS, Linux, or in Azure Cloud Shell to create and configure Azure AI Search.
25+
26+
Use the [**az search module**](/cli/azure/search) to perform the following tasks:
2527

2628
> [!div class="checklist"]
2729
> * [List search services in a subscription](#list-search-services)
@@ -45,7 +47,7 @@ Preview administration features are typically not available in the **az search**
4547

4648
Azure CLI versions are [listed on GitHub](https://github.com/Azure/azure-cli/releases).
4749

48-
<a name="list-search-services"></a>
50+
The [**az search**](/cli/azure/search) module extends the [Azure CLI](/cli/) with full parity to the stable versions of the [Search Management REST APIs](/rest/api/searchmanagement).
4951

5052
## List services in a subscription
5153

articles/search/search-manage-powershell.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ ms.author: heidist
99
ms.service: cognitive-search
1010
ms.devlang: powershell
1111
ms.topic: how-to
12-
ms.date: 02/21/2024
12+
ms.date: 04/05/2024
1313
ms.custom:
1414
- devx-track-azurepowershell
1515
- ignite-2023
@@ -22,7 +22,9 @@ ms.custom:
2222
> * [Azure CLI](search-manage-azure-cli.md)
2323
> * [REST API](search-manage-rest.md)
2424
25-
You can run PowerShell cmdlets and scripts on Windows, Linux, or in [Azure Cloud Shell](../cloud-shell/overview.md) to create and configure Azure AI Search. The **Az.Search** module extends [Azure PowerShell](/powershell/) with full parity to the [Search Management REST APIs](/rest/api/searchmanagement) and the ability to perform the following tasks:
25+
You can run PowerShell cmdlets and scripts on Windows, Linux, or in Azure Cloud Shell to create and configure Azure AI Search.
26+
27+
Use the [**Az.Search** module](/powershell/module/az.search/) to perform the following tasks:
2628

2729
> [!div class="checklist"]
2830
> * [List search services in a subscription](#list-search-services)
@@ -42,6 +44,8 @@ You can't use tools or APIs to transfer content, such as an index, from one serv
4244

4345
Preview administration features are typically not available in the **Az.Search** module. If you want to use a preview feature, [use the Management REST API](search-manage-rest.md) and a preview API version.
4446

47+
The [**Az.Search** module](/powershell/module/az.search/) extends [Azure PowerShell](/powershell/) with full parity to the stable versions of the [Search Management REST APIs](/rest/api/searchmanagement).
48+
4549
<a name="check-versions-and-load"></a>
4650

4751
## Check versions and load modules

articles/search/service-create-private-endpoint.md

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ ms.service: cognitive-search
99
ms.custom:
1010
- ignite-2023
1111
ms.topic: conceptual
12-
ms.date: 01/10/2024
12+
ms.date: 04/03/2024
1313
---
1414

1515
# Create a Private Endpoint for a secure connection to Azure AI Search
1616

17-
In this article, learn how to secure an Azure AI Search service so that it can't be accessed over a public internet connection:
17+
In this article, learn how to configure a private connection to Azure AI Search so that it admits requests from clients in a virtual network instead of over a public internet connection:
1818

1919
+ [Create an Azure virtual network](#create-the-virtual-network) (or use an existing one)
2020
+ [Configure a search service to use a private endpoint](#create-a-search-service-with-a-private-endpoint)
@@ -25,8 +25,15 @@ Private endpoints are provided by [Azure Private Link](../private-link/private-l
2525

2626
You can create a private endpoint for a search service in the Azure portal, as described in this article. Alternatively, you can use the [Management REST API version](/rest/api/searchmanagement/), [Azure PowerShell](/powershell/module/az.search), or [Azure CLI](/cli/azure/search).
2727

28-
> [!NOTE]
29-
> Once a search service has a private endpoint, portal access to that service must be initiated from a browser session on a virtual machine inside the virtual network. See [this step](#portal-access-private-search-service) for details.
28+
Once a search service has a private endpoint, portal access to that service must be initiated from a browser session on a virtual machine inside the virtual network. See [this step](#portal-access-private-search-service) for details.
29+
30+
Other Azure resources that might privately connect to Azure AI Search include Azure OpenAI for "use your own data" scenarios:
31+
32+
+ Follow the instructions in this article to set up the private endpoint.
33+
+ [Submit a request](/azure/ai-services/openai/how-to/use-your-data-securely#disable-public-network-access-1) for Azure OpenAI Studio to connect using your private endpoint.
34+
+ Optionally, [disable public network access]() if connections should only originate from clients in virtual network or from Azure OpenAI over a private endpoint connection.
35+
36+
Azure OpenAI Studio doesn't run in a virtual network, but it can be configured on the backend to send requests over the Microsoft backbone network. Configuration for this traffic pattern is enabled by Microsoft when your request is submitted and approved.
3037

3138
## Why use a Private Endpoint for secure access?
3239

@@ -229,6 +236,16 @@ To work around this restriction, connect to Azure portal from a browser on a vir
229236
230237
1. On a virtual machine in your virtual network, open a browser and sign in to the Azure portal. The portal will use the private endpoint attached to the virtual machine to connect to your search service.
231238
239+
## Disable public network access
240+
241+
You can lock down a search service to prevent it from admitting any request from the public internet. You can use the Azure portal for this step.
242+
243+
1. In the Azure portal, on the leftmost pane of your search service page, select **Networking**.
244+
245+
1. Select **Disabled** on the **Firewalls and virtual networks** tab.
246+
247+
You can also use the [Azure CLI](/cli/azure/search/service?view=azure-cli-latest#az-search-service-update), [Azure PowerShell](/powershell/module/az.search/set-azsearchservice), or the [Management REST API](/rest/api/searchmanagement/services/update), setting `public-access` or `public-network-access` to `disabled`.
248+
232249
## Clean up resources
233250
234251
When you're working in your own subscription, it's a good idea at the end of a project to identify whether you still need the resources you created. Resources left running can cost you money.

0 commit comments

Comments
 (0)