Skip to content

Commit beb3941

Browse files
committed
Fixed all corrections and formatting
1 parent 45f8611 commit beb3941

File tree

3 files changed

+37
-39
lines changed

3 files changed

+37
-39
lines changed

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

Lines changed: 26 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -19,46 +19,45 @@ Private endpoints created through Azure Cognitive Search APIs are referred to as
1919

2020
To create a shared private link, use the Azure portal or the [Create Or Update Shared Private Link](/rest/api/searchmanagement/2020-08-01/shared-private-link-resources/create-or-update) operation in the Azure Cognitive Search Management REST API.
2121

22-
If you're connecting to a preview data source, such as Azure Database for MySQL or Azure Functions, use a preview version of the Management REST API to create the shared private link. Preview versions that support a shared private link include `2020-08-01-preview` or `2021-04-01-preview`.
23-
2422
## Prerequisites
2523

2624
+ The Azure resource that provides content or code must be previously registered with the [Azure Private Link service](https://azure.microsoft.com/services/private-link/).
2725

2826
+ The search service must be 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. For more information, see [Service limits](search-limits-quotas-capacity.md#shared-private-link-resource-limits).
2927

28+
+ If you're connecting to a preview data source, such as Azure Database for MySQL or Azure Functions, use a preview version of the Management REST API to create the shared private link. Preview versions that support a shared private link include `2020-08-01-preview` or `2021-04-01-preview`.
29+
3030
<a name="group-ids"></a>
3131

32-
## Supported resources and Group IDs
32+
## Supported resources and group IDs
3333

3434
The following table lists Azure resources for which you can create managed private endpoints from within Azure Cognitive Search.
3535

36-
When setting up a shared private link resource, make sure the **Group ID** value is exact. Values are case-sensitive and must be identical to those shown in the following table. Notice that for several resources and features, you'll need to set two IDs.
36+
When setting up a shared private link resource, make sure the group ID value is exact. Values are case-sensitive and must be identical to those shown in the following table. Notice that for several resources and features, you'll need to set two IDs.
3737

3838
| Azure resource | Group ID |
3939
| --- | --- |
40-
| Azure Storage - Blob | `blob` <sup>1</sup> |
40+
| Azure Storage - Blob | `blob` <sup>1,</sup> <sup>2</sup> |
4141
| Azure Storage - Data Lake Storage Gen2 | `dfs` and `blob` |
42-
| Azure Storage - Tables | `table` <sup>1,</sup> <sup>2</sup> |
42+
| Azure Storage - Tables | `table` <sup>2</sup> |
4343
| Azure Cosmos DB - SQL API | `Sql`|
4444
| Azure SQL Database | `sqlServer`|
4545
| Azure Database for MySQL (preview) | `mysqlServer`|
4646
| Azure Key Vault for [customer-managed keys](search-security-manage-encryption-keys.md) | `vault` |
4747
| Azure Functions (preview) | `sites` |
4848

49-
<sup>1</sup> If enabled [enrichment caching](cognitive-search-incremental-indexing-conceptual.md) and the connection to Azure Blob Storage is through a private endpoint, make sure there is a shared private link of type `blob`.
49+
<sup>1</sup> If you enabled [enrichment caching](cognitive-search-incremental-indexing-conceptual.md) and the connection to Azure Blob Storage is through a private endpoint, make sure there is a shared private link of type `blob`.
5050

5151
<sup>2</sup> If you're projecting data to a [knowledge store](knowledge-store-concept-intro.md) and the connection to Azure Blob Storage and Azure Table Storage is through a private endpoint, make sure there are two shared private links of type `blob` and `table`, respectively.
5252

5353
> [!TIP]
54-
> Query the Azure resources for which outbound private endpoint connections are supported by using the [list of supported APIs](/rest/api/searchmanagement/2021-04-01-preview/private-link-resources/list-supported).
54+
> You can query for the list of supported resources and group IDs by using the [list of supported APIs](/rest/api/searchmanagement/2021-04-01-preview/private-link-resources/list-supported).
5555
5656
## 1 - Create a shared private link
5757

5858
The following section describes how to create a shared private link resource either using the Azure portal or the Azure CLI.
5959

60-
> [!NOTE]
61-
> Azure portal only supports creating a shared private link resource using **Group ID** values that are generally available. For [MySQL Private Link (Preview)](../mysql/concepts-data-access-security-private-link.md) and [Azure Functions Private Link (Preview)](../azure-functions/functions-networking-options.md), use Azure CLI.
60+
Azure portal only supports creating a shared private link resource using group ID values that are generally available. For [MySQL Private Link (Preview)](../mysql/concepts-data-access-security-private-link.md) and [Azure Functions Private Link (Preview)](../azure-functions/functions-networking-options.md), use Azure CLI.
6261

6362
### [**Azure portal**](#tab/portal-create)
6463

@@ -70,19 +69,19 @@ The following section describes how to create a shared private link resource eit
7069

7170
1. On the blade that opens on the right, select either **Connect to an Azure resource in my directory** or **Connect to an Azure resource by resource ID or alias**.
7271

73-
1. If you select the first option (recommended), the blade helps you pick the appropriate Azure resource and fills in other properties, such as the **Group ID** of the resource and the resource type.
72+
1. If you select the first option (recommended), the blade helps you pick the appropriate Azure resource and fills in other properties, such as the group ID of the resource and the resource type.
7473

75-
![Screenshot of the "Add Shared Private Access" pane, showing a guided experience for creating a shared private link resource. ](media\search-indexer-howto-secure-access\new-shared-private-link-resource.png)
74+
![Screenshot of the "Add Shared Private Access" pane, showing a guided experience for creating a shared private link resource. ](media\search-indexer-howto-secure-access\new-shared-private-link-resource.png)
7675

77-
1. If you select the second option, enter the Azure resource ID manually and choose the appropriate **Group ID** from the list at the beginning of this article.
76+
1. If you select the second option, enter the Azure resource ID manually and choose the appropriate group ID from the list at the beginning of this article.
7877

79-
![Screenshot of the "Add Shared Private Access" pane, showing the manual experience for creating a shared private link resource.](media\search-indexer-howto-secure-access\new-shared-private-link-resource-manual.png)
78+
![Screenshot of the "Add Shared Private Access" pane, showing the manual experience for creating a shared private link resource.](media\search-indexer-howto-secure-access\new-shared-private-link-resource-manual.png)
8079

8180
### [**Azure CLI**](#tab/cli-create)
8281

8382
You can use the Management REST API with Azure PowerShell, or the [Azure CLI](/cli/azure/) as shown in this example.
8483

85-
Remember to use the preview API version, either 2020-08-01-preview or 2021-04-01-preview, if you're using a **Group ID** that's in preview. For example, *sites* and *mysqlServer* are in preview and require you to use the preview API.
84+
Remember to use the preview API version, either 2020-08-01-preview or 2021-04-01-preview, if you're using a group ID that's in preview. For example, *sites* and *mysqlServer* are in preview and require you to use the preview API.
8685

8786
```dotnetcli
8887
az rest --method put --uri https://management.azure.com/subscriptions/<search service subscription ID>/resourceGroups/<search service resource group name>/providers/Microsoft.Search/searchServices/<search service name>/sharedPrivateLinkResources/<shared private endpoint name>?api-version=2020-08-01 --body @create-pe.json
@@ -105,28 +104,27 @@ A `202 Accepted` response is returned on success. The process of creating an out
105104

106105
+ A private endpoint, allocated with a private IP address in a `"Pending"` state. The private IP address is obtained from the address space that's allocated to the virtual network of the execution environment for the search service-specific private indexer. Upon approval of the private endpoint, any communication from Azure Cognitive Search to the Azure resource originates from the private IP address and a secure private link channel.
107106

108-
+ A private DNS zone for the type of resource, based on the **Group ID**. By deploying this resource, you ensure that any DNS lookup to the private resource utilizes the IP address that's associated with the private endpoint.
107+
+ A private DNS zone for the type of resource, based on the group ID. By deploying this resource, you ensure that any DNS lookup to the private resource utilizes the IP address that's associated with the private endpoint.
109108

110-
Be sure to specify the correct **Group ID** for the type of resource for which you're creating the private endpoint. Any mismatch will result in a non-successful response message.
109+
Be sure to specify the correct group ID for the type of resource for which you're creating the private endpoint. Any mismatch will result in a non-successful response message.
111110

112111
---
113112

114113
<a name="check-endpoint-status"></a>
115114

116115
## 2 - Check the status of the private endpoint creation
117116

118-
In this step, confirm that the provisioning state of the resource changes to "Succeeded".
117+
In this step, confirm that the provisioning state of the resource changes to "Succeeded".
119118

120-
### [**Azure portal**](#tab/portal-status)
119+
You can use the portal to check provisioning state for both generally available and preview resources.
121120

122-
> [!NOTE]
123-
> The "Provisioning State" will be visible in the Azure portal for **Group ID** that are both generally available and Preview.
121+
### [**Azure portal**](#tab/portal-status)
124122

125-
The portal will show you the state of the shared private endpoint. In the following example, the status is "Updating".
123+
The portal shows you the state of the shared private endpoint. In the following example, the status is "Updating".
126124

127125
![Screenshot of the "Add Shared Private Access" pane, showing the resource creation in progress. ](media\search-indexer-howto-secure-access\new-shared-private-link-resource-progress.png)
128126

129-
Once the resource is successfully created, you'll receive a portal notification and the provisioning state of the resource will change to "Succeeded".
127+
Once the resource is successfully created, you'll receive a portal notification and the provisioning state of the resource changes to "Succeeded".
130128

131129
![Screenshot of the "Add Shared Private Access" pane, showing the resource creation completed. ](media\search-indexer-howto-secure-access\new-shared-private-link-resource-success.png)
132130

@@ -150,9 +148,9 @@ In this section, you use the Azure portal for the approval flow of a private end
150148

151149
Other providers, such as Azure Cosmos DB or Azure SQL Server, offer similar resource provider REST APIs for managing private endpoint connections.
152150

153-
1. In the Azure portal, navigate to the Azure resource that you're connecting to and select the **Networking** tab.
151+
1. In the Azure portal, find the Azure resource that you're connecting to and open the **Networking** page.
154152

155-
1. Navigate to the section that lists the private endpoint connections. Following is an example for a storage account. After the asynchronous operation has succeeded, there should be a request for a private endpoint connection with the request message from the previous API call.
153+
1. Find the section that lists the private endpoint connections. Following is an example for a storage account. After the asynchronous operation has succeeded, there should be a request for a private endpoint connection with the request message from the previous API call.
156154

157155
![Screenshot of the Azure portal, showing the "Private endpoint connections" pane.](media\search-indexer-howto-secure-access\storage-privateendpoint-approval.png)
158156

@@ -166,7 +164,7 @@ After the private endpoint connection request is approved, traffic is *capable*
166164

167165
## 4 - Query the status of the shared private link resource
168166

169-
To confirm that the shared private link resource has been updated after approval, revisit the "Shared Private Access" blade of the search service on the Azure portal and check the "Connection State".
167+
To confirm that the shared private link resource has been updated after approval, revisit the "Shared Private Access" blade of the search service **Networking** page on the Azure portal and check the "Connection State".
170168

171169
![Screenshot of the Azure portal, showing an "Approved" shared private link resource.](media\search-indexer-howto-secure-access\new-shared-private-link-resource-approved.png)
172170

@@ -217,7 +215,7 @@ The steps for restricting access vary by resource. The following scenarios show
217215

218216
## 6 - Configure the indexer to run in the private environment
219217

220-
[Indexer execution](search-indexer-securing-resources.md#indexer-execution-environment) occurs in either a private environment that's specific to the search service, or a multi-tenant environment that's used internally to offload expensive skillset processing. The execution environment is usually transparent, but once you start building firewall rules or establishing private connections, you'll have to take indexer execution into account. In the case of private endpoints, you'll need to ensure that indexer execution always occurs in the private environment.
218+
[Indexer execution](search-indexer-securing-resources.md#indexer-execution-environment) occurs in either a private environment that's specific to the search service, or a multi-tenant environment that's used internally to offload expensive skillset processing for multiple customers. The execution environment is usually transparent, but once you start building firewall rules or establishing private connections, you'll have to take indexer execution into account. In the case of private endpoints, you'll need to ensure that indexer execution always occurs in the private environment.
221219

222220
This step shows you how to configure the indexer to run in the private environment using the REST API. You can also set the execution environment using the JSON editor in the portal.
223221

@@ -263,7 +261,7 @@ After the indexer is created successfully, it should connect to the Azure resour
263261

264262
+ If indexers fail consistently or intermittently, check the [`executionEnvironment` property](/rest/api/searchservice/update-indexer) on the indexer. The value should be set to `private`. If you didn't set this property, and indexer runs succeeded in the past, it's because the search service used a private environment of its own accord. A search service will move processing out of the standard environment if the system is under load.
265263

266-
+ In the portal, it's expected to get a "No Access" error when viewing the search private endpoint on your data source's **Networking** page. If you want to manage the shared private link for search in the portal, use the **Networking** page of your search service.
264+
+ In the portal, it's expected to get "No Access" when viewing the search private endpoint on your data source's **Networking** page. If you want to manage the shared private link for search in the portal, use the **Networking** page of your search service.
267265

268266
+ If you get an error when creating a shared private link, check [service limits](search-limits-quotas-capacity.md) to verify that you're under the quota for your tier.
269267

articles/search/search-manage-powershell.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ You can run PowerShell cmdlets and scripts on Windows, Linux, or in [Azure Cloud
3636
3737
Occasionally, questions are asked about tasks *not* on the above list. Currently, you cannot use either the **Az.Search** module or the management REST API to change a server name, region, or tier. Dedicated resources are allocated when a service is created. As such, changing the underlying hardware (location or node type) requires a new service. Similarly, there are no tools or APIs for transferring content, such as an index, from one service to another.
3838

39-
Within a service, content creation and management is through [Search Service REST API](/rest/api/searchservice/) or [.NET SDK](/dotnet/api/overview/azure/search.documents-readme). While there are no dedicated PowerShell commands for content, you can write PowerShell script that calls REST or .NET APIs to create and load indexes.
39+
Within a service, programmatic creation of content is through [Search Service REST API](/rest/api/searchservice/) or [.NET SDK](/dotnet/api/overview/azure/search.documents-readme). While there are no dedicated PowerShell commands for content, you can write PowerShell script that calls REST or .NET APIs to create and load indexes.
4040

4141
<a name="check-versions-and-load"></a>
4242

0 commit comments

Comments
 (0)