Abonnementen maken in Azure API Management

In Azure API Management zijn abonnementen de meest voorkomende manier voor API-gebruikers om toegang te krijgen tot API's die zijn gepubliceerd via een API Management exemplaar. Dit artikel bevat een overzicht van het concept.

Wat zijn abonnementen?

Door API's te publiceren via API Management, kunt u eenvoudig API-toegang beveiligen met behulp van abonnementssleutels. Ontwikkelaars die de gepubliceerde API's moeten gebruiken, moeten een geldige abonnementssleutel in HTTP-aanvragen bevatten bij het aanroepen van deze API's. Zonder een geldige abonnementssleutel zijn de aanroepen:

  • Onmiddellijk geweigerd door de API Management-gateway.
  • Niet doorgestuurd naar de back-endservices.

Voor toegang tot API's hebt u een abonnement en een abonnementssleutel nodig. Een abonnement is een benoemde container voor een paar abonnementssleutels.

Notitie

Het regelmatig opnieuw genereren van sleutels is een veelvoorkomende veiligheidsmaatregel. Net als bij de meeste Azure-services waarvoor een abonnementssleutel is vereist, genereert API Management sleutels in paren. Elke toepassing die de service gebruikt, kan overschakelen van sleutel A naar sleutel B en sleutel A opnieuw genereren met minimale onderbrekingen en omgekeerd.

Bovendien

  • Ontwikkelaars kunnen abonnementen krijgen zonder goedkeuring van API-uitgevers.
  • API-uitgevers kunnen rechtstreeks abonnementen maken voor API-consumenten.

Tip

API Management ondersteunt ook andere mechanismen voor het beveiligen van toegang tot API's, waaronder de volgende voorbeelden:

Bereik van abonnementen

Abonnementen kunnen worden gekoppeld aan verschillende bereiken: product, alle API's of een afzonderlijke API.

Abonnementen voor een product

Van oudsher werden abonnementen in API Management gekoppeld aan één productbereik. Ontwikkelaars:

  • De lijst met producten gevonden in de ontwikkelaarsportal.
  • Ingediende abonnementsaanvragen voor de producten die ze wilden gebruiken.
  • Gebruik de sleutels in deze abonnementen (automatisch goedgekeurd of door API-uitgevers) om toegang te krijgen tot alle API's in het product.

Op dit moment worden in de ontwikkelaarsportal alleen de abonnementen voor het productbereik weergegeven in de sectie Gebruikersprofiel .

Product subscriptions

Abonnementen voor alle API's of een afzonderlijke API

U kunt ook sleutels maken die toegang verlenen tot:

  • Eén API of
  • Alle API's binnen een API Management exemplaar.

In dergelijke gevallen hoeft u geen product te maken en eerst API's eraan toe te voegen.

Abonnement voor alle toegang

Elk API Management exemplaar wordt geleverd met een onveranderbaar, all-API-abonnement (ook wel een abonnement voor alle toegang genoemd). Met dit ingebouwde abonnement kunt u eenvoudig API's testen en fouten opsporen in de testconsole.

Notitie

Als u een abonnement op API-bereik of het abonnement voor alle toegang gebruikt, worden beleidsregels die zijn geconfigureerd op het productbereik, niet toegepast op aanvragen van dat abonnement.

Zelfstandige abonnementen

API Management staat ook zelfstandige abonnementen toe, die niet zijn gekoppeld aan een ontwikkelaarsaccount. Deze functie is nuttig in scenario's die vergelijkbaar zijn met verschillende ontwikkelaars of teams die een abonnement delen.

Als u een abonnement maakt zonder een eigenaar toe te wijzen, wordt het een zelfstandig abonnement. Als u ontwikkelaars en de rest van uw team toegang wilt verlenen tot de zelfstandige abonnementssleutel, gaat u als volgende te werk:

  • Deel de abonnementssleutel handmatig.
  • Gebruik een aangepast systeem om de abonnementssleutel beschikbaar te maken voor uw team.

Abonnementen maken in Azure Portal

API-uitgevers kunnen rechtstreeks abonnementen maken in de Azure Portal:

Flexible subscriptions

Hoe API Management aanvragen verwerkt met of zonder abonnementssleutels

Standaard heeft een ontwikkelaar alleen toegang tot een product of API met behulp van een abonnementssleutel. In bepaalde scenario's willen API-uitgevers mogelijk een product of een bepaalde API publiceren naar het publiek zonder dat er abonnementen nodig zijn. Hoewel een uitgever ervoor kan kiezen om onbeveiligde toegang tot bepaalde API's in te schakelen, wordt het configureren van een ander mechanisme voor het beveiligen van clienttoegang aanbevolen.

De abonnementsvereiste uitschakelen met behulp van de portal:

  • Vereiste voor product uitschakelen : abonnement uitschakelen op de Instellingen pagina van het product.
  • Vereiste voor API uitschakelen: abonnement uitschakelen dat is vereist op de Instellingen pagina van de API.

Nadat de abonnementsvereiste is uitgeschakeld, kunnen de geselecteerde API's of API's zonder abonnementssleutel worden geopend.

Wanneer API Management een API-aanvraag van een client zonder abonnementssleutel ontvangt, wordt de aanvraag verwerkt volgens de volgende regels:

  1. Controleer eerst of er een product bestaat dat de API bevat, maar waarvoor geen abonnement is vereist (een open product). Als het geopende product bestaat, verwerkt u de aanvraag in de context van de API's, beleidsregels en toegangsregels die voor het product zijn geconfigureerd.
  2. Als er geen open product met inbegrip van de API wordt gevonden, controleert u of voor de API een abonnement is vereist. Als een abonnement niet vereist is, verwerkt u de aanvraag in de context van die API en bewerking.
  3. Als er geen geconfigureerd product of API wordt gevonden, wordt de toegang geweigerd.

Volgende stappen

Meer informatie over API Management: