Oktatóanyag: AZ API átalakítása és védelme
A KÖVETKEZŐRE VONATKOZIK: Minden API Management-szint
Ebben az oktatóanyagban megismerheti, hogyan konfigurálhat általános szabályzatokat az API átalakításához. Érdemes lehet átalakítani az API-t, hogy ne jelenjenek meg privát háttéradatok. Az API átalakításával elrejtheti a háttérrendszerben futó technológiai veremadatokat, vagy elrejtheti az API HTTP-válaszának törzsében megjelenő eredeti URL-címeket.
Ez az oktatóanyag azt is ismerteti, hogyan védheti meg a háttér API-t egy sebességkorlát-szabályzat konfigurálásával, hogy a fejlesztők ne használjanak túl az API-t. További szabályzatbeállításokért tekintse meg az API Management-szabályzatokat.
Feljegyzés
Az API Management alapértelmezés szerint globális forward-request
szabályzatot konfigurál. A forward-request
szabályzatra azért van szükség, hogy az átjáró teljesítsen egy kérést egy háttérszolgáltatáshoz.
Ebben az oktatóanyagban az alábbiakkal fog megismerkedni:
- Az API átalakítása a válaszfejlécek eltávolításához
- Az API-válasz törzsében található eredeti URL-címek cseréje API Management-átjáró URL-címekre
- API védelme sebességkorlát-szabályzat hozzáadásával (szabályozás)
- Az átalakítások tesztelése
Előfeltételek
- Az Azure API Management terminológiájának ismerete.
- Az Azure API Management-szabályzatok alapelveinek ismerete.
- Tekintse át a következő rövid útmutatót: Azure API Management-példány létrehozása.
- Végezze el a következő oktatóanyagot is: Az első API importálása és közzététele.
Nyissa meg az API Management-példányát
Az Azure Portalon keresse meg és válassza ki az API Management-szolgáltatásokat.
Az API Management-szolgáltatások lapon válassza ki az API Management-példányt.
Az API átalakítása a válaszfejlécek eltávolításához
Ez a szakasz bemutatja, hogyan rejtheti el azokat a HTTP-fejléceket, amelyeket nem szeretne megjeleníteni a felhasználók számára. Törölje például a következő fejléceket a HTTP-válaszban:
- X-Powered-By
- X-AspNet-Version
Az eredeti válasz tesztelése
Az eredeti válasz megtekintése:
- Az API Management szolgáltatáspéldányban válassza az API-kat.
- Válassza a Demo Conference API-t az API-listából.
- Válassza a Teszt fület a képernyő tetején.
- Válassza ki a GetSpeakers műveletet, majd válassza a Küldés lehetőséget.
Az eredeti API-válasznak a következő válaszhoz hasonlóan kell kinéznie:
Mint látható, a válasz tartalmazza az X-AspNet-Version és az X-Powered-By fejléceket.
Az átalakítási szabályzat beállítása
Ez a példa bemutatja, hogyan használhatja az űrlapalapú szabályzatszerkesztőt, amely segít számos szabályzat konfigurálásában anélkül, hogy közvetlenül kellene szerkesztenie a szabályzat XML-utasításait.
Válassza a Demo Conference API>Minden művelet tervezése>lehetőséget.
A Kimenő feldolgozás szakaszban válassza a + Szabályzat hozzáadása lehetőséget.
A Kimenő házirend hozzáadása ablakban válassza a Fejlécek beállítása lehetőséget.
A Fejlécek beállítása házirend konfigurálásához tegye a következőket:
- A Név mezőbe írja be az X-Powered-By nevet.
- Hagyja üresen az értéket . Ha egy érték megjelenik a legördülő listában, törölje azt.
- A Művelet csoportban válassza a Törlés lehetőséget.
- Válassza a Mentés lehetőséget.
Ismételje meg az előző két lépést egy Olyan fejléckészlet-szabályzat hozzáadásához, amely törli az X-AspNet-Version fejlécet:
A konfigurálás után két készletfejléc-szabályzatelem jelenik meg a Kimenő feldolgozás szakaszban.
Az API-válasz törzsében található eredeti URL-címek cseréje API Management-átjáró URL-címekre
Ez a szakasz bemutatja, hogyan cserélheti le az API HTTP-válasz törzsében megjelenő eredeti URL-címeket az API Management átjáró URL-címeivel. Előfordulhat, hogy el szeretné rejteni az eredeti háttérBELI URL-címeket a felhasználók elől.
Az eredeti válasz tesztelése
Az eredeti válasz megtekintése:
Válassza a Demo Conference API-teszt>lehetőséget.
Válassza ki a GetSpeakers műveletet, majd válassza a Küldés lehetőséget.
Mint látható, a válasz tartalmazza az eredeti háttérBELI URL-címeket:
Az átalakítási szabályzat beállítása
Ebben a példában a szabályzatkódszerkesztő használatával adja hozzá a szabályzat XML-kódrészletét közvetlenül a szabályzatdefinícióhoz.
Válassza a Demo Conference API>Minden művelet tervezése>lehetőséget.
A Kimenő feldolgozás szakaszban válassza a kódszerkesztő (</>) ikont.
Helyezze a kurzort az
<outbound>
elem belsejébe egy üres vonalon. Ezután válassza a Kódrészletek megjelenítése lehetőséget a képernyő jobb felső sarkában.A jobb oldali ablakban, az Átalakítási szabályzatok területen válassza a Tartalom MASZK URL-címeit.
Az
<redirect-content-urls />
elem a kurzornál lesz hozzáadva.Válassza a Mentés lehetőséget.
API-k védelme hívásszám-korlátozási szabályzat (szabályozás) hozzáadásával
Ez a szakasz bemutatja, hogyan adhat védelmet a háttér API-hoz sebességkorlátok konfigurálásával, hogy a fejlesztők ne használjanak túlhasználatot az API-val. Ebben a példában a korlát 15 másodpercenként három hívásra van beállítva minden előfizetés-azonosítóhoz. 15 másodperc elteltével a fejlesztő újra megpróbálhatja meghívni az API-t.
Válassza a Demo Conference API>Minden művelet tervezése>lehetőséget.
A Bejövő feldolgozás szakaszban válassza a kódszerkesztő (</>) ikont.
Helyezze a kurzort az
<inbound>
elem belsejébe egy üres vonalon. Ezután válassza a Képernyő jobb felső sarkában található Kódrészletek megjelenítése lehetőséget.A jobb oldali ablakban, az Access korlátozási szabályzatai alatt válassza a Hívás sebességének korlátozása kulcsonként lehetőséget.
Az
<rate-limit-by-key />
elem a kurzornál lesz hozzáadva.Módosítsa az
<rate-limit-by-key />
elemben lévő<inbound>
kódot a következő kódra. Ezután válassza a Mentés lehetőséget.<rate-limit-by-key calls="3" renewal-period="15" counter-key="@(context.Subscription.Id)" />
Az átalakítások tesztelése
Ezen a ponton, ha a kódszerkesztőben tekinti meg a kódot, a szabályzatok a következő kódhoz hasonlóan néznek ki:
<policies>
<inbound>
<rate-limit-by-key calls="3" renewal-period="15" counter-key="@(context.Subscription.Id)" />
<base />
</inbound>
<backend>
<base />
</backend>
<outbound>
<set-header name="X-Powered-By" exists-action="delete" />
<set-header name="X-AspNet-Version" exists-action="delete" />
<redirect-content-urls />
<base />
</outbound>
<on-error>
<base />
</on-error>
</policies>
A szakasz további részében teszteljük a szabályzatátalakításokat, amelyeket beállítottunk.
Az eltávolított válaszfejlécek tesztelése
Válassza a Demo Conference API-teszt>lehetőséget.
Válassza ki a GetSpeakers műveletet, és válassza a Küldés lehetőséget.
Mint látható, az X-AspNet-Version és az X-Powered-By fejlécek el lettek távolítva:
A lecserélt URL-cím tesztelése
Válassza a Demo Conference API-teszt>lehetőséget.
Válassza ki a GetSpeakers műveletet, és válassza a Küldés lehetőséget.
Amint látható, az URL-címek lecserélődnek.
Hívásszám-korlát (szabályozás) tesztelése
Válassza a Demo Conference API-teszt>lehetőséget.
Válassza a GetSpeakers műveletet. Egymás után háromszor válassza a Küldés lehetőséget .
A kérés háromszori elküldése után a 429 Túl sok kérés választ kap.
Várjon 15 másodpercet vagy többet, majd válassza ismét a Küldés lehetőséget. Ezúttal a 200 OK választ kapja.
Összegzés
Ez az oktatóanyag bemutatta, hogyan végezheti el az alábbi műveleteket:
- Az API átalakítása a válaszfejlécek eltávolításához
- Az API-válasz törzsében található eredeti URL-címek cseréje API Management-átjáró URL-címekre
- API-k védelme hívásszám-korlátozási szabályzat (szabályozás) hozzáadásával
- Az átalakítások tesztelése
Következő lépések
Folytassa a következő oktatóanyaggal: