Connecter Azure Front Door Premium à une Azure Application Gateway à l’aide de Private Link (préversion)

Cet article vous guide tout au long de la configuration d’Azure Front Door Premium pour vous connecter en privé à votre Azure Application Gateway à l’aide d’Azure Private Link.

Prérequis

Remarque

Nous vous recommandons d’utiliser le module Azure Az PowerShell pour interagir avec Azure. Pour bien démarrer, consultez Installer Azure PowerShell. Pour savoir comment migrer vers le module Az PowerShell, consultez Migrer Azure PowerShell depuis AzureRM vers Az.

Azure Cloud Shell

Azure héberge Azure Cloud Shell, un environnement d’interpréteur de commandes interactif que vous pouvez utiliser dans votre navigateur. Vous pouvez utiliser Bash ou PowerShell avec Cloud Shell pour utiliser les services Azure. Vous pouvez utiliser les commandes préinstallées Cloud Shell pour exécuter le code de cet article sans avoir à installer quoi que ce soit dans votre environnement local.

Pour démarrer Azure Cloud Shell :

Option Exemple/Lien
Sélectionnez Essayer dans le coin supérieur droite d’un bloc de codes ou de commandes. La sélection de Essayer ne copie pas automatiquement le code ni la commande dans Cloud Shell. Capture d’écran présentant un exemple d’essai pour Azure Cloud Shell.
Accédez à https://shell.azure.com ou sélectionnez le bouton Lancer Cloud Shell pour ouvrir Cloud Shell dans votre navigateur. Bouton permettant de lancer Azure Cloud Shell.
Sélectionnez le bouton Cloud Shell dans la barre de menus en haut à droite du portail Azure. Capture d’écran présentant le bouton Cloud Shell dans le portail Azure.

Pour utiliser Azure Cloud Shell :

  1. Démarrez Cloud Shell.

  2. Sélectionnez le bouton Copier sur un bloc de codes (ou un bloc de commandes) pour copier le code ou la commande.

  3. Collez le code ou la commande dans la session Cloud Shell en sélectionnant Ctrl+Maj+V sur Windows et Linux ou en sélectionnant Cmd+Maj+V sur macOS.

  4. Sélectionnez Entrée pour exécuter le code ou la commande.

Activer la connectivité privée vers Azure Application Gateway

Suivez les instructions fournies dans Configurer Azure Application Gateway Private Link, mais n’effectuez pas la dernière étape consistant à créer un point de terminaison privé.

Créer un groupe d’origines et ajouter la passerelle applicative en tant qu’origine

  1. Utilisez la commande New-AzFrontDoorCdnOriginGroupHealthProbeSettingObject pour créer un objet en mémoire pour stocker les paramètres de la sonde d’intégrité.

    $healthProbeSetting = New-AzFrontDoorCdnOriginGroupHealthProbeSettingObject `
        -ProbeIntervalInSecond 60 `
        -ProbePath "/" `
        -ProbeRequestType GET `
        -ProbeProtocol Http
    
  2. Utilisez la commande New-AzFrontDoorCdnOriginGroupLoadBalancingSettingObject pour créer un objet en mémoire pour stocker les paramètres d’équilibrage de charge.

    $loadBalancingSetting = New-AzFrontDoorCdnOriginGroupLoadBalancingSettingObject `
        -AdditionalLatencyInMillisecond 50 `
        -SampleSize 4 `
        -SuccessfulSamplesRequired 3
    
  3. Exécutez la commande New-AzFrontDoorCdnOriginGroup pour créer un groupe d’origines qui contient votre passerelle applicative.

    $origingroup = New-AzFrontDoorCdnOriginGroup `
        -OriginGroupName myOriginGroup `
        -ProfileName myFrontDoorProfile `
        -ResourceGroupName myResourceGroup `
        -HealthProbeSetting $healthProbeSetting `
        -LoadBalancingSetting $loadBalancingSetting
    
  4. Obtenez le nom de configuration IP front-end de l’Application Gateway à l’aide de la commande Get-AzApplicationGatewayFrontendIPConfig.

    $AppGw = Get-AzApplicationGateway -Name myAppGateway -ResourceGroupName myResourceGroup
    $FrontEndIPs= Get-AzApplicationGatewayFrontendIPConfig  -ApplicationGateway $AppGw
    $FrontEndIPs.name
    
  5. Utilisez la commande New-AzFrontDoorCdnOrigin pour ajouter votre passerelle applicative au groupe d’origines.

    New-AzFrontDoorCdnOrigin ` 
        -OriginGroupName myOriginGroup ` 
        -OriginName myAppGatewayOrigin ` 
        -ProfileName myFrontDoorProfile ` 
        -ResourceGroupName myResourceGroup ` 
        -HostName 10.0.0.4 ` 
        -HttpPort 80 ` 
        -HttpsPort 443 ` 
        -OriginHostHeader 10.0.0.4 ` 
        -Priority 1 ` 
        -PrivateLinkId /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/myAppGateway ` 
        -SharedPrivateLinkResourceGroupId $FrontEndIPs.name ` 
        -SharedPrivateLinkResourcePrivateLinkLocation CentralUS ` 
        -SharedPrivateLinkResourceRequestMessage 'Azure Front Door private connectivity request' ` 
        -Weight 1000 `
    

    Remarque

    SharedPrivateLinkResourceGroupId est le nom de la configuration IP frontale d’Azure Application Gateway.

Approuver le point de terminaison privé

  1. Exécutez la commande Get-AzPrivateEndpointConnection pour récupérer le nom de connexion de la connexion du point de terminaison privé qui doit être approuvée.

    Get-AzPrivateEndpointConnection -ResourceGroupName myResourceGroup -ServiceName myAppGateway -PrivateLinkResourceType Microsoft.Network/applicationgateways
    
  2. Exécutez Approve-AzPrivateEndpointConnection pour approuver les détails de connexion du point de terminaison privé. Utilisez la valeur Nom de la sortie de l’étape précédente pour approuver la connexion.

    Get-AzPrivateEndpointConnection -Name aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb.bbbbbbbb-1111-2222-3333-cccccccccccc -ResourceGroupName myResourceGroup -ServiceName myAppGateway -PrivateLinkResourceType Microsoft.Network/applicationgateways
    

Terminer la configuration d’Azure Front Door

Utilisez la commande New-AzFrontDoorCdnRoute pour créer un itinéraire qui mappe votre point de terminaison au groupe d’origines. Cet itinéraire transfère les requêtes du point de terminaison au groupe d’origin.

# Create a route to map the endpoint to the origin group

$Route = New-AzFrontDoorCdnRoute `
    -EndpointName myFrontDoorEndpoint `
    -Name myRoute `
    -ProfileName myFrontDoorProfile `
    -ResourceGroupName myResourceGroup `
    -ForwardingProtocol MatchRequest `
    -HttpsRedirect Enabled `
    -LinkToDefaultDomain Enabled `
    -OriginGroupId $origingroup.Id `
    -SupportedProtocol Http,Https

