Skip to content

Commit 65fbba4

Browse files
committed
Edits for readability
1 parent 42d04a4 commit 65fbba4

File tree

3 files changed

+16
-17
lines changed

3 files changed

+16
-17
lines changed
20.3 KB
Loading
12.2 KB
Loading

articles/search/search-security-manage-encryption-keys.md

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -41,13 +41,9 @@ If you require CMK across your search service, [set an enforcement policy](#set-
4141

4242
+ [Azure AI Search](search-create-service-portal.md) on a [billable tier](search-sku-tier.md#tier-descriptions) (Basic or higher, in any region).
4343

44-
+ New objects on Azure AI Search. You can't encrypt existing objects.
44+
+ [Azure Key Vault](/azure/key-vault/general/overview) and a key vault with **soft-delete** and **purge protection** enabled. Or, [Azure Key Vault Managed HSM](/azure/key-vault/managed-hsm/overview). This resource can be in any subscription, but it must be in the same tenant as Azure AI Search.
4545

46-
+ [Azure Key Vault](/azure/key-vault/general/overview) or [Azure Key Vault Managed HSM](/azure/key-vault/managed-hsm/overview) in any subscription.
47-
48-
+ A key vault with **soft-delete** and **purge protection** enabled.
49-
50-
+ An encryption key. You need its identifier when specifying the encryption key in Azure AI Search. Azure AI Search encryption supports RSA keys of sizes 2048, 3072 and 4096. For more information about supported key types, see [About keys](/azure/key-vault/keys/about-keys).
46+
+ An encryption key. You need its identifier when specifying encryption in Azure AI Search. Azure AI Search encryption supports RSA keys of sizes 2048, 3072 and 4096. For more information about supported key types, see [About keys](/azure/key-vault/keys/about-keys).
5147

5248
+ Ability to set up permissions for key access. You must grant key access to the search service, and to yourself if you're testing locally. Required permissions are **Key Vault Crypto Officer** role in Azure Key Vault and **Managed HSM Administrator** in Azure Key Vault Managed HSM.
5349

@@ -172,27 +168,28 @@ Follow these instructions if you can't use role assignments for search service a
172168
173169
## Step 3: Grant permissions
174170
175-
Follow these steps if you configured your search service to use a managed identity. On Azure Key Vault, assign **Key Vault Crypto Service Encryption User** role to your search service. On Azure Key Vault Managed HSM, assign **Managed HSM Crypto Service Encryption User**. If you're testing locally, assign this role to yourself as well.
171+
Follow these steps if you configured your search service to use a managed identity.
176172
177173
Role-based access control is recommended over key vault access policies. For more information, see [Provide access to Key Vault keys, certificates, and secrets using Azure roles](/azure/key-vault/general/rbac-guide).
178174
179-
In this step,
180-
181175
1. Sign in to the [Azure portal](https://portal.azure.com) and find your key vault.
182176
183177
1. Select **Access control (IAM)** and select **Add role assignment**.
184178
185-
1. Select a role. On Azure Key Vault, select **Key Vault Crypto Service Encryption User**. On Managed HSM, select **Managed HSM Crypto Service Encryption User**.
179+
1. Select a role:
186180
187-
1. Select managed identities, select members, and then select the managed identity of your search service.
181+
+ On Azure Key Vault, select **Key Vault Crypto Service Encryption User**.
182+
+ On Managed HSM, select **Managed HSM Crypto Service Encryption User**.
183+
184+
1. Select managed identities, select members, and then select the managed identity of your search service. If you're testing locally, assign this role to yourself as well.
188185
189186
1. Select **Review + Assign**.
190187
191188
Wait a few minutes for the role assignment to become operational.
192189
193190
## Step 4: Encrypt content
194191
195-
Encryption keys are added when you create an object. To add a customer-managed key on an index, synonym map, indexer, data source, or skillset, use the Azure portal, a [Search REST API](/rest/api/searchservice/), or an Azure SDK to create an object that has encryption enabled. To add encryption using the Azure SDK, see the [Python example](#python-example-of-an-encryption-key-configuration) in this article.
192+
Encryption keys are added when you create an object. You can use the Azure portal for selected objects. For any object, use the [Search REST API](/rest/api/searchservice/) or an Azure SDK. Review the [Python example](#python-example-of-an-encryption-key-configuration) in this article to see how content is encrypted programmatically.
196193
197194
### [**Azure portal**](#tab/portal)
198195
@@ -226,7 +223,9 @@ In the Azure portal, skillsets are defined in JSON view. Use the JSON shown in t
226223
+ [Create Data Source](/rest/api/searchservice/data-sources/create)
227224
+ [Create Skillset](/rest/api/searchservice/skillsets/create)
228225
229-
1. Insert the encryptionKey construct into the object definition. This property is a first-level property, on the same level as name and description. If you're using the same vault, key, and version, you can paste in the same encryptionKey construct into each object definition. If your key identifier is `https://contoso-keyvault.vault.azure.net/keys/contoso-cmk/aaaaaaaa-0b0b-1c1c-2d2d-333333333333`, then the URI is `https://contoso-keyvault.vault.azure.net`, the key name is `contoso-cmk`, and the version is `aaaaaaaa-0b0b-1c1c-2d2d-333333333333`.
226+
1. Insert the encryptionKey construct into the object definition. This property is a first-level property, on the same level as name and description. If you're using the same vault, key, and version, you can paste in the same encryptionKey construct into each object definition.
227+
228+
If your key identifier is `https://contoso-keyvault.vault.azure.net/keys/contoso-cmk/aaaaaaaa-0b0b-1c1c-2d2d-333333333333`, then the URI is `https://contoso-keyvault.vault.azure.net`, the key name is `contoso-cmk`, and the version is `aaaaaaaa-0b0b-1c1c-2d2d-333333333333`.
230229
231230
```json
232231
{
@@ -333,15 +332,15 @@ Azure policies help to enforce organizational standards and to assess compliance
333332
334333
In this section, you set the policy that defines a CMK standard for your search service. Then, you set up your search service to enforce this policy.
335334
336-
1. Navigate to the [built-in policy](https://portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F76a56461-9dc0-40f0-82f5-2453283afa2f) in your web browser. Select **Assign**
335+
1. Navigate to the [built-in policy](https://portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F76a56461-9dc0-40f0-82f5-2453283afa2f) in your web browser. Select **Assign**.
337336
338337
:::image type="content" source="media/search-security-manage-encryption-keys/assign-policy.png" alt-text="Screenshot of assigning built-in CMK policy." border="true":::
339338
340-
1. Set up the [policy scope](/azure/governance/policy/concepts/scope). In the **Parameters** section, uncheck **Only show parameters...** and set **Effect** to [**Deny**](/azure/governance/policy/concepts/effects#deny).
339+
1. Set up the [policy scope](/azure/governance/policy/concepts/scope). In the **Parameters** section, uncheck **Only show parameters...** and set **Effect** to [**AuditIfNotExists**](/azure/governance/policy/concepts/effect-audit-if-not-exists).
341340
342-
During evaluation of the request, a request that matches a deny policy definition is marked as noncompliant. Assuming the standard for your service is CMK encryption, "deny" means that requests that *don't* specify CMK encryption are noncompliant.
341+
During evaluation of the request, a request that matches the policy definition is marked as noncompliant. Assuming the standard for your service is CMK encryption, "audit if not exists" means that requests that *don't* specify CMK encryption are noncompliant.
343342
344-
:::image type="content" source="media/search-security-manage-encryption-keys/effect-deny.png" alt-text="Screenshot of changing built-in CMK policy effect to deny." border="true":::
343+
:::image type="content" source="media/search-security-manage-encryption-keys/effect-deny.png" alt-text="Screenshot of changing built-in CMK policy effect to audit if not exists." border="true":::
345344
346345
1. Finish creating the policy.
347346

0 commit comments

Comments
 (0)