Om API-autentiseringsuppgifter och autentiseringsuppgifter

GÄLLER FÖR: Alla API Management-nivåer

För att hjälpa dig att hantera åtkomst till serverdels-API:er innehåller DIN API Management-instans en autentiseringshanterare. Använd autentiseringshanteraren för att hantera, lagra och kontrollera åtkomsten till API-autentiseringsuppgifter från din API Management-instans.

Kommentar

  • För närvarande kan du använda autentiseringshanteraren för att konfigurera och hantera anslutningar (kallades tidigare auktoriseringar) för serverdels-OAuth 2.0-API:er.
  • Inga icke-bakåtkompatibla ändringar introduceras med autentiseringshanteraren. OAuth 2.0-autentiseringsprovidrar och anslutningar använder befintliga API Management-auktoriserings-API:er och resursprovider.

Hanterade anslutningar för OAuth 2.0-API:er

Med autentiseringshanteraren kan du avsevärt förenkla processen med att autentisera och auktorisera användare, grupper och tjänstens huvudnamn i en eller flera serverdels- eller SaaS-tjänster som använder OAuth 2.0. Med API Managements autentiseringshanterare kan du enkelt konfigurera OAuth 2.0, samtycka, hämta token, cachetoken i ett autentiseringsarkiv och uppdatera token utan att skriva en enda kodrad. Använd åtkomstprinciper för att delegera autentisering till din API Management-instans, tjänstens huvudnamn, användare eller grupper. Bakgrund om OAuth 2.0 finns i Microsofts identitetsplattform och OAuth 2.0-auktoriseringskodflöde.

Med den här funktionen kan API:er exponeras med eller utan en prenumerationsnyckel, använda OAuth 2.0-auktoriseringar för serverdelstjänster och minska utvecklingskostnaderna för att öka, implementera och underhålla säkerhetsfunktioner med tjänstintegreringar.

Diagram över autentiseringshanteraren för API Management och saaS-identitetsprovidrar som stöds.

Användningsexempel

Med OAuth-anslutningar som hanteras i API Management kan kunderna enkelt ansluta till SaaS-leverantörer eller serverdelstjänster som använder OAuth 2.0. Nedan följer några exempel:

  • Anslut enkelt till en SaaS-serverdel genom att koppla den lagrade auktoriseringstoken och proxybegäranden

  • Proxybegäranden till en Azure App Service-webbapp eller Azure Functions-serverdel genom att koppla auktoriseringstoken, som senare kan skicka begäranden till en SaaS-serverdel med transformeringslogik

  • Proxybegäranden till GraphQL-federationsserverdelar genom att koppla flera åtkomsttoken för att enkelt utföra federation

  • Exponera en slutpunkt för hämtningstoken, hämta en cachelagrad token och anropa en SaaS-serverdel åt användaren från valfri beräkning, till exempel en konsolapp eller Kubernetes-daemon. Kombinera din favorit-SaaS SDK på ett språk som stöds.

  • Obevakade Azure Functions-scenarier när du ansluter till flera SaaS-serverdelar.

  • Durable Functions tar ett steg närmare Logic Apps med SaaS-anslutning.

  • Med OAuth 2.0-anslutningar kan varje API i API Management fungera som en anpassad Logic Apps-anslutningsapp.

Hur fungerar autentiseringshanteraren?

Tokenautentiseringsuppgifter i autentiseringshanteraren består av två delar: hantering och körning.

  • Hanteringsdelen i autentiseringshanteraren tar hand om att konfigurera en autentiseringsprovider för OAuth 2.0-token, aktivera medgivandeflödet för identitetsprovidern och konfigurera en eller flera anslutningar till autentiseringsprovidern för åtkomst till autentiseringsuppgifterna. Mer information finns i Hantering av anslutningar.

  • Körningsdelen använder get-authorization-context principen för att hämta och lagra anslutningens åtkomst- och uppdateringstoken. När ett anrop kommer till API Management och get-authorization-context principen körs verifieras först om den befintliga auktoriseringstoken är giltig. Om auktoriseringstoken har upphört att gälla använder API Management ett OAuth 2.0-flöde för att uppdatera de lagrade token från identitetsprovidern. Sedan används åtkomsttoken för att auktorisera åtkomst till serverdelstjänsten. Mer information finns i Körning av anslutningar.

När ska du använda autentiseringshanteraren?

Följande är tre scenarier för att använda autentiseringshanteraren.

Konfigurationsscenario

När du har konfigurerat providern för autentiseringsuppgifter och en anslutning kan API-chefen testa anslutningen. API-chefen konfigurerar ett OAuth-API för testserverdelen för att använda get-authorization-context principen med hjälp av instansens hanterade identitet. API-chefen kan sedan testa anslutningen genom att anropa test-API:et.

Diagram över det inledande konfigurationsscenariot för autentiseringshanteraren.

Obevakat scenario

Som standard när en anslutning skapas förkonfigureras en åtkomstprincip och anslutning för den hanterade identiteten för API Management-instansen. Om du vill använda en sådan anslutning kan olika användare logga in på ett klientprogram, till exempel en statisk webbapp, som sedan anropar ett serverdels-API som exponeras via API Management. För att göra det här anropet tillämpas anslutningar med hjälp av get-authorization-context principen. Eftersom API-anropet använder en förkonfigurerad anslutning som inte är relaterad till användarkontexten returneras samma data till alla användare.

Diagram över scenariot för hanterad identitet för autentiseringshanteraren.

Scenario med delta (användardelegering)

Om du vill aktivera en förenklad autentiseringsupplevelse för användare av klientprogram, till exempel statiska webbappar, som anropar SaaS-API:er för serverdelen som kräver en användarkontext, kan du aktivera åtkomst till en anslutning för en Microsoft Entra-användare eller gruppidentitet. I det här fallet behöver en konfigurerad användare bara logga in och ge medgivande en gång, och API Management-instansen skapar och hanterar sin anslutning efter det. När API Management hämtar ett inkommande anrop som ska vidarebefordras till en extern tjänst bifogas åtkomsttoken från anslutningen till begäran. Detta är idealiskt för när API-begäranden och svar är inriktade på en enskild person (till exempel för att hämta användarspecifik profilinformation).

Diagram över användardelegeringsscenario för autentiseringshanteraren.

Hur konfigurerar du autentiseringshanteraren?

Krav

  • Hanterad systemtilldelad identitet måste vara aktiverad för API Management-instansen.

  • API Management-instansen måste ha utgående anslutning till Internet på port 443 (HTTPS).

Tillgänglighet

  • Alla API Management-tjänstnivåer

  • Stöds inte i en gateway med egen värd

  • Stöds inte i nationella moln eller i följande regioner: australiacentral, australiacentral2, indiacentral

Stegvisa exempel

Säkerhetsfrågor

Åtkomsttoken och andra hemligheter (till exempel klienthemligheter) krypteras med en kuvertkryptering och lagras i en intern lagring med flera klienter. Data krypteras med AES-128 med en nyckel som är unik per data. Dessa nycklar krypteras asymmetriskt med ett huvudcertifikat som lagras i Azure Key Vault och roteras varje månad.

Gränser

Resurs Gräns
Maximalt antal leverantörer av autentiseringsuppgifter per tjänstinstans 1 000
Maximalt antal anslutningar per autentiseringsprovider 10,000
Maximalt antal åtkomstprinciper per anslutning 100
Maximalt antal auktoriseringsbegäranden per minut per anslutning 250

Vanliga frågor och svar

När uppdateras åtkomsttoken?

För en anslutning av typen auktoriseringskod uppdateras åtkomsttoken på följande sätt: När get-authorization-context principen körs vid körning kontrollerar API Management om den lagrade åtkomsttoken är giltig. Om token har upphört att gälla eller snart upphör att gälla använder API Management uppdateringstoken för att hämta en ny åtkomsttoken och en ny uppdateringstoken från den konfigurerade identitetsprovidern. Om uppdateringstoken har upphört att gälla utlöses ett fel och anslutningen måste auktoriseras igen innan den fungerar.

Vad händer om klienthemligheten upphör att gälla hos identitetsprovidern?

Vid körning kan API Management inte hämta nya token och ett fel inträffar.

  • Om anslutningen är av typen auktoriseringskod måste klienthemligheten uppdateras på providernivå för autentiseringsuppgifter.

  • Om anslutningen är av typen klientautentiseringsuppgifter måste klienthemligheten uppdateras på anslutningsnivå.

Stöds den här funktionen med HJÄLP av API Management som körs i ett virtuellt nätverk?

Ja, så länge utgående anslutning på port 443 är aktiverad till Azure Anslut ors-tjänsttaggen. Mer information finns i Referens för konfiguration av virtuellt nätverk.

Vad händer när en provider för autentiseringsuppgifter tas bort?

Alla underliggande anslutningar och åtkomstprinciper tas också bort.

Cachelagras åtkomsttoken av API Management?

På tjänstnivåerna klassisk och v2 cachelagras åtkomsttoken av API Management-instansen fram till 3 minuter före förfallotiden för token. Om åtkomsttoken är mindre än 3 minuter från förfallodatum är den cachelagrade tiden tills åtkomsttoken upphör att gälla.

Åtkomsttoken cachelagras inte på förbrukningsnivån.