Konfigurera Front Door Standard/Premium framför Azure API Management
GÄLLER FÖR: Alla API Management-nivåer
Azure Front Door är en modern nätverksplattform för programleverans som tillhandahåller ett säkert, skalbart nätverk för innehållsleverans (CDN), dynamisk webbplatsacceleration och global HTTP-belastningsutjämning för dina globala webbprogram. När det används framför API Management kan Front Door tillhandahålla TLS-avlastning, TLS från slutpunkt till slutpunkt, belastningsutjämning, svarscachelagring av GET-begäranden och en brandvägg för webbprogram, bland andra funktioner. En fullständig lista över funktioner som stöds finns i Vad är Azure Front Door?
Kommentar
För webbarbetsbelastningar rekommenderar vi starkt att du använder Azure DDoS-skydd och en brandvägg för webbprogram för att skydda mot nya DDoS-attacker. Ett annat alternativ är att använda Azure Front Door tillsammans med en brandvägg för webbprogram. Azure Front Door erbjuder skydd på plattformsnivå mot DDoS-attacker på nätverksnivå. Mer information finns i Säkerhetsbaslinje för Azure-tjänster.
Den här artikeln visar hur du:
- Konfigurera en Azure Front Door Standard/Premium-profil framför en offentligt tillgänglig Azure API Management-instans: antingen icke-nätverksansluten eller inmatad i ett virtuellt nätverk i externt läge.
- Begränsa API Management till att endast acceptera API-trafik från Azure Front Door.
Förutsättningar
- En API Management-instans.
- Om du väljer att använda en nätverksinmatad instans måste den distribueras i ett externt virtuellt nätverk. (Virtuell nätverksinmatning stöds på tjänstnivåerna Utvecklare och Premium.)
- Importera en eller flera API:er till DIN API Management-instans för att bekräfta routningen via Front Door.
Konfigurera Azure Front Door
Skapa profil
Anvisningar för hur du skapar en Azure Front Door Standard/Premium-profil finns i Snabbstart: Skapa en Azure Front Door-profil – Azure-portalen. I den här artikeln kan du välja en Front Door Standard-profil. En jämförelse av Front Door Standard och Front Door Premium finns i Nivåjämförelse.
Konfigurera följande Front Door-inställningar som är specifika för att använda gatewayslutpunkten för din API Management-instans som ett Front Door-ursprung. En förklaring av andra inställningar finns i snabbstarten för Front Door.
Inställning | Värde |
---|---|
Typ av ursprung | Välj API Management |
Ursprungets värdnamn | Välj värdnamnet för din API Management-instans, till exempel myapim.azure-api.net |
Cachelagring | Välj Aktivera cachelagring för Front Door för att cachelagra statiskt innehåll |
Beteende för cachelagring av frågesträngar | Välj Använd frågesträng |
Uppdatera standardgrupp för ursprung
När profilen har skapats uppdaterar du standardgruppen för ursprung så att den innehåller en API Management-hälsoavsökning.
Gå till din Front Door-profil i portalen.
I den vänstra menyn under Inställningar väljer du Ursprungsgrupper>standard-origin-group.
I fönstret Uppdatera ursprungsgrupp konfigurerar du följande inställningar för hälsoavsökning och väljer Uppdatera:
Inställning Värde Status Välj Aktivera hälsoavsökningar Sökväg Ange /status-0123456789abcdef
Protokoll Välj HTTPS Metod Välj GET Intervall (i sekunder) Ange 30
Uppdatera standardvägen
Vi rekommenderar att du uppdaterar standardvägen som är associerad med API Management-ursprungsgruppen för att använda HTTPS som vidarebefordringsprotokoll.
- Gå till din Front Door-profil i portalen.
- I den vänstra menyn under Inställningar väljer du Ursprungsgrupper.
- Expandera standard-origin-group.
- I snabbmenyn (...) för standardvägen väljer du Konfigurera väg.
- Ange godkända protokoll till HTTP och HTTPS.
- Aktivera Omdirigering av all trafik för att använda HTTPS.
- Ange endast vidarebefordran av protokollet till HTTPS och välj sedan Uppdatera.
Testa konfigurationen
Testa Front Door-profilkonfigurationen genom att anropa ett API som hanteras av API Management, till exempel Demo Conference-API:et. Anropa först API:et direkt via API Management-gatewayen för att säkerställa att API:et kan nås. Anropa sedan API:et via Front Door.
Anropa ett API direkt via API Management
Om du vill anropa ett API direkt via API Management-gatewayen kan du använda en kommandoradsklient, till exempel curl
eller en annan HTTP-klient. Ett lyckat svar returnerar ett 200 OK
HTTP-svar och förväntade data:
Anropa ett API direkt via Front Door
Anropa samma API-åtgärd med hjälp av Front Door-slutpunkten som konfigurerats för din instans. Slutpunktens värdnamn i domänen azurefd.net
visas i portalen på översiktssidan för din Front Door-profil. Ett lyckat svar visar 200 OK
och returnerar samma data som i föregående exempel.
Begränsa inkommande trafik till API Management-instans
Använd API Management-principer för att säkerställa att DIN API Management-instans endast accepterar trafik från Azure Front Door. Du kan utföra den här begränsningen med hjälp av en eller båda av följande metoder:
- Begränsa inkommande IP-adresser till dina API Management-instanser
- Begränsa trafik baserat på värdet för
X-Azure-FDID
rubriken
Begränsa inkommande IP-adresser
Du kan konfigurera en princip för inkommande ip-filter i API Management så att endast Front Door-relaterad trafik tillåts, vilket omfattar:
Front Door-ip-adressutrymme för serverdelen – Tillåt IP-adresser som motsvarar avsnittet AzureFrontDoor.Backend i Azure IP-intervall och tjänsttaggar.
Kommentar
Om DIN API Management-instans distribueras i ett externt virtuellt nätverk utför du samma begränsning genom att lägga till en regel för inkommande nätverkssäkerhetsgrupp i det undernät som används för DIN API Management-instans. Konfigurera regeln för att tillåta HTTPS-trafik från källtjänsttaggen AzureFrontDoor.Backend på port 443.
Azure-infrastrukturtjänster – Tillåt IP-adresserna 168.63.129.16 och 169.254.169.254.
Kontrollera Front Door-rubriken
Begäranden som dirigeras via Front Door innehåller rubriker som är specifika för din Front Door-konfiguration. Du kan konfigurera check-header-principen för att filtrera inkommande begäranden baserat på det unika värdet X-Azure-FDID
för HTTP-begärandehuvudet som skickas till API Management. Det här rubrikvärdet är Front Door-ID:t, som visas i portalen på sidan Översikt i Front Door-profilen.
I följande principexempel anges Front Door-ID:t med ett namngivet värde med namnet FrontDoorId
.
<check-header name="X-Azure-FDID" failed-check-httpcode="403" failed-check-error-message="Invalid request." ignore-case="false">
<value>{{FrontDoorId}}</value>
</check-header>
Begäranden som inte åtföljs av ett giltigt X-Azure-FDID
huvud returnerar ett 403 Forbidden
svar.
(Valfritt) Konfigurera Front Door för utvecklarportalen
Du kan också konfigurera API Management-instansens utvecklarportal som en slutpunkt i Front Door-profilen. Den hanterade utvecklarportalen är redan frontad av ett Azure-hanterat CDN, men du kanske vill dra nytta av Front Door-funktioner som en WAF.
Följande är övergripande steg för att lägga till en slutpunkt för utvecklarportalen i din profil:
Information om hur du lägger till en slutpunkt och konfigurerar en väg finns i Konfigurera och slutpunkt med Front Door Manager.
När du lägger till vägen lägger du till en ursprungsgrupp och ursprungsinställningar som representerar utvecklarportalen:
- Ursprungstyp – Välj Anpassad
- Värdnamn – Ange utvecklarportalens värdnamn, till exempel myapim.developer.azure-api.net
Mer information om inställningar finns i Så här konfigurerar du ett ursprung för Azure Front Door.
Kommentar
Om du har konfigurerat ett Microsoft Entra-ID eller Azure AD B2C-identitetsprovider för utvecklarportalen måste du uppdatera motsvarande appregistrering med en ytterligare omdirigerings-URL till Front Door. I appregistreringen lägger du till URL:en för utvecklarportalens slutpunkt som konfigurerats i din Front Door-profil.
Nästa steg
Information om hur du automatiserar distributioner av Front Door med API Management finns i mallen Front Door Standard/Premium med API Management-ursprung
Lär dig hur du distribuerar Web Application Firewall (WAF) på Azure Front Door för att skydda API Management-instansen från skadliga attacker.