Condividi tramite


Connettere Azure Front Door Premium ad Azure API Management con Private Link

Si applica a: ✔️ Frontdoor Premium

Questo articolo illustra la procedura per configurare un'istanza di Frontdoor di Azure Premium da connettere privatamente a un'origine Gestione API di Azure tramite Collegamento privato di Azure.

Prerequisiti

Nota

Il supporto dell'endpoint privato nel livello Standard v2 di Gestione API è attualmente in anteprima.

Creare un gruppo di origine e aggiungere l'istanza di Gestione API come origine

  1. In Impostazioni del profilo Di Frontdoor Premium di Azure selezionare Gruppi di origine.

  2. Seleziona Aggiungi

  3. Immettere un nome per il gruppo di origine.

  4. Selezionare + Aggiungi un'origine

  5. Usare la tabella seguente per configurare le impostazioni di origine:

    Impostazione valore
    Nome Immettere un nome per identificare l'origine.
    Tipo origine Selezionare Gestione API.
    Nome host Selezionare l'host dall'elenco a discesa desiderato come origine.
    Intestazione host di origine Verrà popolato automaticamente con l'host dell'istanza di Gestione API scelta.
    Porta HTTP 80 (impostazione predefinita).
    Porta HTTPS 443 (impostazione predefinita).
    Priorità Assegnare priorità diverse alle origini per scopi primari, secondari e di backup.
    Peso 1000 (impostazione predefinita). Usare i pesi per distribuire il traffico tra origini diverse.
    Paese Selezionare l'area corrispondente o più vicina all'origine.
    Sottorisorsa di destinazione Selezionare Gateway.
    Messaggio di richiesta Immettere un messaggio personalizzato da visualizzare durante l'approvazione dell'endpoint privato.

    Screenshot delle impostazioni di origine per la configurazione di Gestione API come origine privata.

  6. Selezionare Aggiungi per salvare le impostazioni di origine

  7. Selezionare Aggiungi per salvare le impostazioni del gruppo di origine.

Approvare l'endpoint privato

  1. Passare all'istanza di Gestione API configurata con collegamento privato nella sezione precedente.

  2. In Distribuzione e infrastruttura selezionare Rete.

  3. Selezionare La scheda Connessioni endpoint privato in ingresso.

  4. Trovare la richiesta di endpoint privato in sospeso da Frontdoor di Azure Premium e selezionare Approva.

  5. Dopo l'approvazione, lo stato della connessione verrà aggiornato. La connessione può richiedere alcuni minuti per stabilire completamente. Una volta stabilito, è possibile accedere alle Gestione API tramite Frontdoor.

    Screenshot della scheda Connessioni endpoint privati nel portale di gestione delle API.

Prerequisiti

  • Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.

  • Un profilo Frontdoor Premium di Azure e un endpoint. Per altre informazioni su come creare un profilo frontdoor di Azure, vedere Creare una frontdoor con Azure PowerShell

  • Un'istanza di Gestione API. Per altre informazioni su come creare un'istanza di Gestione API, vedere Creare una nuova istanza di Gestione API di Azure con PowerShell. Per i livelli v1, l'istanza deve essere distribuita in modalità pubblica e non in modalità rete virtuale.

  • Azure Cloud Shell o Azure PowerShell.

    I passaggi descritti in questo articolo eseguono i cmdlet di Azure PowerShell in modo interattivo in Azure Cloud Shell. Per eseguire i cmdlet in Cloud Shell, selezionare Apri Cloud Shell nell'angolo superiore destro di un blocco di codice. Selezionare Copia per copiare il codice e incollarlo in Cloud Shell per eseguirlo. È anche possibile eseguire Cloud Shell dal portale di Azure.

    È anche possibile installare Azure PowerShell in locale per eseguire i cmdlet. Se si esegue PowerShell in locale, accedere ad Azure usando il cmdlet Connect-AzAccount.

Nota

Il supporto dell'endpoint privato nel livello Standard v2 di Gestione API è attualmente in anteprima.