Votre profil Azure Front Door est désormais entièrement fonctionnel après avoir terminé la dernière étape.

Prérequis

Activer la connectivité privée vers Azure Application Gateway

Suivez les étapes décrites dans Configurer Azure Application Gateway Private Link, en ignorant la dernière étape de la création d’un point de terminaison privé.

Créer un groupe d’origines et ajouter la passerelle applicative en tant qu’origine

  1. Exécutez la commande az afd origin-group create pour créer un groupe d’origines.

    az afd origin-group create \
        --resource-group myResourceGroup \
        --origin-group-name myOriginGroup \
        --profile-name myFrontDoorProfile \
        --probe-request-type GET \
        --probe-protocol Http \
        --probe-interval-in-seconds 60 \
        --probe-path / \
        --sample-size 4 \
        --successful-samples-required 3 \
        --additional-latency-in-milliseconds 50
    
  2. Exécutez la commande az network application-gaeay frontend-ip list pour obtenir le nom de configuration IP frontend de l’Application Gateway.

    az network application-gateway frontend-ip list --gateway-name myAppGateway --resource-group myResourceGroup
    
  3. Exécutez la commande az afd origin create pour ajouter une passerelle applicative en tant qu’origine au groupe d’origines.

    az afd origin create \
        --enabled-state Enabled \
        --resource-group myResourceGroup \
        --origin-group-name myOriginGroup \
        --origin-name myAppGatewayOrigin \
        --profile-name myFrontDoorProfile \
        --host-name 10.0.0.4 \
        --origin-host-header 10.0.0.4 \
        --http-port 80  \
        --https-port 443 \
        --priority 1 \
        --weight 500 \
        --enable-private-link true \
        --private-link-location centralus \
        --private-link-request-message 'Azure Front Door private connectivity request.' \
        --private-link-resource /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myRGAG/providers/Microsoft.Network/applicationGateways/myAppGateway \
        --private-link-sub-resource-type myAppGatewayFrontendIPName
    

    Remarque

    private-link-sub-resource-type est le nom de configuration IP frontend d’Azure Application Gateway.

Approuver la connexion Private Endpoint

  1. Exécutez la commande az network private-endpoint-connection list pour obtenir l’ID de la connexion du point de terminaison privé qui doit être approuvée.

    az network private-endpoint-connection list --name myAppGateway --resource-group myResourceGroup --type Microsoft.Network/applicationgateways
    
  2. Exécutez la commande az network private-endpoint-connection approve pour approuver la connexion du point de terminaison privé à l’aide de l’ID de l’étape précédente.

    az network private-endpoint-connection approve --id /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/myAppGateway/privateEndpointConnections/aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb.bbbbbbbb-1111-2222-3333-cccccccccccc
    

Terminer la configuration d’Azure Front Door

Exécutez la commande az afd route create pour créer un itinéraire qui mappe votre point de terminaison au groupe d’origine. Cet itinéraire transfère les requêtes du point de terminaison au groupe d’origin.

az afd route create \
    --resource-group myResourceGroup \
    --profile-name myFrontDoorProfile \
    --endpoint-name myFrontDoorEndpoint \
    --forwarding-protocol MatchRequest \
    --route-name myRoute \
    --https-redirect Enabled \
    --origin-group myOriginGroup \
    --supported-protocols Http Https \
    --link-to-default-domain Enabled

Votre profil Azure Front Door est désormais entièrement fonctionnel après avoir terminé la dernière étape.

Erreurs courantes à éviter

Voici quelques erreurs courantes lors de la configuration d’une origine Azure Application Gateway avec Azure Private Link activé :

  1. Configurer l’origine Azure Front Door avant de configurer Azure Private Link sur Azure Application Gateway.

  2. Ajouter l’origine Azure Application Gateway avec Azure Private Link à un groupe d’origines existant qui contient des origines publiques. Avec Azure Front Door, il est impossible de mélanger les origines publiques et privées dans le même groupe d’origines.

  1. Nom de configuration IP frontend Azure Application Gateway fourni incorrect comme valeur pour SharedPrivateLinkResourceGroupId.
  1. Nom de configuration IP frontend Azure Application Gateway fourni incorrect comme valeur pour private-link-sub-resource-type.

Étapes suivantes

En savoir plus sur le service Private Link avec un compte de stockage.