Autenticazione e autorizzazione con Entra ID

Azure API Management

Fiodar Sazanavets

Senior Software Engineer at Microsoft

Concetti base di OAuth

Integrazione Entra ID - APIM

Azure API Management

Perché usare un identity provider

Analogia del parcheggiatore

  • Pensa a un IdP come a un parcheggiatore
  • L’auto ha valori nel cassetto (dati sensibili)
  • Dai al parcheggiatore una valet key speciale
    • permette solo di parcheggiare, non accedere ai valori
  • Allo stesso modo, l’IdP gestisce la sicurezza dell’app ma non accede ai dati sensibili interni
  • Esempio: Entra ID è l’IdP e API Manager è il client
Azure API Management

Registrare un’app Entra ID

  • Entra ID è nel Portale di Azure
  • Servono privilegi elevati per gestirlo
  • Per applicare OAuth, aggiungi una nuova entità in App Registration
  • Ogni registrazione richiede un nome e un redirect URL valido
  • Per APIM, il redirect URL è l’indirizzo dell’istanza APIM
  • Così Entra ID reindirizza a APIM dopo il login

Registrazione app Entra ID

Azure API Management

Acquisire le info del client

Informazioni client Entra ID

  • Client ID e Tenant ID

    • Costituiscono l’indirizzo pubblico dell’app
    • Il codice dice a Entra ID chi è l’app
  • Client Secret

    • Funziona come la password dell’app
    • Il codice lo presenta per provare l’identità
    • Va sempre protetto e mai esposto nel codice client-side
Azure API Management

Ottenere gli endpoint

  • Ottieni gli endpoint IdP prima di collegare il client all’IdP

    • In Entra ID, clicca su Endpoints nella pagina Overview della registrazione dell’app
    • Prendi gli endpoint OAuth 2.0 di authorization e token
  • Authorization Endpoint

    • Dove il codice reindirizza l’utente per l’accesso
  • Token Endpoint

    • Il backend scambia il code di autorizzazione per un access token

Flusso di autenticazione Entra ID

Azure API Management

Collegare APIM a Entra ID

Connessione OAuth e OIDC in APIM

  • In APIM, apri OAuth 2.0 + OpenID Connect sotto APIs

    • Definisci un nuovo authorization server
  • Configura il server con:

    • Authorization e token endpoints
    • Client ID e Client Secret
    • Scopes esposti dalla tua API
Azure API Management

Passons à la pratique !

Azure API Management

Preparing Video For Download...