Nykyaikaisessa ohjelmistoarkkitehtuurissa mikropalveluista on tullut standardi skaalautuvien, kestävien ja itsenäisesti käyttöön otettavien sovellusten rakentamiselle. Kuitenkin kymmenien tai jopa satojen mikropalvelurajapinta-aPI:ien hallinta tuo mukanaan huomattavaa monimutkaisuutta.Kaikkien turvallisuuspolitiikkojen täytäntöönpano, käsittelyasteiden rajoittaminen ja näkyvyyden lisääminen liikennemalleihin ovat kriittisiä haasteita. Azure API Gateway vastaa näihin haasteisiin tarjoamalla täysin hallinnoidun keskitetyn sisäänpääsypisteen kaikille mikropalveluraja-aPI-liittymille. Se yksinkertaistaa monialaisia kysymyksiä, parantaa turvallisuutta ja antaa tiimien keskittyä liiketoimintalogiikan rakentamiseen eikä keksiä uudelleen infrastruktuuria jokaiselle palvelulle.

Azure API Gatewayn ymmärtäminen

Azure API Gateway on pilvipalvelu, joka istuu asiakkaiden ja mikropalvelusi taustalaitteiden välissä. Se toimii käänteisenä valtakirjana hyväksyen kaikki API-puhelut, soveltamalla määriteltyjä käytäntöjä (authentication, trottling, logging, transformation) ja välittämällä pyynnöt asianmukaiseen taustapalveluun. Toisin kuin perinteiset monoliittiset yhdyskäytävät Azure API Gateway on rakennettu elastisuutta varten. Azure API Gateway on rakennettu automaattisesti liikenteen kanssa ja integroituu syvälle muihin Azure-palveluihin, kuten Azure Active Directory, Application Insights ja Azure Monitor.

API-portteja vertailtaessa Azure API Gateway erottuu Azure-ekosysteemin tiiviistä integraatiosta. Azure-tiimien toiminta-ajat vähenevät poistamalla tarpeen hallita palvelimia, kuormata tasapainottimia tai käänteisproxieita. Se tukee myös sekä RESTful- että WebSocket-aPI-liittymiä, mikä tekee siitä sopivan reaaliaikaisiin sovelluksiin.

Azure API Gatewayn ydinominaisuudet

Pyyntö uudelleenreititys ja muuntaminen

Azure API Gateway reitit saapuvat pyynnöt eri mikropalveluihin perustuen URL-polkuihin, otsikoihin, kyselyparametreihin tai hyötykuormasisältöön. Voit määritellä useita taustaosia ja kartoittaa ne dynaamisesti käyttämällä yhdyskäytävän toimintapolitiikan ilmauksia. Lisäksi yhdyskäytävä voi muuntaa pyyntö- ja vastauskuormat. Esimerkiksi muuntamalla XML JSON:ksi, strippaamalla tai lisäämällä otsikoita tai kirjoittamalla URL:t uudelleen ennen kuin lähetämme pyynnöt taustapuolelle. Tämä decouples asiakkaan odotukset sisäisistä palvelusopimuksista.

Tunnistaminen ja valtuutus

