List Azure Storage Account keys-Windows Custom Script extension

Last updated: 13/05/2015

This template creates a Windows Server 2012 R2 VM and runs a PowerShell script using the custom script extension. It also uses the listKeys function to get the Azure Storage Account keys. The PowerShell script for this sample must be hosted in an Azure Storage account. (Note: For other samples custom script can also be hosted in Github)

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.


Parameter Name Description
newStorageAccountName Name of new storage account to be created
vmName Name of the VM to be created
vmSize Size of the VM to be created
adminUsername Admin username
adminPassword Admin password
customScriptStorageAccountName Name of Azure Storage Account where the custom script is located
customScriptFileUri Azure Storage Uri of the custom script file e.g.
customScriptFileToRun Name of the script to be run on the VM
customScriptStorageAccountResourceGroup Name of the Resource Group of the storage account containing the storage account which contains the script

Use the template


New-AzResourceGroup -Name <resource-group-name> -Location <resource-group-location> #use this command when you need to create a new resource group for your deployment
New-AzResourceGroupDeployment -ResourceGroupName <resource-group-name> -TemplateUri
Installing and configuring Azure PowerShell

Command line

az group create --name <resource-group-name> --location <resource-group-location> #use this command when you need to create a new resource group for your deployment
az group deployment create --resource-group <my-resource-group> --template-uri
Installing and configuring the Azure cross-platform command-line interface