Creare un gruppo di origine e aggiungere l'istanza di Gestione API come origine

  1. Usare New-AzFrontDoorCdnOriginGroupHealthProbeSettingObject per creare un oggetto in memoria per archiviare le impostazioni del probe di integrità.

    $healthProbeSetting = New-AzFrontDoorCdnOriginGroupHealthProbeSettingObject `
        -ProbeIntervalInSecond 60 `
        -ProbePath "/" `
        -ProbeRequestType GET `
        -ProbeProtocol Http
    
  2. Usare New-AzFrontDoorCdnOriginGroupLoadBalancingSettingObject per creare un oggetto in memoria per l'archiviazione delle impostazioni di bilanciamento del carico.

    $loadBalancingSetting = New-AzFrontDoorCdnOriginGroupLoadBalancingSettingObject `
        -AdditionalLatencyInMillisecond 50 `
        -SampleSize 4 `
        -SuccessfulSamplesRequired 3
    
  3. Eseguire New-AzFrontDoorCdnOriginGroup per creare un gruppo di origine contenente l'istanza di Gestione API.

    $origingroup = New-AzFrontDoorCdnOriginGroup `
        -OriginGroupName myOriginGroup `
        -ProfileName myFrontDoorProfile `
        -ResourceGroupName myResourceGroup `
        -HealthProbeSetting $healthProbeSetting `
        -LoadBalancingSetting $loadBalancingSetting
    
  4. Usare il comando New-AzFrontDoorCdnOrigin per aggiungere l'istanza di Gestione API al gruppo di origine.

    New-AzFrontDoorCdnOrigin ` 
        -OriginGroupName myOriginGroup ` 
        -OriginName myAPIMOrigin ` 
        -ProfileName myFrontDoorProfile ` 
        -ResourceGroupName myResourceGroup ` 
        -HostName myapim.azure-api.net ` 
        -HttpPort 80 ` 
        -HttpsPort 443 ` 
        -OriginHostHeader myapim.azure-api.net ` 
        -Priority 1 ` 
        -PrivateLinkId /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.ApiManagement/service/myAPIM ` 
        -SharedPrivateLinkResourceGroupId Gateway ` 
        -SharedPrivateLinkResourcePrivateLinkLocation CentralUS ` 
        -SharedPrivateLinkResourceRequestMessage 'Azure Front Door private connectivity request' ` 
        -Weight 1000 `
    

Approvare l'endpoint privato

  1. Eseguire Get-AzPrivateEndpointConnection per recuperare il nome della connessione dell'endpoint privato che richiede l'approvazione.

    $PrivateEndpoint = Get-AzPrivateEndpointConnection -ResourceGroupName myResourceGroup -ServiceName myAPIM -PrivateLinkResourceType Microsoft.ApiManagement/service
    
  2. Eseguire Approve-AzPrivateEndpointConnection per approvare i dettagli della connessione dell'endpoint privato. Usare il valore Nome dell'output del passaggio precedente per approvare la connessione.

    Get-AzPrivateEndpointConnection -Name $PrivateEndpoint.Name -ResourceGroupName myResourceGroup -ServiceName myAPIM -PrivateLinkResourceType Microsoft.ApiManagement/service
    

Completare la configurazione di Frontdoor di Azure

Usare il comando New-AzFrontDoorCdnRoute per creare una route che esegue il mapping dell'endpoint al gruppo di origine. Questa route inoltra le richieste dall'endpoint al gruppo di origine.

# 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

Il profilo Frontdoor di Azure è ora completamente funzionante dopo aver completato il passaggio finale.

Prerequisiti

Nota

Il supporto dell'endpoint privato nel livello Standard v2 di Gestione API è attualmente in anteprima.

Creare un gruppo di origine e aggiungere l'istanza di Gestione API come origine

  1. Eseguire az afd origin-group create per creare un gruppo di origine.

    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. Eseguire az afd origin create per aggiungere l'istanza di Gestione API come origine al gruppo di origine.

    az afd origin create \
        --enabled-state Enabled \
        --resource-group myResourceGroup \
        --origin-group-name myOriginGroup \
        --origin-name myAPIMOrigin \
        --profile-name myFrontDoorProfile \
        --host-name myapim.azure-api.net \
        --origin-host-header myapim.azure-api.net \
        --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/myResourceGroup/providers/Microsoft.ApiManagement/service/myAPIM \
        --private-link-sub-resource-type Gateway
    

Approvare la connessione dell'endpoint privato

  1. Eseguire az network private-endpoint-connection list per ottenere il nome della connessione dell'endpoint privato che richiede l'approvazione.

    az network private-endpoint-connection list --name myAPIM --resource-group myResourceGroup --type Microsoft.ApiManagement/service
    
  2. Eseguire az network private-endpoint-connection approve per approvare la connessione dell'endpoint privato usando il nome del passaggio precedente.

    az network private-endpoint-connection approve --id /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.ApiManagement/service/myAPIM/privateEndpointConnections/aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    

Completare la configurazione di Frontdoor di Azure

Eseguire az afd route create per creare una route che esegue il mapping dell'endpoint al gruppo di origine. Questa route inoltra le richieste dall'endpoint al gruppo di origine.

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

Il profilo Frontdoor di Azure è ora completamente funzionante dopo aver completato il passaggio finale.

Passo successivo