|
| 1 | +--- |
| 2 | +title: Quickstart - Create a network security perimeter - ARM Template |
| 3 | +description: Learn how to create a network security perimeter for an Azure resource using the Azure Resource Manager template. This example demonstrates the creation of a network security perimeter for an Azure Key Vault. |
| 4 | +author: mbender-ms |
| 5 | +ms.author: mbender |
| 6 | +ms.service: azure-private-link |
| 7 | +ms.topic: quickstart |
| 8 | +ms.date: 03/14/2025 |
| 9 | +ms.custom: subject-armqs, mode-arm, template-quickstart, devx-track-arm-template |
| 10 | +#CustomerIntent: As a network administrator, I want to create a network security perimeter for an Azure resource in the Azure Resource Manager template, so that I can control the network traffic to and from the resource. |
| 11 | +--- |
| 12 | + |
| 13 | +# # Quickstart - Create a network security perimeter - ARM Template |
| 14 | + |
| 15 | +Get started with network security perimeter by creating a network security perimeter for an Azure key vault using Azure Resource Manager (ARM) template. A [network security perimeter](network-security-perimeter-concepts.md) allows [Azure Platform as a Service (PaaS)](./network-security-perimeter-concepts.md#onboarded-private-link-resources) resources to communicate within an explicit trusted boundary. You create and update a PaaS resource's association in a network security perimeter profile. Then you create and update network security perimeter access rules. When you're finished, you delete all resources created in this quicks. |
| 16 | + |
| 17 | +[!INCLUDE [About Azure Resource Manager](~/reusable-content/ce-skilling/azure/includes/resource-manager-quickstart-introduction.md)] |
| 18 | + |
| 19 | +You can also create a network security perimeter by using the [Azure portal](create-network-security-perimeter-portal.md), [Azure PowerShell](create-network-security-perimeter-powershell.md), or the [Azure CLI](create-network-security-perimeter-cli.md). |
| 20 | + |
| 21 | +If your environment meets the prerequisites and you're familiar with using ARM templates, select the **Deploy to Azure** button here. The ARM template will open in the Azure portal. |
| 22 | + |
| 23 | +:::image type="content" source="~/reusable-content/ce-skilling/azure/media/template-deployments/deploy-to-azure-button.svg" alt-text="Button to deploy the Resource Manager template to Azure." border="false" link="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-quickstart-templates%2Fmaster%2Fquickstarts%2Fmicrosoft.network%2Fnetwork-security-perimeter-create%2Fazuredeploy.json"::: |
| 24 | + |
| 25 | +## Prerequisites |
| 26 | + |
| 27 | +- An Azure account with an active subscription. If you don't already have an Azure account, [create an account for free](https://azure.microsoft.com/free/?WT.mc_id=A261C142F). |
| 28 | + |
| 29 | +[!INCLUDE [network-security-perimeter-add-preview](../../includes/network-security-perimeter-add-preview.md)] |
| 30 | + |
| 31 | +## Review the template |
| 32 | + |
| 33 | +This template creates a private endpoint for an instance of Azure SQL Database. |
| 34 | + |
| 35 | +The template that this quickstart uses is from [Azure Quickstart Templates](https://azure.microsoft.com/resources/templates/network-security-perimeter-create/). |
| 36 | + |
| 37 | +:::code language="json" source="~/quickstart-templates/quickstarts/microsoft.network/network-security-perimeter-create/azuredeploy.json"::: |
| 38 | + |
| 39 | +The template defines multiple Azure resources: |
| 40 | + |
| 41 | +- [**Microsoft.KeyVault/vaults**](/azure/templates/microsoft.keyvault/vaults): The instance of Key Vault with the sample database. |
| 42 | +- [**Microsoft.Network/networkSecurityPerimeters**](/azure/templates/microsoft.network/networksecurityperimeters): The network security perimeter that you use to access the instance of Key Vault. |
| 43 | +- [**Microsoft.Network/networkSecurityPerimeters/profiles**](/azure/templates/microsoft.network/networksecurityperimeters/profiles): The network security perimeter profile that you use to access the instance of Key Vault. |
| 44 | +- [**Microsoft.Network/networkSecurityPerimeters/profiles/accessRules**](/azure/templates/microsoft.network/networksecurityperimeters/profiles/accessrules): The access rules that you use to access the instance of Key Vault. |
| 45 | +- [**Microsoft.Network/networkSecurityPerimeters/resourceAssociations**](/azure/templates/microsoft.network/networksecurityperimeters/resourceassociations): The resource associations that you use to access the instance of Key Vault. |
| 46 | + |
| 47 | +## Deploy the template |
| 48 | + |
| 49 | +Deploy the ARM template to Azure by doing the following: |
| 50 | + |
| 51 | +1. Sign in to Azure and open the ARM template by selecting the **Deploy to Azure** button here. The template creates the network security perimeter and an Azure Key Vault instance. |
| 52 | + |
| 53 | + |
| 54 | + |
| 55 | +1. Select your resource group or create a new one. |
| 56 | +1. Enter the SQL administrator sign-in name and password. |
| 57 | +1. Enter the virtual machine administrator username and password. |
| 58 | +1. Read the terms and conditions statement. If you agree, select **I agree to the terms and conditions stated above**, and then select **Purchase**. The deployment can take 20 minutes or longer to complete. |
| 59 | + |
| 60 | +## Validate the deployment |
| 61 | + |
| 62 | + |
| 63 | + |
| 64 | + |
| 65 | +## Clean up resources |
| 66 | + |
| 67 | +When you no longer need the resources that you created with the private endpoint, delete the resource group. Doing so removes the private endpoint and all the related resources. |
| 68 | + |
| 69 | +To delete the resource group, run the `Remove-AzResourceGroup` cmdlet: |
| 70 | + |
| 71 | +```azurepowershell-interactive |
| 72 | +Remove-AzResourceGroup -Name <your resource group name> |
| 73 | +``` |
| 74 | + |
| 75 | +## Next steps |
| 76 | + |
| 77 | +For more information about the services that support private endpoints, see: |
| 78 | +> [!div class="nextstepaction"] |
| 79 | +> [What is Azure Private Link?](private-link-overview.md#availability) |
0 commit comments