Konfigurera API-autentisering och åtkomst

Azure API Management

Fiodar Sazanavets

Senior Software Engineer at Microsoft

Vikten av API-säkerhet

HTTP-säkerhet

  • API-endpoints är ofta publika
  • Data bakom API:erna behöver skyddas
  • Särskilt viktigt för känslig data
Azure API Management

Översikt över autentisering

  • Autentisering och auktorisering är inte samma sak
  • Autentisering bekräftar anroparens identitet
  • Inloggning med användarnamn och lösenord är ett exempel på autentisering

Inloggningsformulär

Azure API Management

Översikt över auktorisering

Osäkra kontra säkra anrop

  • Auktorisering styr behörigheter
  • En autentiserad användare kan ändå sakna auktorisering
  • Exempel: bara administratörer kan nå ett adminområde
Azure API Management

Exempel: väderapp

Auktorisering i väderapp

Azure API Management

Introduktion till OAuth

  • OAuth används för autentisering
  • Används även för auktorisering
  • Komplext säkerhetsprotokoll
  • Har ett mycket högt säkerhetsbetyg

Utfärdande av åtkomsttoken

Azure API Management

Google OAuth-exempel

Google OAuth-exempel

Azure API Management

API-nyckelauktorisering i Azure Functions

  • Autentisering krävs inte alltid för auktorisering
  • HTTP-endpoints kan skyddas med API-nycklar
  • Lång teckensträng
  • I Azure Functions genereras en standardnyckel
  • Nyckeln måste ingå i anropet
  • Klienten måste känna till nyckeln
  • Klienten behöver inte styrka sin identitet

Konfigurera en API-nyckel i Azure

Azure API Management

Olika omfång för API-nycklar

API-nyckelomfång i en Azure Function

  • Olika omfång för olika typer av nycklar
  • Funktionsnivånyckel ger åtkomst till specifika funktioner
    • Som en fysisk nyckel som låser upp en specifik dörr
  • Värdnivånyckel
    • Ger åtkomst till alla funktioner i en app
    • som en huvudnyckel som låser upp alla dörrar i byggnaden
Azure API Management

Autentisering i API Management

  • APIM kan kopplas till en autentiseringsleverantör
  • En sådan leverantör är Entra ID
    • Tidigare känt som Active Directory
  • OAuth-integration är säkrare än API-nycklar
    • Men betydligt mer komplext

Aktivera Entra ID-integration i APIM

Azure API Management

Auktoriseringsprinciper i API Management

 

Validering av JWT i APIM

Auktorisering implementeras via principer i API Management

  • Principer definierar åtkomstregler

  • Begränsar endpoints baserat på roller

  • Säkerställer att bara auktoriserade klienter anropar API:er

Azure API Management

Nu kör vi en övning!

Azure API Management

Preparing Video For Download...