Create a Key Vault

Last updated: 08-09-2017

This template creates a Key Vault and assigns permissions to the supplied objectId (principal).

This Azure Resource Manager (ARM) template was created by a member of the community and not by Microsoft. Each ARM template is licensed to you under a licence agreement by its owner, not Microsoft. Microsoft is not responsible for ARM templates provided and licensed by community members and does not screen for security, compatibility or performance. Community ARM templates are not supported under any Microsoft support programme or service and are made available AS IS without warranty of any kind.

Parameters

Parameter Name Description
keyVaultName Name of the Vault
tenantId Tenant Id of the subscription. Get using Get-AzureRmSubscription cmdlet or Get Subscription API
objectId Object Id of the AD user. Get using Get-AzureRmADUser or Get-AzureRmADServicePrincipal cmdlets
keysPermissions Permissions to keys in the vault. Valid values are: all, create, import, update, get, list, delete, backup, restore, encrypt, decrypt, wrapkey, unwrapkey, sign, and verify.
secretsPermissions Permissions to secrets in the vault. Valid values are: all, get, set, list, and delete.
skuName SKU for the vault
enableVaultForDeployment Specifies if the vault is enabled for a VM deployment
enableVaultForDiskEncryption Specifies if the azure platform has access to the vault for enabling disk encryption scenarios.
enabledForTemplateDeployment Specifies whether Azure Resource Manager is permitted to retrieve secrets from the key vault.

Use the template

PowerShell

New-AzureRmResourceGroupDeployment -Name <deployment-name> -ResourceGroupName <resource-group-name> -TemplateUri https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/101-key-vault-create/azuredeploy.json
Install and configure Azure PowerShell

Command line

azure config mode arm
azure group deployment create <my-resource-group> <my-deployment-name> --template-uri https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/101-key-vault-create/azuredeploy.json
Install and Configure the Azure Cross-Platform Command-Line Interface