Fournisseurs et types de ressources Azure
Un fournisseur de ressources Azure est un ensemble d’opérations REST qui activent les fonctionnalités d’un service Azure spécifique. Par exemple, le service Key Vault se compose d’un fournisseur de ressources nommé Microsoft.KeyVault. Le fournisseur de ressources définit les opérations REST de gestion des coffres, secrets, clés et certificats.
Le fournisseur de ressources définit les ressources Azure que vous pouvez déployer sur votre compte. Le nom d’un type de ressource suit le format : {fournisseur de ressources}/{type de ressource}. Le type de ressource pour un coffre de clés est Microsoft.KeyVault/vaults.
Dans cet article, vous apprendrez comment :
- Afficher tous les fournisseurs de ressources dans Azure
- Vérifier l’état de l’inscription d’un fournisseur de ressources
- Inscrire un fournisseur de ressources
- Afficher les types de ressources pour un fournisseur de ressources
- Afficher les emplacements valides pour un type de ressource
- Afficher les versions d’API valides pour un type de ressource
Pour obtenir la liste qui mappe les fournisseurs de ressources aux services Azure, consultez Fournisseurs de ressources pour les services Azure.
S’inscrire auprès du fournisseur de ressources
Avant d’utiliser un fournisseur de ressources, vous devez vous assurer que votre abonnement Azure est inscrit auprès du fournisseur de ressources. L’inscription permet de configurer votre abonnement pour qu’il fonctionne avec le fournisseur de ressources.
Important
Inscrivez un fournisseur de ressources uniquement au moment où vous êtes prêt à l’utiliser. L’étape d’inscription vous aide à conserver les privilèges minimaux dans votre abonnement. Un utilisateur malveillant ne peut pas utiliser des fournisseurs de ressources non inscrits.
L’inscription de fournisseurs de ressources inutiles peut entraîner l’apparition d’applications non reconnues dans votre locataire Microsoft Entra. Microsoft ajoute l’application pour un fournisseur de ressources lorsque vous l’inscrivez. Ces applications sont généralement ajoutées par l’API Gestion des services de Windows Azure. Pour éviter des applications inutiles dans votre locataire, inscrivez uniquement les fournisseurs de ressources nécessaires.
Certains fournisseurs de ressources sont inscrits par défaut. Pour obtenir la liste des fournisseurs de ressources inscrits par défaut, consultez Fournisseurs de ressources pour les services Azure.
D’autres fournisseurs de ressources sont inscrits automatiquement lorsque vous effectuez certaines actions. Lorsque vous créez une ressource via le portail, le fournisseur de ressources est généralement inscrit pour vous. Lorsque vous déployez un modèle Azure Resource Manager ou un fichier Bicep, les fournisseurs de ressources définis dans le modèle sont inscrits automatiquement. Parfois, une ressource du modèle nécessite des ressources de prise en charge qui ne figurent pas dans le modèle. Les ressources d’analyse ou de sécurité sont des exemples courants. Vous devez inscrire ces fournisseurs de ressources manuellement.
Pour d’autres scénarios, il se peut que vous deviez inscrire manuellement un fournisseur de ressources.
Important
Votre code d’application ne doit pas bloquer la création de ressources pour un fournisseur de ressources qui est en cours d’inscription. Lorsque vous inscrivez le fournisseur de ressources, l’opération est effectuée individuellement pour chaque région prise en charge. Pour créer des ressources dans une région, l’inscription doit uniquement être effectuée dans cette région. En ne bloquant pas le fournisseur de ressources à l’état d’inscription en cours, votre application peut poursuivre beaucoup plus tôt qu’en attendant la fin de l’inscription pour toutes les régions.
Vous devez être autorisé à effectuer l’opération /register/action
pour le fournisseur de ressources. Cette autorisation est incluse dans les rôles Contributeur et Propriétaire.
Vous ne pouvez pas annuler l’inscription d’un fournisseur de ressources quand vous avez encore des types de ressources de ce fournisseur de ressources dans votre abonnement.
Réinscrivez un fournisseur de ressources lorsque le fournisseur de ressources prend en charge les nouveaux emplacements que vous devez utiliser.
Portail Azure
S’inscrire auprès du fournisseur de ressources
Pour afficher tous les fournisseurs de ressources et l'état d'inscription de votre abonnement :
Connectez-vous au portail Azure.
Dans le menu du portail Azure, recherchez Abonnements. Sélectionnez-le parmi les options disponibles.
Sélectionnez l’abonnement que vous souhaitez afficher.
Dans le menu de gauche, sous Paramètres, sélectionnez Fournisseurs de ressources.
Recherchez le fournisseur de ressources que vous souhaitez inscrire.
Sélectionnez le fournisseur de ressources pour afficher les détails du fournisseur de ressources.
Sélectionnez le fournisseur de ressources puis sélectionnez Inscrire. Pour conserver les privilèges minimaux dans votre abonnement, inscrivez uniquement les fournisseurs de ressources que vous êtes prêt à utiliser.
Important
Comme indiqué précédemment, ne bloquez pas la création de ressources pour un fournisseur de ressources qui est en cours d’inscription. En ne bloquant pas le fournisseur de ressources à l’état d’inscription en cours, votre application peut poursuivre beaucoup plus tôt qu’en attendant la fin de l’inscription pour toutes les régions.
Réinscrivez un fournisseur de ressources pour utiliser les emplacements qui ont été ajoutés depuis l’inscription précédente.
Afficher un fournisseur de ressources
Pour afficher des informations pour un fournisseur de ressources particulier :
Connectez-vous au portail Azure.
Dans le menu du portail Azure, sélectionnez Tous les services.
Dans la zone Tous les services, entrez Explorateur de ressources, puis sélectionnez Explorateur de ressources.
Développez Fournisseurs en sélectionnant la flèche droite.
Développez le fournisseur de ressources et le type de ressource que vous souhaitez afficher.
Resource Manager est pris en charge dans toutes les régions, mais il est possible que certaines ressources que vous déployez ne soient pas prises en charge dans toutes les régions. En outre, il peut y avoir des limitations sur votre abonnement qui vous empêchent d’utiliser certaines régions prenant en charge la ressource. L’Explorateur de ressources affiche les emplacements valides pour le type de ressource.
La version d'API correspond à une version des opérations de l'API REST du fournisseur de ressources. Lorsqu'un fournisseur de ressources active de nouvelles fonctionnalités, une nouvelle version de l'API REST sera publiée. L’Explorateur de ressources affiche les versions d’API valides pour le type de ressource.
Azure PowerShell
Pour afficher tous les fournisseurs de ressources dans Azure et l’état de l’inscription de votre abonnement, utilisez :
Get-AzResourceProvider -ListAvailable | Select-Object ProviderNamespace, RegistrationState
Cette commande renvoie :
ProviderNamespace RegistrationState
-------------------------------- ------------------
Microsoft.ClassicCompute Registered
Microsoft.ClassicNetwork Registered
Microsoft.ClassicStorage Registered
Microsoft.CognitiveServices Registered
...
Pour afficher tous les fournisseurs de ressources inscrits pour votre abonnement, utilisez la commande suivante :
Get-AzResourceProvider -ListAvailable | Where-Object RegistrationState -eq "Registered" | Select-Object ProviderNamespace, RegistrationState | Sort-Object ProviderNamespace
Pour conserver les privilèges minimaux dans votre abonnement, inscrivez uniquement les fournisseurs de ressources que vous êtes prêt à utiliser. Pour inscrire un fournisseur de ressources, utilisez :
Register-AzResourceProvider -ProviderNamespace Microsoft.Batch
Cette commande renvoie :
ProviderNamespace : Microsoft.Batch
RegistrationState : Registering
ResourceTypes : {batchAccounts, operations, locations, locations/quotas}
Locations : {West Europe, East US, East US 2, West US...}
Important
Comme indiqué précédemment, ne bloquez pas la création de ressources pour un fournisseur de ressources qui est en cours d’inscription. En ne bloquant pas le fournisseur de ressources à l’état d’inscription en cours, votre application peut poursuivre beaucoup plus tôt qu’en attendant la fin de l’inscription pour toutes les régions.
Réinscrivez un fournisseur de ressources pour utiliser les emplacements qui ont été ajoutés depuis l’inscription précédente. Pour vous réinscrire, réexécutez la commande d’inscription.
Pour afficher des informations pour un fournisseur de ressources particulier, utilisez :
Get-AzResourceProvider -ProviderNamespace Microsoft.Batch
Cette commande renvoie :
{ProviderNamespace : Microsoft.Batch
RegistrationState : Registered
ResourceTypes : {batchAccounts}
Locations : {West Europe, East US, East US 2, West US...}
...
Pour afficher les types de ressources pour un fournisseur de ressources, utilisez :
(Get-AzResourceProvider -ProviderNamespace Microsoft.Batch).ResourceTypes.ResourceTypeName
Cette commande renvoie :
batchAccounts
operations
locations
locations/quotas
La version d'API correspond à une version des opérations de l'API REST du fournisseur de ressources. Lorsqu'un fournisseur de ressources active de nouvelles fonctionnalités, une nouvelle version de l'API REST sera publiée.
Pour obtenir les versions d’API disponibles pour un type de ressource, utilisez :
((Get-AzResourceProvider -ProviderNamespace Microsoft.Batch).ResourceTypes | Where-Object ResourceTypeName -eq batchAccounts).ApiVersions
Cette commande renvoie :
2023-05-01
2022-10-01
2022-06-01
2022-01-01
2021-06-01
2021-01-01
...
Resource Manager est pris en charge dans toutes les régions, mais il est possible que certaines ressources que vous déployez ne soient pas prises en charge dans toutes les régions. En outre, il peut y avoir des limitations sur votre abonnement qui vous empêchent d’utiliser certaines régions prenant en charge la ressource.
Pour obtenir les emplacements pris en charge pour un type de ressource, utilisez :
((Get-AzResourceProvider -ProviderNamespace Microsoft.Batch).ResourceTypes | Where-Object ResourceTypeName -eq batchAccounts).Locations
Cette commande renvoie :
West Europe
East US
East US 2
West US
...
Azure CLI
Pour afficher tous les fournisseurs de ressources dans Azure et l’état de l’inscription de votre abonnement, utilisez :
az provider list --query "[].{Provider:namespace, Status:registrationState}" --out table
Cette commande renvoie :
Provider Status
-------------------------------- ----------------
Microsoft.ClassicCompute Registered
Microsoft.ClassicNetwork Registered
Microsoft.ClassicStorage Registered
Microsoft.CognitiveServices Registered
...
Pour afficher tous les fournisseurs de ressources inscrits pour votre abonnement, utilisez la commande suivante :
az provider list --query "sort_by([?registrationState=='Registered'].{Provider:namespace, Status:registrationState}, &Provider)" --out table
Pour conserver les privilèges minimaux dans votre abonnement, inscrivez uniquement les fournisseurs de ressources que vous êtes prêt à utiliser. Pour inscrire un fournisseur de ressources, utilisez :
az provider register --namespace Microsoft.Batch
La commande retourne un message indiquant que l’inscription est en cours.
Pour afficher des informations pour un fournisseur de ressources particulier, utilisez :
az provider show --namespace Microsoft.Batch
Cette commande renvoie :
{
"id": "/subscriptions/####-####/providers/Microsoft.Batch",
"namespace": "Microsoft.Batch",
"registrationsState": "Registering",
"resourceTypes:" [
...
]
}
Important
Comme indiqué précédemment, ne bloquez pas la création de ressources pour un fournisseur de ressources qui est en cours d’inscription. En ne bloquant pas le fournisseur de ressources à l’état d’inscription en cours, votre application peut poursuivre beaucoup plus tôt qu’en attendant la fin de l’inscription pour toutes les régions.
Pour afficher les types de ressources pour un fournisseur de ressources, utilisez :
az provider show --namespace Microsoft.Batch --query "resourceTypes[*].resourceType" --out table
Cette commande renvoie :
Result
---------------
batchAccounts
operations
locations
locations/quotas
La version d'API correspond à une version des opérations de l'API REST du fournisseur de ressources. Lorsqu'un fournisseur de ressources active de nouvelles fonctionnalités, une nouvelle version de l'API REST sera publiée.
Pour obtenir les versions d’API disponibles pour un type de ressource, utilisez :
az provider show --namespace Microsoft.Batch --query "resourceTypes[?resourceType=='batchAccounts'].apiVersions | [0]" --out table
Cette commande renvoie :
Result
---------------
2023-05-01
2022-10-01
2022-06-01
2022-01-01
...
Resource Manager est pris en charge dans toutes les régions, mais il est possible que certaines ressources que vous déployez ne soient pas prises en charge dans toutes les régions. En outre, il peut y avoir des limitations sur votre abonnement qui vous empêchent d’utiliser certaines régions prenant en charge la ressource.
Pour obtenir les emplacements pris en charge pour un type de ressource, utilisez :
az provider show --namespace Microsoft.Batch --query "resourceTypes[?resourceType=='batchAccounts'].locations | [0]" --out table
Cette commande renvoie :
Result
---------------
West Europe
East US
East US 2
West US
...
Python
Pour afficher tous les fournisseurs de ressources dans Azure et l’état de l’inscription de votre abonnement, utilisez :
import os
from azure.identity import DefaultAzureCredential
from azure.mgmt.resource import ResourceManagementClient
# Authentication
credential = DefaultAzureCredential()
subscription_id = os.environ["AZURE_SUBSCRIPTION_ID"]
# Initialize Resource Management client
resource_management_client = ResourceManagementClient(credential, subscription_id)
# List available resource providers and select ProviderNamespace and RegistrationState
providers = resource_management_client.providers.list()
for provider in providers:
print(f"ProviderNamespace: {provider.namespace}, RegistrationState: {provider.registration_state}")
Cette commande renvoie :
ProviderNamespace: Microsoft.AlertsManagement, RegistrationState: Registered
ProviderNamespace: Microsoft.AnalysisServices, RegistrationState: Registered
ProviderNamespace: Microsoft.ApiManagement, RegistrationState: Registered
ProviderNamespace: Microsoft.Authorization, RegistrationState: Registered
ProviderNamespace: Microsoft.Batch, RegistrationState: Registered
...
Pour afficher tous les fournisseurs de ressources inscrits pour votre abonnement, utilisez la commande suivante :
# List available resource providers with RegistrationState "Registered" and select ProviderNamespace and RegistrationState
providers = resource_management_client.providers.list()
registered_providers = [provider for provider in providers if provider.registration_state == "Registered"]
# Sort by ProviderNamespace
sorted_registered_providers = sorted(registered_providers, key=lambda x: x.namespace)
for provider in sorted_registered_providers:
print(f"ProviderNamespace: {provider.namespace}, RegistrationState: {provider.registration_state}")
Pour conserver les privilèges minimaux dans votre abonnement, inscrivez uniquement les fournisseurs de ressources que vous êtes prêt à utiliser. Pour inscrire un fournisseur de ressources, utilisez :
import os
from azure.identity import DefaultAzureCredential
from azure.mgmt.resource import ResourceManagementClient
# Authentication
credential = DefaultAzureCredential()
subscription_id = os.environ["AZURE_SUBSCRIPTION_ID"]
# Initialize Resource Management client
resource_management_client = ResourceManagementClient(credential, subscription_id)
# Register resource provider
provider_namespace = "Microsoft.Batch"
registration_result = resource_management_client.providers.register(provider_namespace)
print(f"ProviderNamespace: {registration_result.namespace}, RegistrationState: {registration_result.registration_state}")
Cette commande renvoie :
ProviderNamespace: Microsoft.Batch, RegistrationState: Registered
Important
Comme indiqué précédemment, ne bloquez pas la création de ressources pour un fournisseur de ressources qui est en cours d’inscription. En ne bloquant pas le fournisseur de ressources à l’état d’inscription en cours, votre application peut poursuivre beaucoup plus tôt qu’en attendant la fin de l’inscription pour toutes les régions.
Réinscrivez un fournisseur de ressources pour utiliser les emplacements qui ont été ajoutés depuis l’inscription précédente. Pour vous réinscrire, réexécutez la commande d’inscription.
Pour afficher des informations pour un fournisseur de ressources particulier, utilisez :
import os
from azure.identity import DefaultAzureCredential
from azure.mgmt.resource import ResourceManagementClient
# Authentication
credential = DefaultAzureCredential()
subscription_id = os.environ["AZURE_SUBSCRIPTION_ID"]
# Initialize Resource Management client
resource_management_client = ResourceManagementClient(credential, subscription_id)
# Get resource provider by ProviderNamespace
provider_namespace = "Microsoft.Batch"
provider = resource_management_client.providers.get(provider_namespace)
print(f"ProviderNamespace: {provider.namespace}, RegistrationState: {provider.registration_state}\n")
# Add resource types, locations, and API versions with new lines to separate results
for resource_type in provider.resource_types:
print(f"ResourceType: {resource_type.resource_type}\nLocations: {', '.join(resource_type.locations)}\nAPIVersions: {', '.join(resource_type.api_versions)}\n")
Cette commande renvoie :
ProviderNamespace: Microsoft.Batch, RegistrationState: Registered
ResourceType: batchAccounts
Locations: West Europe, East US, East US 2, West US, North Central US, Brazil South, North Europe, Central US, East Asia, Japan East, Australia Southeast, Japan West, Korea South, Korea Central, Southeast Asia, South Central US, Australia East, Jio India West, South India, Central India, West India, Canada Central, Canada East, UK South, UK West, West Central US, West US 2, France Central, South Africa North, UAE North, Australia Central, Germany West Central, Switzerland North, Norway East, Brazil Southeast, West US 3, Sweden Central, Qatar Central, Poland Central, East US 2 EUAP, Central US EUAP
APIVersions: 2023-05-01, 2022-10-01, 2022-06-01, 2022-01-01, 2021-06-01, 2021-01-01, 2020-09-01, 2020-05-01, 2020-03-01-preview, 2020-03-01, 2019-08-01, 2019-04-01, 2018-12-01, 2017-09-01, 2017-05-01, 2017-01-01, 2015-12-01, 2015-09-01, 2015-07-01, 2014-05-01-privatepreview
...
Pour afficher les types de ressources pour un fournisseur de ressources, utilisez :
# Get resource provider by ProviderNamespace
provider_namespace = "Microsoft.Batch"
provider = resource_management_client.providers.get(provider_namespace)
# Get ResourceTypeName of the resource types
resource_type_names = [resource_type.resource_type for resource_type in provider.resource_types]
for resource_type_name in resource_type_names:
print(resource_type_name)
Cette commande renvoie :
batchAccounts
batchAccounts/pools
batchAccounts/detectors
batchAccounts/certificates
operations
locations
locations/quotas
locations/checkNameAvailability
locations/accountOperationResults
locations/virtualMachineSkus
locations/cloudServiceSkus
La version d'API correspond à une version des opérations de l'API REST du fournisseur de ressources. Lorsqu'un fournisseur de ressources active de nouvelles fonctionnalités, une nouvelle version de l'API REST sera publiée.
Pour obtenir les versions d’API disponibles pour un type de ressource, utilisez :
# Get resource provider by ProviderNamespace
provider_namespace = "Microsoft.Batch"
provider = resource_management_client.providers.get(provider_namespace)
# Filter resource type by ResourceTypeName and get its ApiVersions
resource_type_name = "batchAccounts"
api_versions = [
resource_type.api_versions
for resource_type in provider.resource_types
if resource_type.resource_type == resource_type_name
]
for api_version in api_versions[0]:
print(api_version)
Cette commande renvoie :
2023-05-01
2022-10-01
2022-06-01
2022-01-01
...
Resource Manager est pris en charge dans toutes les régions, mais il est possible que certaines ressources que vous déployez ne soient pas prises en charge dans toutes les régions. En outre, il peut y avoir des limitations sur votre abonnement qui vous empêchent d’utiliser certaines régions prenant en charge la ressource.
Pour obtenir les emplacements pris en charge pour un type de ressource, utilisez :
# Get resource provider by ProviderNamespace
provider_namespace = "Microsoft.Batch"
provider = resource_management_client.providers.get(provider_namespace)
# Filter resource type by ResourceTypeName and get its Locations
resource_type_name = "batchAccounts"
locations = [
resource_type.locations
for resource_type in provider.resource_types
if resource_type.resource_type == resource_type_name
]
for location in locations[0]:
print(location)
Cette commande renvoie :
West Europe
East US
East US 2
West US
...
Étapes suivantes
- Pour en savoir plus sur la création de modèles Resource Manager, consultez Création de modèles Azure Resource Manager.
- Pour afficher les schémas liés aux modèles de fournisseurs de ressources, consultez Référence au modèle.
- Pour obtenir la liste qui mappe les fournisseurs de ressources aux services Azure, consultez Fournisseurs de ressources pour les services Azure.
- Pour afficher les opérations pour un fournisseur de ressources, consultez API REST Azure.