Turvallisuus on ensiluokkainen ominaisuus. Azure API Gateway tukee erilaisia tunnistusmekanismeja:

  • Outh 2.0 / OpenID Connect . ... .............................................................................................................................................................................................................................
  • API-avaimet[ . .
  • JWT Validation . .
  • Client Sertifikaatit ... .....................................................................................................................................................................................................................................

Nämä turvallisuusperiaatteet yhdistetään IP-suodatukseen ja rajoittamiseen[] haittatapahtuman estämiseksi ennen kuin se saavuttaa mikropalvelusi.

Kiintiöiden ja päästöoikeuksien määrät

Hintarajoitus on välttämätöntä väärinkäytösten estämiseksi ja oikeudenmukaisen käytön varmistamiseksi asiakkaiden välillä. Azure API Gateway -palvelussa voit määritellä avain- tai IP-hintarajat (esim. 100 pyyntöä minuutissa) ja asettaa kiintiöt (esim. 10000 puhelua päivässä). Kun raja ylittyy, yhdyskäytävä palauttaa HTTP 429:n (Liian monet pyynnöt) ilman, että se vaikuttaa taustapalveluihin.

Suorituskyvyn tallennus

Vähentääksesi taustakuormitusta ja parantaaksesi vasteaikoja Azure API Gateway tukee vastausvälimuistia. Voit määrittää välimuistin keston operaatiota kohti. Välimuistin merkinnät tallennetaan hajautettuun välimuistiin, joka jaetaan yhdyskäytävän kautta, joten jopa mittakaavan ulkopuolella tapahtuvien tapahtumien aikana vastaukset ovat edelleen saatavilla.

Analytiikka ja seuranta

Jokainen pyyntö virtaa kautta portti on kirjautunut. Azure API Gateway integroituu Azure Monitor ja Application Insights antaa yksityiskohtaisia mittareita (pyynnöt sekunnissa, latenssi, virheasteet, kuristetut pyynnöt) ja lokit tarkastusta. Voit perustaa hälytyksiä poikkeavuuksia, kuten äkillinen piikki 500 virhettä tai liikennepiikki kohden tietyn päätepisteen.

Microservice API:n hallinta Azure API Gatewaylla

Keskitetty hallinta on yksi vahvimmista argumenteista käyttää API-porttia. Azure API Gateway tarjoaa yhtenäisen kojelauta sisällä Azure Portal jossa voit:

  • Määrittele API-määritelmät (OpenAPI/Swagger-muodossa) ja luo automaattisesti toimintalinjoja.
  • Ryhmään liittyvät sovellusrajapinta-alat tuotteisiin, joilla on erilliset käyttöoikeudet (vapaa, palkkio jne.).
  • Hallitse sovellusrajapintasi versioita rikkomatta olemassa olevia asiakkaita.
  • Noudatetaan politiikkaa useilla tasoilla.

Infrastruktuuri-koodi, voit määritellä yhdyskäytävät, sovellusrajapinnat ja toimintatavat käyttäen Azure Resource Manager malleja, Bicep, tai Terraform. Tämä mahdollistaa CI/CD putkistot ottaa käyttöön API muutoksia automaattisesti, varmistaen johdonmukaisuuden eri ympäristöissä.

API-rajapinta-aitojen varmistaminen Azure API Gateway -laitteella

Turvallisuus on monikerroksinen huolenaihe. Azure API Gateway auttaa noudattamaan puolustusperiaatetta syvällisesti alueella:

Tunnistaminen ja token-validointi

Vahvistamalla OAuth 2.0 -poletit (Azure AD:n tai mukautetun STS:n tunnisteet) portilla mikropalvelujen itsensä ei tarvitse enää purkaa ja tarkistaa rahakkeita. Tämä vähentää kattilalevykoodia ja virtaviivaistaa tietoturvaauditointia. Portti voi myös hylätä vanhentuneet tai virheelliset tunnukset ennen kuin pyyntö saavuttaa taustaosan.

Uhkasuojaus

Azure API Gateway voi integroitua Azure Web Application Firewall (WAF) kun käytetään takana Azure Front Door tai Application Gateway. WAF estää yhteisiä OWASP-tyylinen hyökkäyksiä (SQL injektio, XSS) ennen kuin ne saavuttavat API-portti. Lisäksi, yhdyskäytävä itse voi valvoa politiikkoja, jotka validoivat pyynnön elinten, rajoittaa sisällön pituus, ja hylätä epämuodostuneita hyötykuormat.

IP ja verkkoturvallisuus

Voit rajoittaa liikenteen tiettyihin IP-osoitteisiin tai -alueisiin. Sisäisten mikropalvelujen osalta yhdyskäytävä voidaan konfiguroida vain vastaanottamaan puheluja virtuaaliverkosta (VNet), mikä estää altistumista julkiselle internetille. Yhdessä yksityisten päätepisteiden kanssa voit pitää kaiken taustaliikenteen Azure-rungossa.

Oman turvallisuuden poliittiset lausekkeet

Politiikka-ilmaisujen avulla voit kirjoittaa C#-tyyppinen koodi, joka tarkastaa otsikot, kyselyjonot tai kehon sisällön ja tekee päätöksiä. Voit esimerkiksi tarkistaa mukautetun otsikko ja palauttaa 401, jos se puuttuu, tai validoi HMAC-allekirjoituksen pyynnön eheyttä. Tämä joustavuus takaa voit toteuttaa käytännössä kaikki turvallisuusvaatimukset poistumatta portti.

Suorituskyky ja skalpeeraus

Azure API Gateway on suunniteltu käsittelemään korkeaa läpivientiä. Se skaalautuu automaattisesti pyyntöjen määrän ja suorittimen käytön perusteella. On olemassa kaksi tasoa: [Kehikko[ (testausta ja arviointia varten) ja ]Premium[] (tuotantoon SLA:lla, rajattomat API-määritelmät ja virtuaalinen verkkointegraatio).

Jotta suorituskyky voitaisiin optimoida edelleen:

  • Käytä välimuistia[] luku- ja laskupäätteitä vähentääksesi taustapuheluita.
  • Käytä taustapooleja[] kuormituksen tasapainottamiseksi jakaa liikennettä useissa tapauksissa.
  • Täytä virtapiirin katkaisijan kaavat[] politiikan avulla, jotta vältetään päällekkäisyydet.
  • Monitor latenssi[ sovellusnäkymiin ja asettaa asianmukaiset aikakatkaisut.

Seuranta ja analytiikka

Sisäänrakennetulla Azure Monitor -integroinnilla saat reaaliaikaista ja historiallista tietoa jokaisesta API-puhelusta. Käytä kojelautaa visualisointiin huipputason sovellusrajapinnat käytön, virhemäärien ja vasteaikojen avulla. Aseta hälytykset kriittisille raja-arvoille . Esimerkiksi, kun p95 latenssi ylittää 2 sekuntia tai kun 4XX-virhenopeus nousee. Portti myös kirjaa yksityiskohtaiset tapahtumatiedot Log Analyticsiin, jolloin voidaan tehdä syvä rikosteknistä analyysia tapahtuman jälkeen.

Paras käytäntö Azure API Gateway

  • Suunnittele sovellusliittymät, joissa on yhdyskäytävä mielessä[] . Käytä johdonmukaisia URL-malleja ja versiojärjestelmiä (esim. ]).
  • Pidä porttikäytännöt yksinkertaisina[ . Vältä monimutkaisia toimintaketjuja, jotka vaikuttavat latenssiin. Käytä kehittäjätilaa vianetsintään.
  • Yhdistä portit Azure Front Door ... ....................................................................................................................................................................................................................................
  • Automatti käyttöönotto[ .
  • Käytä tilauksia ja maksurajoituksia[ . ... ...................................................................................................................................................................................................................................
  • Käytä diagnostiikkalokit[ ... .....................................................................................................................................................................................................................................

Päätelmät

Azure API Gateway tarjoaa vankan, skaalautuvan ja turvallisen sisäänpääsypisteen mikropalvelurajapinnoille. Se vähentää yksittäisten palvelujen taakkaa keskittämällä monialaisia kysymyksiä, kuten todentamista, nopeusrajoituksia, välimuistia ja seurantaa. Integroimalla Azure. Azure-ekosysteemiin tiimit voivat saavuttaa korkean suorituskyvyn, syvän näkyvyyden ja toiminnan yksinkertaisuuden. Olitpa menossa monoliittiarkkitehtuurista tai rakentamassa viherkenttää mikropalvelumaisemaa, Azure API Gateway on yrityksen perustekijä-tason API-hallinta. Aloita määrittelemällä API-pinta, mahdollistaen turvallisuuspolitiikan ja asteittain hienosäätämällä sitä kasvaessasi.

Lisätietoja: