Are you trying to deploy an Azure Resource Manager (ARM) template and getting the error MissingSubscriptionRegistration
? In this article we’ll take a look at what the cause of the error is, and how you can easily rectify the problem.
Sometimes when trying to run an ARM template in a new subscription to create Azure resources, customers come across the following error:
MissingSubscriptionRegistration: The subscription is not registered to use namespace 'Microsoft.Web'
The namespace may be different depending on the resources you’re trying to create - but effectively this error is telling you that for your subscription, you cannot create resources belonging to the aforementioned namespace. In the case of this example, that’s Microsoft.Web
- specifically an App Service.
By default, a new subscription will have most resource providers disabled as a precautionary security measure. You can see a full list of default enabled providers here.
By having most providers disabled, compromised accounts are unable to create a raft of resources. Therefore it’s critical that you only enable namespaces you need to use.
Normally deploying an ARM template should automatically enable the resource namespace - but sometimes it doesn’t work as expected. Similarly, creating a resource manually in the Azure portal should also automatically enable the resource namespace.
Fixing this error is quite straightforward, assuming you have owner or contributor access to the subscription. If you don’t, you’ll need to get your IT administrator to make these changes on your behalf.
Open the Azure Portal, navigate to Subscriptions
and choose the subscription you’re trying to deploy the ARM template into. Then, go to Resource providers
in the sidebar.
Now scroll through the list of all resource providers until you see the one mentioned in the error message you received. Click the namespace to highlight it, and then choose Register
from the menu bar.
This will now activate the namespace, allowing you to create resources that reside within it and thereby the error will be resolved.
Note however that the namespace may not be activated immediately - you may need to wait up to 15 minutes before running the ARM template deployment again.
The registering status shows in the portal while the namespace is being activated - so a quick refresh of the page will allow you to see when the work is completed.