Implementace zásad API

Azure API Management

Fiodar Sazanavets

Senior Software Engineer at Microsoft

Úvod do zásad API

Zásady API Management

  • Jako vrátný: kontroluje, kdo smí vstoupit
  • Jako dopravní značky: řídí tok provozu
  • Chrání rozhraní API blokováním hrozeb
  • Omezuje požadavky, aby nikdo nepřetížil systém
  • Vše procházející API Gateway je řízeno zásadami
Azure API Management

Přehled zásad API Management

Zásady APIM

  • Zásady jsou sada výkonných pravidel zapsaných v jednoduchém XML
  • Fungují jako kanál pro zpracování požadavků a odpovědí
  • Pravidla lze vkládat v různých fázích pro řízení provozu
  • Kód backendu není třeba nijak upravovat
Azure API Management

Příklad: zpětná kompatibilita

Zpětná kompatibilita prostřednictvím APIM

Azure API Management

Rozsahy zásad

  • Zásady mohou být globální a platit pro celou organizaci
    • Tato pravidla řídí všechna rozhraní API
  • Lze je použít na jednotlivá rozhraní API
    • Umožňují správu konkrétního produktu
  • Lze je použít na jednotlivé koncové body
    • Slouží k podrobné kontrole

Rozsahy zásad

Azure API Management

Příchozí zásady

  • Při příchodu požadavku APIM nejprve vyhodnotí příchozí zásady
  • Příklad: Zajištění kompatibility starých verzí aplikací s novými rozhraními API rozšířením dat
  • Příchozí zásady chrání před škodlivými pokusy
  • Detekují chybně formátované požadavky nebo chybějící data
  • Tato ochrana zabrání přenosu chybných dat do služeb

Rozšíření příchozích dat

Ověření požadavku

Azure API Management

Zabezpečení a omezování provozu

Příchozí zásada pro zabezpečení

Vynucení kvót požadavků

  • Tato omezení regulují nadměrné klienty a zajišťují spravedlivé využití a ochranu backendu
  • Příchozí zásady jsou také zodpovědné za zabezpečení
  • Běžná zásada: ověření JWT (JSON Web Token)
  • JWT funguje jako digitální průkaz totožnosti zaslaný klientem
  • Zásada validate-jwt ověří jeho platnost, platnost doby expirace a důvěryhodnost vystavitele (např. Entra ID)
  • Pro silnější kontrolu: zásady omezení rychlosti a kvót
Azure API Management

Odchozí zásady

  • Po zpracování backendem odchozí zásady upraví odpovědi před jejich odesláním
  • Analogie s restaurací: požadavek → kuchyně (backend) → výdejní stanice (odchozí zásady)
  • Odchozí zásady mohou:
    • Odstraňovat nežádoucí části (např. citlivé hlavičky)
    • Přidávat instrukce (např. direktivy pro ukládání do mezipaměti)
    • Měnit formát (např. převod XML na JSON)

Rozšíření dat odpovědi

Transformace odpovědi

  • Odpovědi splňují očekávání klienta bez ohledu na přípravu backendu
Azure API Management

Pojďme procvičovat!

Azure API Management

Preparing Video For Download...