Skip to content

Commit 5172c91

Browse files
authored
Merge pull request #279587 from HeidiSteen/heidist-june28
[azure search] Security TOC updates
2 parents cc4da64 + c5d6b13 commit 5172c91

File tree

6 files changed

+31
-32
lines changed

6 files changed

+31
-32
lines changed

articles/search/TOC.yml

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -422,26 +422,18 @@
422422
items:
423423
- name: Configure network access
424424
href: service-configure-firewall.md
425+
- name: Authenticate with keys
426+
href: search-security-api-keys.md
425427
- name: Enable role-based access
426428
href: search-security-enable-roles.md
427-
- name: Assign roles (users and groups)
429+
- name: Assign roles (users)
428430
href: search-security-rbac.md
429-
- name: Inbound connections
430-
items:
431-
- name: Connect using API keys
432-
href: search-security-api-keys.md
433-
- name: Code without keys
434-
href: keyless-connections.md
435-
- name: Create a private endpoint
436-
href: service-create-private-endpoint.md
437-
- name: Troubleshoot private connections
438-
href: troubleshoot-shared-private-link-resources.md
431+
- name: Assign roles (apps)
432+
href: keyless-connections.md
439433
- name: Outbound connections
440434
items:
441435
- name: Configure a managed identity
442436
href: search-howto-managed-identities-data-sources.md
443-
- name: Connect as a trusted service
444-
href: search-indexer-howto-access-trusted-service-exception.md
445437
- name: Connect using a managed identity
446438
items:
447439
- name: Azure Storage
@@ -454,18 +446,26 @@
454446
href: search-index-azure-sql-managed-instance-with-managed-identity.md
455447
- name: Connect through a firewall
456448
href: search-indexer-howto-access-ip-restricted.md
449+
- name: Connect as a trusted service
450+
href: search-indexer-howto-access-trusted-service-exception.md
457451
- name: Connect through a shared private link
458452
href: search-indexer-howto-access-private.md
459453
- name: Connect to a SQL managed instance private endpoint
460454
href: search-indexer-how-to-access-private-sql.md
461-
- name: Data encryption
462-
items:
463-
- name: Customer-managed keys
464-
href: search-security-manage-encryption-keys.md
465-
- name: Find encrypted objects
466-
href: search-security-get-encryption-keys.md
467455
- name: Document-level security
468456
href: search-security-trimming-for-azure-search.md
457+
- name: Advanced options
458+
items:
459+
- name: Create a private endpoint
460+
href: service-create-private-endpoint.md
461+
- name: Troubleshoot private connections
462+
href: troubleshoot-shared-private-link-resources.md
463+
- name: Data encryption
464+
items:
465+
- name: Customer-managed keys
466+
href: search-security-manage-encryption-keys.md
467+
- name: Find encrypted objects
468+
href: search-security-get-encryption-keys.md
469469
- name: Development
470470
items:
471471
- name: API versions

articles/search/search-security-api-keys.md

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,14 @@ ms.service: cognitive-search
1010
ms.custom:
1111
- ignite-2023
1212
ms.topic: how-to
13-
ms.date: 04/22/2024
13+
ms.date: 06/28/2024
1414
---
1515

1616
# Connect to Azure AI Search using key authentication
1717

1818
Azure AI Search offers key-based authentication that you can use on connections to your search service. An API key is a unique string composed of 52 randomly generated numbers and letters. A request made to a search service endpoint is accepted if both the request and the API key are valid.
1919

20-
Key-based authentication is the default. You can disable it if you opt in for role-based authentication.
21-
22-
> [!NOTE]
23-
> A quick note about *key* terminology. An *API key* is a GUID used for authentication. A separate term, *document key* is a unique string in your indexed content that uniquely identifies documents in a search index.
20+
Key-based authentication is the default. You can disable it if you opt in for [role-based authentication](search-security-enable-roles.md).
2421

2522
## Types of API keys
2623

articles/search/search-security-enable-roles.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ ms.date: 06/18/2024
1616

1717
If you want to use Azure role assignments for authorized access to Azure AI Search, this article explains how to enable role-based access for your search service.
1818

19-
Role-based access for data plane operations is optional, but recommended. The alternative is [key-based authentication](search-security-api-keys.md), which is the default.
19+
Role-based access for data plane operations is optional, but recommended as the more secure option. The alternative is [key-based authentication](search-security-api-keys.md), which is the default.
2020

2121
Roles for service administration (control plane) are built in and can't be enabled or disabled.
2222

articles/search/search-security-overview.md

Lines changed: 4 additions & 4 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: 05/28/2024
13+
ms.date: 06/28/2024
1414
---
1515

1616
# Security overview for Azure AI Search
@@ -23,7 +23,7 @@ An Azure AI Search service is hosted on Azure and is typically accessed by clien
2323

2424
Azure AI Search has three basic network traffic patterns:
2525

26-
+ Inbound requests made by a client to the search service (the predominant pattern)
26+
+ Inbound requests made by a user or client to the search service (the predominant pattern)
2727
+ Outbound requests issued by the search service to other services on Azure and elsewhere
2828
+ Internal service-to-service requests over the secure Microsoft backbone network
2929

@@ -52,12 +52,12 @@ Internal requests are secured and managed by Microsoft. You can't configure or c
5252
Internal traffic consists of:
5353

5454
+ Service-to-service calls for tasks like authentication and authorization through Microsoft Entra ID, resource logging sent to Azure Monitor, and [private endpoint connections](service-create-private-endpoint.md) that utilize Azure Private Link.
55-
+ Requests made to Azure AI services APIs for [built-in skills](cognitive-search-predefined-skills.md).
55+
+ Requests made to Azure AI services APIs for [built-in skills](cognitive-search-predefined-skills.md)
5656
+ Requests made to the machine learning models that support [semantic ranking](semantic-search-overview.md#availability-and-pricing).
5757

5858
### Outbound traffic
5959

60-
Outbound requests can be secured and managed by you. Outbound requests originate from a search service to other applications. These requests are typically made by indexers for text-based indexing, skills-based AI enrichment, and vectorizations at query time. Outbound requests include both read and write operations.
60+
Outbound requests can be secured and managed by you. Outbound requests originate from a search service to other applications. These requests are typically made by indexers for text-based indexing, custom skills-based AI enrichment, and vectorizations at query time. Outbound requests include both read and write operations.
6161

6262
The following list is a full enumeration of the outbound requests for which you can configure secure connections. A search service makes requests on its own behalf, and on the behalf of an indexer or custom skill.
6363

articles/search/search-security-rbac.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -180,9 +180,11 @@ New-AzRoleAssignment -SignInName <email> `
180180

181181
### Assign roles for read-only queries
182182

183-
Use the Search Index Data Reader role for apps and processes that only need read-access to an index. This is a very specific role. It grants [GET or POST access](/rest/api/searchservice/documents) to the *documents collection of a search index* for search, autocomplete, and suggestions.
183+
Use the Search Index Data Reader role for apps and processes that only need read-access to an index.
184184

185-
It doesn't support GET or LIST operations on an index or other top-level objects, or GET service statistics.
185+
This is a very specific role. It grants [GET or POST access](/rest/api/searchservice/documents) to the *documents collection of a search index* for search, autocomplete, and suggestions. It doesn't support GET or LIST operations on an index or other top-level objects, or GET service statistics.
186+
187+
This section provides basic steps for setting up the role assignment and is here for completeness, but we recommend [Use Azure AI Search without keys ](keyless-connections.md) for comprehensive instructions on configuring your app for role-based access.
186188

187189
#### [**Azure portal**](#tab/roles-portal-query)
188190

articles/search/service-configure-firewall.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ ms.date: 06/27/2024
1515

1616
# Configure network access and firewall rules for Azure AI Search
1717

18-
By default, Azure AI Search is configured to allow connections over a public endpoint. Access to a search service *through* the public endpoint is protected by authentication and authorization protocols, but the endpoint itself is open to the internet at the network layer.
18+
By default, Azure AI Search is configured to allow connections over a public endpoint. Access to a search service *through* the public endpoint is protected by authentication and authorization protocols, but the endpoint itself is open to the internet at the network layer for data plane requests.
1919

2020
If you aren't hosting a public web site, you might want to configure network access to automatically refuse requests unless they originate from an approved set of devices and cloud services. There are two mechanisms:
2121

0 commit comments

Comments
 (0)