Hoe Azure API Management werkt

Voltooid

Hier bespreken we hoe Azure API Management werkt vanaf drie gebruikspunten. Met deze kennis kunt u blijven evalueren of Azure API Management een goede oplossing is voor het beheren van de API's van uw organisatie.

In deze les leert u hoe Azure API Management werkt voor de volgende typen gebruikers:

  • API-gebruikers
  • API-providers
  • App-ontwikkelaars

Hoe Azure API Management werkt voor API-consumenten

Een API-consument is een entiteit die een aanvraag indient bij de API voor gegevens. Een van deze entiteiten kan bijvoorbeeld een API-consument zijn:

  • Mobiele app
  • Webapp
  • IoT-apparaat

Het belangrijkste Azure API Management-onderdeel voor consumenten is de gateway. Alle API-aanroepen voor consumenten worden eerst doorgestuurd naar uw gateway-eindpunt. API-gebruikers communiceren alleen rechtstreeks met de gateway en nooit met het daadwerkelijke API-implementatie-exemplaar.

De gateway voert veel taken uit vanuit het oogpunt van de consument, maar het volgende is het belangrijkste:

  • Verificatie. De gateway bewaakt de toegang tot de API door de abonnementssleutels van de consument, JWT-tokens en andere referenties te verifiëren.
  • Beveiliging. De gateway voorkomt misbruik van API's door vooraf gedefinieerde frequentielimieten en quota voor consumentengebruik af te dwingen, of door aanvragen en antwoorden te valideren op basis van het schema van de API.
  • Transformatie. De gateway transformeert de API-aanvraag of -reactie indien nodig. Als de back-endservice bijvoorbeeld reageert met XML-gegevens, kunt u de API moderniseren door de XML automatisch te transformeren naar JSON, zoals wordt weergegeven in de volgende afbeelding.
  • Routering. Nadat een API-aanvraag is geverifieerd, gevalideerd en getransformeerd, stuurt de gateway de aanroep door naar de back-endservice waar de API is geïmplementeerd.
  • Prestaties. De gateway kan het antwoord van de back-end-API opslaan in een cache. In situaties waarin het back-endantwoord na verloop van tijd statisch is, biedt het leveren van volgende reacties van de cache consumenten snellere reactietijden en vermindert de belasting op de back-endserver.

A mobile app requests a weather forecast using an API. The Azure API Management gateway routes the call to the backend server and then converts the server's XML response to JSON before returning it to the mobile app.

Hoe Azure API Management werkt voor API-providers

Als u een API-provider bent, hebt u nog steeds veel werk te doen nadat uw API's zijn gepubliceerd. Dit werk omvat:

  • API-beleid instellen
  • API-consumenten beheren
  • API-revisies en -versies beheren
  • Uw API's bewaken en analyseren

U kunt al deze taken en meer uitvoeren met behulp van de beheerinterface van Azure API Management in Azure Portal. Of met behulp van hulpprogramma's zoals Azure CLI of Azure PowerShell. Naast het instellen van API-beleid (zoals u in de vorige les hebt geleerd), kunt u met de beheerinterface de volgende taken uitvoeren:

  • Api-specificaties definiëren en importeren. Importeer een OpenAPI-specificatie, een REST API, een SOAP-API (Simple Object Access Protocol) (die u desgewenst kunt converteren naar REST), een WebSocket-API of een GraphQL-API. U kunt ook een API maken door exemplaren van de volgende Azure-services te importeren: Web App, Container App, Functie-app, Logische app en Service Fabric. U kunt ook een lege API maken en deze handmatig definiëren.
  • Gebruikers en groepen beheren.
    • Een gebruiker is een ontwikkelaarsaccount. Het is een account voor een API-consument. U kunt gebruikers handmatig toevoegen of gebruikers uitnodigen om een account te maken, maar de meeste gebruikers maken hun eigen accounts met behulp van de ontwikkelaarsportal.
    • Een groep is een verzameling gerelateerde gebruikers. U kunt een groep koppelen aan een bepaald API-product en vervolgens heeft elke gebruiker in die groep toegang tot het product in de ontwikkelaarsportal.
  • Pakket-API's in producten. In Azure API Management is een product een groep gerelateerde API's. Door meerdere API's als één product te verpakken, kunt u alleen het product configureren in plaats van alle API's afzonderlijk te configureren. Stel bijvoorbeeld frequentielimieten en ander beleid in, definieer gebruiksvoorwaarden, voeg groepen toe, enzovoort. Deze configuratie wordt toegepast op alle API's in het product. Nadat u het product hebt gepubliceerd, kunnen consumenten zich hierop abonneren en de BIJBEHORENDE API's gebruiken met één abonnementssleutel.
  • API-revisies en -versies beheren. Wanneer uw API-ontwikkelaarsteam wijzigingen moet aanbrengen in een API, kunt u de wijziging op een veilige en gecontroleerde manier beschikbaar maken die consumenten niet nadelig beïnvloedt door revisies en versies te gebruiken:
    • Een revisie is een relatief kleine of onbreekbaar wijziging in een API. Uw ontwikkelteam kan de revisie afzonderlijk van de productie-API codeeren en testen, zoals in de volgende afbeelding. Wanneer uw revisie gereed is voor consumenten, gebruikt u vervolgens de Beheerinterface van Azure API Management om de bijgewerkte API in te stellen als de huidige revisie.
    • Een versie is een relatief belangrijke of belangrijke wijziging in een API. Met Azure API Management kunt u ontwikkelaars meerdere versies van de API tegelijkertijd aanbieden. Het biedt ook verschillende versiebeheerschema's, waaronder versiebeheer op basis van paden, headers en queryreeksen.
  • API's bewaken en analyseren. De beheerinterface bevat ingebouwde bewakingshulpprogramma's om API-verkeer in realtime te traceren en te controleren, en analyses voor inzicht in hoe consumenten uw gepubliceerde API's gebruiken. Azure API Management ondersteunt ook verschillende Azure-hulpprogramma's voor het bewaken van API's en het uitvoeren van analyseworkloads. Azure-services die worden ondersteund door Azure API Management omvatten Azure Monitor-logboeken, Application Insights en Event Hubs.

Depiction of how revisions work in Azure API Management. API requests from consumers are routed to the current revision of the API, whereas API requests from the in-house development team are routed to the API revision.

Hoe Azure API Management werkt voor app-ontwikkelaars

Met uitzondering van de verbruikslaag bevatten alle Azure API Management-exemplaren een ontwikkelaarsportal waar u uw API's naar potentiële en bestaande API-consumenten maakt. De ontwikkelaarsportal wordt geleverd met een standaardinterface die kan worden aangepast aan de huisstijl en vereisten van uw organisatie.

App-ontwikkelaars met ontwikkelaarsaccounts melden zich aan bij de ontwikkelaarsportal (die ook gastgebruikers accepteert die nog geen account hebben). Ontwikkelaars krijgen vervolgens een webinterface te zien waarmee ze op de volgende manieren kunnen communiceren met API's:

  • Toegang tot API-documentatie. Ontwikkelaars kunnen de documentatie bekijken die u voor elke API hebt opgegeven.
  • Een API testen. De ontwikkelaarsportal biedt een interactieve console waarmee een ontwikkelaar snel en veilig een API kan testen. De ontwikkelaar kan een API-bewerking kiezen, parameterwaarden toevoegen en vervolgens de aanroep verzenden om te bepalen welk antwoord de API retourneert.
  • Api-codevoorbeelden bekijken. De ontwikkelaarsportal biedt voorbeelden van API-aanroepen in verschillende programmeertalen, waaronder C#, Java, JavaScript, PHP en Python.
  • Abonneren op een API. Wanneer een consument besluit uw API te gebruiken, kan de gebruiker met de ontwikkelaarsportal een abonnement op de API maken en een abonnementssleutel verkrijgen die moet worden gebruikt bij het aanroepen van de API.
  • Analyse uitvoeren. De ontwikkelaarsportal biedt analyses over het gebruik van een API voor ontwikkelaars.