Skip to content

Commit 725700f

Browse files
Merge pull request #251818 from ntrogh/alt-private-key-vault
[Azure Load Testing] Add support for private Azure Key Vault
2 parents 2aaf168 + 1a20853 commit 725700f

File tree

2 files changed

+33
-17
lines changed

2 files changed

+33
-17
lines changed

articles/load-testing/how-to-configure-customer-managed-keys.md

Lines changed: 29 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ services: load-testing
66
ms.service: load-testing
77
ms.author: ninallam
88
author: ninallam
9-
ms.date: 05/09/2023
9+
ms.date: 09/18/2023
1010
ms.topic: how-to
1111
---
1212

@@ -16,6 +16,8 @@ Azure Load Testing automatically encrypts all data stored in your load testing r
1616

1717
The keys you provide are stored securely using [Azure Key Vault](../key-vault/general/overview.md). You can create a separate key for each Azure load testing resource you enable with customer-managed keys.
1818

19+
When you use customer-managed encryption keys, you need to specify a user-assigned managed identity to retrieve the keys from Azure Key Vault.
20+
1921
Azure Load Testing uses the customer-managed key to encrypt the following data in the load testing resource:
2022

2123
- Test script and configuration files
@@ -35,15 +37,21 @@ Azure Load Testing uses the customer-managed key to encrypt the following data i
3537

3638
- Customer-managed keys are only available for new Azure load testing resources. You should configure the key during resource creation.
3739

38-
- Azure Load Testing can't automatically rotate the customer-managed key to use the latest version of the encryption key. You should update the key URI in the resource after the key is rotated in the Azure Key Vault.
39-
4040
- Once customer-managed key encryption is enabled on a resource, it can't be disabled.
4141

42-
- If the customer-managed key is stored in an Azure Key Vault behind a firewall, public access should be enabled on the firewall to allow Azure Load Testing to access the key.
42+
- Azure Load Testing can't automatically rotate the customer-managed key to use the latest version of the encryption key. You should update the key URI in the resource after the key is rotated in the Azure Key Vault.
4343

4444
## Configure your Azure key vault
4545

46-
To use customer-managed encryption keys with Azure Load Testing, you need to store the key in Azure Key Vault. You can use an existing or create a new key vault. The load testing resource and key vault may be in different regions or subscriptions in the same tenant.
46+
To use customer-managed encryption keys with Azure Load Testing, you need to store the key in Azure Key Vault. You can use an existing key vault or create a new one. The load testing resource and key vault may be in different regions or subscriptions in the same tenant.
47+
48+
Make sure to configure the following key vault settings when you use customer-managed encryption keys.
49+
50+
### Configure key vault networking settings
51+
52+
If you restricted access to your Azure key vault by a firewall or virtual networking, you need to grant access to Azure Load Testing for retrieving your customer-managed keys. Follow these steps to [grant access to trusted Azure services](/azure/key-vault/general/overview-vnet-service-endpoints#grant-access-to-trusted-azure-services).
53+
54+
### Configure soft delete and purge protection
4755

4856
You have to set the *Soft Delete* and *Purge Protection* properties on your key vault to use customer-managed keys with Azure Load Testing. Soft delete is enabled by default when you create a new key vault and can't be disabled. You can enable purge protection at any time. Learn more about [soft delete and purge protection in Azure Key Vault](/azure/key-vault/general/soft-delete-overview).
4957

@@ -102,7 +110,7 @@ az keyvault update --subscription <subscription-id> -g <resource-group> -n <key-
102110

103111
---
104112

105-
## Add a key
113+
## Add a customer-managed key to Azure Key Vault
106114

107115
Next, add a key to the key vault. Azure Load Testing encryption supports RSA keys. For more information about supported key types in Azure Key Vault, see [About keys](/azure/key-vault/keys/about-keys).
108116

@@ -134,7 +142,7 @@ az keyvault key create \
134142

135143
## Add an access policy to your key vault
136144

137-
The user-assigned managed identity for accessing the customer-managed keys in Azure Key Vault must have appropriate permissions to access the key vault.
145+
When you use customer-managed encryption keys, you have to specify a user-assigned managed identity. The user-assigned managed identity for accessing the customer-managed keys in Azure Key Vault must have appropriate permissions to access the key vault.
138146

139147
1. In the [Azure portal](https://portal.azure.com), go to the Azure key vault instance that you plan to use to host your encryption keys.
140148

@@ -158,7 +166,9 @@ The user-assigned managed identity for accessing the customer-managed keys in Az
158166

159167
1. Select **Save** on the key vault instance to save all changes.
160168

161-
## Configure customer-managed keys for a new load testing resource
169+
## Use customer-managed keys with Azure Load Testing
170+
171+
You can only configure customer-managed encryption keys when you create a new Azure load testing resource. When you specify the encryption key details, you also have to select a user-assigned managed identity to retrieve the key from Azure Key Vault.
162172

163173
To configure customer-managed keys for a new load testing resource, follow these steps:
164174

@@ -271,7 +281,7 @@ az deployment group create --resource-group <resource-group-name> --template-fil
271281

272282
----
273283

274-
## Change the managed identity
284+
## Change the managed identity for retrieving the encryption key
275285

276286
You can change the managed identity for customer-managed keys for an existing load testing resource at any time.
277287

@@ -292,10 +302,10 @@ You can change the managed identity for customer-managed keys for an existing lo
292302

293303
:::image type="content" source="media/how-to-configure-customer-managed-keys/change-identity-existing-azure-load-testing-resource.png" alt-text="Screenshot that shows how to change the managed identity for customer managed keys on an existing Azure load testing resource.":::
294304

295-
> [!NOTE]
296-
> The selected managed identity should have access granted on the Azure Key Vault.
305+
> [!IMPORTANT]
306+
> Make sure that the selected [managed identity has access to the Azure Key Vault](#add-an-access-policy-to-your-key-vault).
297307

298-
## Change the key
308+
## Update the customer-managed encryption key
299309

300310
You can change the key that you're using for Azure Load Testing encryption at any time. To change the key with the Azure portal, follow these steps:
301311

@@ -307,9 +317,12 @@ You can change the key that you're using for Azure Load Testing encryption at an
307317

308318
1. Save your changes.
309319

310-
## Key rotation
320+
## Rotate encryption keys
321+
322+
You can rotate a customer-managed key in Azure Key Vault according to your compliance policies. To rotate a key:
311323

312-
You can rotate a customer-managed key in Azure Key Vault according to your compliance policies. To rotate a key, in Azure Key Vault, update the key version or create a new key. You can then update the load testing resource to [encrypt data using the new key URI](#change-the-key).
324+
1. In Azure Key Vault, update the key version or create a new key.
325+
1. [Update the customer-managed encryption key](#update-the-customer-managed-encryption-key) for your load testing resource.
313326

314327
## Frequently asked questions
315328

@@ -333,7 +346,7 @@ You can revoke a key by disabling the latest version of the key in Azure Key Vau
333346

334347
When you revoke the encryption key you may be able to run tests for about 10 minutes, after which the only available operation is resource deletion. It's recommended to rotate the key instead of revoking it to manage resource security and retain your data.
335348

336-
## Next steps
349+
## Related content
337350

338351
- Learn how to [Monitor server-side application metrics](./how-to-monitor-server-side-metrics.md).
339-
- Learn how to [Parameterize a load test](./how-to-parameterize-load-tests.md).
352+
- Learn how to [Parameterize a load test with secrets and environment variables](./how-to-parameterize-load-tests.md).

articles/load-testing/how-to-parameterize-load-tests.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ The Azure Load Testing service supports two types of parameters:
2424

2525
- An Azure account with an active subscription. If you don't have an Azure subscription, create a [free account](https://azure.microsoft.com/free/?WT.mc_id=A261C142F) before you begin.
2626

27-
- An Azure Load Testing resource. If you need to create an Azure Load Testing resource, see the quickstart [Create and run a load test](./quickstart-create-and-run-load-test.md).
27+
- An Azure load testing resource. If you need to create an Azure Load Testing resource, see the quickstart [Create and run a load test](./quickstart-create-and-run-load-test.md).
2828

2929
## <a name="secrets"></a> Configure load tests with secrets
3030

@@ -49,6 +49,9 @@ You'll also need to grant Azure Load Testing access to your Azure key vault to r
4949
5050
1. [Add the secret value to your key vault](../key-vault/secrets/quick-create-portal.md#add-a-secret-to-key-vault), if you haven't already done so.
5151

52+
> [!IMPORTANT]
53+
> If you restricted access to your Azure key vault by a firewall or virtual networking, follow these steps to [grant access to trusted Azure services](/azure/key-vault/general/overview-vnet-service-endpoints#grant-access-to-trusted-azure-services).
54+
5255
1. Retrieve the key vault **secret identifier** for your secret. You'll use this secret identifier to configure your load test.
5356

5457
:::image type="content" source="media/how-to-parameterize-load-tests/key-vault-secret.png" alt-text="Screenshot that shows the details of a secret in an Azure key vault.":::

0 commit comments

Comments
 (0)