Résoudre les erreurs d’inscription de fournisseurs de ressourcesResolve errors for resource provider registration

Cet article décrit les erreurs que vous pouvez rencontrer quand vous utilisez un fournisseur de ressources que vous n’avez pas jamais utilisé auparavant dans votre abonnement.This article describes the errors you may encounter when using a resource provider that you haven't previously used in your subscription.

Notes

Cet article a été mis à jour pour tenir compte de l’utilisation du nouveau module Az d’Azure PowerShell.This article has been updated to use the new Azure PowerShell Az module. Vous pouvez toujours utiliser le module AzureRM, qui continue à recevoir des correctifs de bogues jusqu’à au moins décembre 2020.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Pour en savoir plus sur le nouveau module Az et la compatibilité avec AzureRM, consultez Présentation du nouveau module Az d’Azure PowerShell.To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Pour des instructions d’installation du module Az, consultez Installer Azure PowerShell.For Az module installation instructions, see Install Azure PowerShell.

SymptômeSymptom

Lorsque vous déployez une ressource, vous pouvez recevoir le message et le code d’erreur suivants :When deploying resource, you may receive the following error code and message:

Code: NoRegisteredProviderFound
Message: No registered resource provider found for location {location}
and API version {api-version} for type {resource-type}.

Vous pouvez sinon recevoir un message similaire indiquant :Or, you may receive a similar message that states:

Code: MissingSubscriptionRegistration
Message: The subscription is not registered to use namespace {resource-provider-namespace}

Le message d’erreur doit fournir des suggestions pour les emplacements et les versions d’API pris en charge.The error message should give you suggestions for the supported locations and API versions. Vous pouvez changer votre modèle en l’une des valeurs suggérées.You can change your template to one of the suggested values. La plupart des fournisseurs sont inscrits automatiquement par le portail Azure ou l’interface de ligne de commande que vous utilisez, mais pas tous.Most providers are registered automatically by the Azure portal or the command-line interface you're using, but not all. Si vous n’avez pas déjà utilisé un certain fournisseur de ressources, vous devrez peut-être l’inscrire.If you haven't used a particular resource provider before, you may need to register that provider.

Ou, lors de la désactivation de l’arrêt automatique pour les machines virtuelles, vous pouvez recevoir un message d’erreur semblable au suivant :Or, when disabling auto-shutdown for virtual machines, you may receive an error message similar to:

Code: AuthorizationFailed
Message: The client '<identifier>' with object id '<identifier>' does not have authorization to perform action 'Microsoft.Compute/virtualMachines/read' over scope ...

Cause :Cause

Ces erreurs apparaissent pour l’une des raisons suivantes :You receive these errors for one of these reasons:

  • Le fournisseur de ressources requis n’a pas été inscrit pour votre abonnementThe required resource provider hasn't been registered for your subscription
  • La version de l’API n’est pas prise en charge pour le type de ressource.API version not supported for the resource type
  • L’emplacement n’est pas pris en charge pour le type de ressource.Location not supported for the resource type
  • Pour l’arrêt automatique des machines virtuelles, le fournisseur de ressources Microsoft.DevTestLab doit être inscrit.For auto-shutdown of VMs, the Microsoft.DevTestLab resource provider must be registered.

Solution 1 : PowerShellSolution 1 - PowerShell

Pour PowerShell, utilisez Get-AzResourceProvider pour afficher l'état de votre inscription.For PowerShell, use Get-AzResourceProvider to see your registration status.

Get-AzResourceProvider -ListAvailable

Pour inscrire un fournisseur, utilisez Register-AzResourceProvider et indiquez le nom du fournisseur de ressources que vous souhaitez inscrire.To register a provider, use Register-AzResourceProvider and provide the name of the resource provider you wish to register.

Register-AzResourceProvider -ProviderNamespace Microsoft.Cdn

Pour obtenir les emplacements pris en charge d’un type particulier de ressource, utilisez la commande suivante :To get the supported locations for a particular type of resource, use:

((Get-AzResourceProvider -ProviderNamespace Microsoft.Web).ResourceTypes | Where-Object ResourceTypeName -eq sites).Locations

Pour obtenir les versions d’API prises en charge d’un type particulier de ressource, utilisez la commande suivante :To get the supported API versions for a particular type of resource, use:

((Get-AzResourceProvider -ProviderNamespace Microsoft.Web).ResourceTypes | Where-Object ResourceTypeName -eq sites).ApiVersions

Solution 2 : Azure CLISolution 2 - Azure CLI

Pour voir si le fournisseur est inscrit, utilisez la commande az provider list .To see whether the provider is registered, use the az provider list command.

az provider list

Pour inscrire un fournisseur de ressources, utilisez la commande az provider register et indiquez l’espace de noms à inscrire.To register a resource provider, use the az provider register command, and specify the namespace to register.

az provider register --namespace Microsoft.Cdn

Pour afficher les emplacements et les versions d’API pris en charge pour un type de ressources, utilisez la commande suivante :To see the supported locations and API versions for a resource type, use:

az provider show -n Microsoft.Web --query "resourceTypes[?resourceType=='sites'].locations"

Solution 3 : Portail AzureSolution 3 - Azure portal

Vous pouvez voir l’état de l’inscription et inscrire un espace de noms de fournisseur de ressources par le biais du portail.You can see the registration status and register a resource provider namespace through the portal.

  1. À partir du portail Azure, sélectionnez Tous les services.From the portal, select All services.

    Sélectionner Tous les services

  2. Sélectionnez Abonnements.Select Subscriptions.

    Sélectionner des abonnements

  3. Dans la liste des abonnements, sélectionnez l’abonnement que vous souhaitez utiliser pour inscrire le fournisseur de ressources.From the list of subscriptions, select the subscription you want to use for registering the resource provider.

    Sélectionner l’abonnement pour inscrire le fournisseur de ressources

  4. Sur votre abonnement, sélectionnez Fournisseurs de ressources.For your subscription, select Resource providers.

    Sélectionner les fournisseurs de ressources

  5. Passez en revue la liste des fournisseurs de ressources et, si nécessaire, sélectionnez le lien Inscrire pour inscrire le fournisseur de ressources du type que vous voulez déployer.Look at the list of resource providers, and if necessary, select the Register link to register the resource provider of the type you're trying to deploy.

    Répertorier les fournisseurs de ressources