La délégation de sous-réseau dans les réseaux virtuels Azure donne des autorisations explicites aux services pour créer des ressources spécifiques au service dans le sous-réseau à l’aide d’un identificateur unique lors du déploiement du service. Cet article explique comment ajouter ou supprimer la délégation de sous-réseau pour les services Azure, ce qui vous permet de gérer efficacement les autorisations réseau.
Prerequisites
Compte Azure avec un abonnement actif.
Créez un compte gratuitement.
Si vous n’avez pas créé le sous-réseau que vous souhaitez déléguer à un service Azure, vous devez disposer de l’autorisation suivante : Microsoft.Network/virtualNetworks/subnets/write. Le rôle intégré Contributeur réseau inclut également les autorisations nécessaires.
Compte Azure avec un abonnement actif.
Créez un compte gratuitement.
Si vous n’avez pas créé le sous-réseau que vous souhaitez déléguer à un service Azure, vous devez disposer de l’autorisation suivante : Microsoft.Network/virtualNetworks/subnets/write. Le rôle intégré Contributeur réseau inclut également les autorisations nécessaires.
Azure PowerShell installé localement ou Azure Cloud Shell.
Connectez-vous à Azure PowerShell et vérifiez que l’abonnement avec lequel vous souhaitez utiliser cette fonctionnalité est sélectionné. Pour plus d’informations, consultez Se connecter avec Azure PowerShell.
Vérifiez que la version du module Az.Network est 4.3.0 ou ultérieure. Pour vérifier le module installé, utilisez la commande Get-InstalledModule -Name "Az.Network". Si le module nécessite une mise à jour, utilisez la commande Update-Module -Name Az.Network, si nécessaire.
Si vous choisissez d’installer et d’utiliser PowerShell en local, vous devez exécuter le module Azure PowerShell version 5.4.1 ou ultérieure pour les besoins de cet article. Exécutez Get-Module -ListAvailable Az pour rechercher la version installée. Si vous devez effectuer une mise à niveau, consultez Installer le module Azure PowerShell. Si vous exécutez PowerShell en local, vous devez également exécuter Connect-AzAccount pour créer une connexion avec Azure.
Compte Azure avec un abonnement actif.
Créez un compte gratuitement.
Si vous n’avez pas créé le sous-réseau que vous souhaitez déléguer à un service Azure, vous devez disposer de l’autorisation suivante : Microsoft.Network/virtualNetworks/subnets/write. Le rôle intégré Contributeur réseau inclut également les autorisations nécessaires.
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour obtenir plus d’informations, consultez Démarrage d’Azure Cloud Shell.
Si vous préférez exécuter les commandes de référence de l’interface de ligne de commande localement, installez l’interface Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Guide pratique pour exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour finir le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour obtenir d’autres options de connexion, consultez S’authentifier auprès d’Azure à l’aide d’Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser et gérer des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
- Cet article pratique nécessite la version 2.31.0 ou ultérieure d’Azure CLI. Si vous utilisez Azure Cloud Shell, la version la plus récente est déjà installée.
Créer un réseau virtuel
Dans cette section, vous allez créer un réseau virtuel et le sous-réseau que vous déléguerez à un service Azure.
La procédure suivante crée un réseau virtuel avec un sous-réseau ressource.
Dans le portail, recherchez et sélectionnez Réseaux virtuels.
Dans la page Réseaux virtuels, sélectionnez + Créer.
Sous l’onglet Général de la page Créer un réseau virtuel, entrez ou sélectionnez les informations suivantes :
| Setting |
Value |
|
Détails du projet |
|
| Subscription |
Sélectionnez votre abonnement. |
| groupe de ressources |
Sélectionnez Créer nouveau.
Entrez test-rg dans Nom.
Sélectionnez OK. |
|
Détails de l’instance |
|
| Name |
Entrez vnet-1. |
| Region |
Sélectionnez USA Est 2. |
Sélectionnez Suivant pour passer à l’onglet Sécurité.
Sélectionnez Suivant pour passer à l’onglet Adresses IP.
Dans la zone Espace d’adressage de Sous-réseaux, sélectionnez le sous-réseau par défaut.
Dans Modifier le sous-réseau, entrez ou sélectionnez les informations suivantes :
| Setting |
Value |
| Objectif du sous-réseau |
Laissez la valeur par défaut sur Par défaut. |
| Name |
Entrez subnet-1. |
Laissez le reste des paramètres avec leur valeur par défaut. Cliquez sur Enregistrer.
Cliquez sur Enregistrer.
Sélectionnez Vérifier + créer dans la partie inférieure de l’écran, puis une fois la validation réussie, sélectionnez Créer.
Créer un groupe de ressources
Créez un groupe de ressources avec New-AzResourceGroup. Un groupe de ressources Azure est un conteneur logique dans lequel les ressources Azure sont déployées et gérées.
L’exemple suivant crée un groupe de ressources nommé test-rg à l’emplacement eastus2 :
$rg = @{
Name = 'test-rg'
Location = 'eastus2'
}
New-AzResourceGroup @rg
Création d’un réseau virtuel
Créez un réseau virtuel nommé vnet-1 avec un sous-réseau nommé subnet-1 avec New-AzVirtualNetworkSubnetConfig dans test-rg en utilisant New-AzVirtualNetwork.
L’espace d’adressage IP pour le réseau virtuel est 10.0.0.0/16. Un sous-réseau au sein du réseau virtuel est 10.0.0.0/24.
$sub = @{
Name = 'subnet-1'
AddressPrefix = '10.0.0.0/24'
}
$subnet = New-AzVirtualNetworkSubnetConfig @sub
$net = @{
Name = 'vnet-1'
ResourceGroupName = 'test-rg'
Location = 'eastus2'
AddressPrefix = '10.0.0.0/16'
Subnet = $subnet
}
New-AzVirtualNetwork @net
Créer un groupe de ressources
Créez un groupe de ressources avec az group create. Un groupe de ressources Azure est un conteneur logique dans lequel les ressources Azure sont déployées et gérées.
L’exemple suivant crée un groupe de ressources nommé test-rg à l’emplacement eastu2 :
az group create \
--name test-rg \
--location eastus2
Créez un réseau virtuel
Créez un réseau virtuel nommé vnet-1 avec un sous-réseau nommé subnet-1 dans test-rg en utilisant az network vnet create.
az network vnet create \
--resource-group test-rg \
--location eastus2 \
--name vnet-1 \
--address-prefix 10.0.0.0/16 \
--subnet-name subnet-1 \
--subnet-prefix 10.0.0.0/24
Déléguer un sous-réseau à un service Azure
Dans le cadre de cette section, vous allez déléguer le sous-réseau que vous avez créé à la section précédente à un service Azure.
Connectez-vous au portail Azure.
Dans la zone de recherche située en haut du portail, entrez Réseau virtuel. Sélectionnez Réseaux virtuels dans les résultats de la recherche.
Sélectionnez vnet-1.
Sélectionnez Sous-réseaux dans Paramètres.
Sélectionnez subnet-1.
Entrez ou sélectionnez les informations suivantes :
| Setting |
Value |
|
DÉLÉGATION DE SOUS-RÉSEAU |
|
| Déléguer un sous-réseau à un service |
Sélectionnez le service auquel vous souhaitez déléguer le sous-réseau. Par exemple, Microsoft. Sql/managedInstances. |
Cliquez sur Enregistrer.
Utilisez Add-AzDelegation pour mettre à jour le sous-réseau nommé subnet-1 avec une délégation nommée myDelegation à un service Azure. Dans cet exemple, Microsoft. Sql/managedInstances est utilisé pour l’exemple de délégation :
$net = @{
Name = 'vnet-1'
ResourceGroupName = 'test-rg'
}
$vnet = Get-AzVirtualNetwork @net
$sub = @{
Name = 'subnet-1'
VirtualNetwork = $vnet
}
$subnet = Get-AzVirtualNetworkSubnetConfig @sub
$del = @{
Name = 'myDelegation'
ServiceName = 'Microsoft.Sql/managedInstances'
Subnet = $subnet
}
$subnet = Add-AzDelegation @del
Set-AzVirtualNetwork -VirtualNetwork $vnet
Utilisez Get-AzDelegation pour vérifier la délégation :
$sub = @{
Name = 'vnet-1'
ResourceGroupName = 'test-rg'
}
$subnet = Get-AzVirtualNetwork @sub | Get-AzVirtualNetworkSubnetConfig -Name 'subnet-1'
$dg = @{
Name ='myDelegation'
Subnet = $subnet
}
Get-AzDelegation @dg
ProvisioningState : Succeeded
ServiceName : Microsoft.Sql/managedInstances
Actions : {Microsoft.Network/virtualNetworks/subnets/join/action}
Name : myDelegation
Etag : W/"9cba4b0e-2ceb-444b-b553-454f8da07d8a"
Id : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/vnet-1/subnets/subnet-1/delegations/myDelegation
Utilisez az network virtual network subnet update pour mettre à jour le sous-réseau nommé subnet-1 avec une délégation à un service Azure. Dans cet exemple, Microsoft. Sql/managedInstances est utilisé pour l’exemple de délégation :
az network vnet subnet update \
--resource-group test-rg \
--name subnet-1 \
--vnet-name vnet-1 \
--delegations Microsoft.Sql/managedInstances
Pour vérifier que la délégation a été appliquée, utilisez az network vnet subnet show. Vérifiez que le service est délégué au sous-réseau dans la propriété serviceName :
az network vnet subnet show \
--resource-group test-rg \
--name subnet-1 \
--vnet-name vnet-1 \
--query delegations
[
{
"actions": [
"Microsoft.Network/virtualNetworks/subnets/join/action",
"Microsoft.Network/virtualNetworks/subnets/prepareNetworkPolicies/action",
"Microsoft.Network/virtualNetworks/subnets/unprepareNetworkPolicies/action"
],
"etag": "W/\"30184721-8945-4e4f-9cc3-aa16b26589ac\"",
"id": "/subscriptions/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/vnet-1/subnets/subnet-1/delegations/0",
"name": "0",
"provisioningState": "Succeeded",
"resourceGroup": "test-rg",
"serviceName": "Microsoft.Sql/managedInstances",
"type": "Microsoft.Network/virtualNetworks/subnets/delegations"
}
]
Supprimer une délégation de sous-réseau d’un service Azure
Dans cette section, vous supprimez une délégation de sous-réseau pour un service Azure.
Connectez-vous au portail Azure.
Dans la zone de recherche située en haut du portail, entrez Réseau virtuel. Sélectionnez Réseaux virtuels dans les résultats de la recherche.
Sélectionnez vnet-1.
Sélectionnez Sous-réseaux dans Paramètres.
Sélectionnez subnet-1.
Entrez ou sélectionnez les informations suivantes :
| Setting |
Value |
|
DÉLÉGATION DE SOUS-RÉSEAU |
|
| Déléguer un sous-réseau à un service |
Sélectionnez Aucun. |
Cliquez sur Enregistrer.
Utilisez Remove-AzDelegation pour supprimer la délégation du sous-réseau nommé subnet-1 :
$net = @{
Name = 'vnet-1'
ResourceGroupName = 'test-rg'
}
$vnet = Get-AzVirtualNetwork @net
$sub = @{
Name = 'subnet-1'
VirtualNetwork = $vnet
}
$subnet = Get-AzVirtualNetworkSubnetConfig @sub
$del = @{
Name = 'myDelegation'
Subnet = $subnet
}
$subnet = Remove-AzDelegation @del
Set-AzVirtualNetwork -VirtualNetwork $vnet
Utilisez Get-AzDelegation pour vérifier que la délégation a été supprimée :
$sub = @{
Name = 'vnet-1'
ResourceGroupName = 'test-rg'
}
$subnet = Get-AzVirtualNetwork @sub | Get-AzVirtualNetworkSubnetConfig -Name 'subnet-1'
$dg = @{
Name ='myDelegation'
Subnet = $subnet
}
Get-AzDelegation @dg
Get-AzDelegation: Sequence contains no matching element
Utilisez az network vnet subnet update pour supprimer la délégation du sous-réseau nommé subnet-1 :
az network vnet subnet update \
--resource-group test-rg \
--name subnet-1 \
--vnet-name vnet-1 \
--remove delegations
Pour vérifier que la délégation a été supprimée, utilisez az network vnet subnet show. Vérifiez que le service est retiré du sous-réseau dans la propriété serviceName :
az network vnet subnet show \
--resource-group test-rg \
--name subnet-1 \
--vnet-name vnet-1 \
--query delegations
La sortie de la commande est un crochet NULL :
[]
Lorsque vous avez terminé d’utiliser les ressources que vous avez créées, vous pouvez supprimer le groupe de ressources et toutes ses ressources.
Depuis le portail Azure, recherchez et sélectionnez Groupes de ressources.
Dans la page Groupes de ressources, sélectionnez le groupe de ressources test-rg.
Dans la page test-rg, sélectionnez Supprimer le groupe de ressources.
Entrez test-rg dans Entrez le nom du groupe de ressources pour confirmer la suppression, puis sélectionnez Supprimer.
Étapes suivantes