Implementazione dell'autorizzazione per supportare l'integrazione

Completato

L'API del pacchetto del framework di gestione dati usa OAuth 2.0 per autorizzare l'accesso. Per poter essere usata, l'API deve essere connessa a un token di accesso OAuth valido. Per le organizzazioni che eseguono una distribuzione locale, usare Active Directory Federation Services (AD FS).

Microsoft Entra ID usa OAuth 2.0 per consentire di autorizzare l'accesso alle applicazioni Web e alle API Web all'interno del tenant di Microsoft Entra. Per iniziare, registrare l'applicazione con tenant di Microsoft Entra. Questa operazione viene eseguita tramite il portale di Microsoft Azure.

Di seguito è riportata una panoramica del flusso di richiesta dei codici di autorizzazione OAuth 2.0:

  1. Il client indirizza l'utente a /authorize endpoint.

  2. Con questa richiesta il client indica le autorizzazioni che deve acquisire dall'utente che ha bisogno dell'accesso. Per ottenere l'endpoint di autorizzazione OAuth 2.0 per il tenant, andare a Registrazioni app > Endpoint nel portale di Azure.

  3. Nell'applicazione nativa all'utente viene richiesto di accedere e fornire il consenso per le autorizzazioni richieste dall'app. Quando l'utente esegue l'autenticazione e fornisce il consenso, Microsoft Entra ID invia una risposta all'applicazione all'indirizzo redirect_uri nella richiesta.

    // Line breaks for legibility only
    
    https://login.microsoftonline.com/{tenant}/oauth2/authorize?
    client_id=
    &response_type=code
    &redirect_uri=http%3A%2F%2Flocalhost%3A12345
    &response_mode=query
    &resource=https%3A%2F%2Fservice.contoso.com%2F
    &state=12345
    

    Di seguito sono indicati i due tipi di risposta.

    • Risposta corretta: una risposta corretta concede l'accesso e include il consenso amministratore, il codice di autorizzazione richiesto dall'applicazione, un valore di sessione univoco e un parametro di stato.
    • Risposta di errore: una risposta di errore non concede un codice di autorizzazione. La risposta di errore include il valore del codice di errore, la descrizione dell'errore e il valore dello stato.

    Con una risposta corretta, viene fornito un codice di autorizzazione e viene concesso l'accesso all'utente.

  4. Il codice può ora essere riscattato per un token di accesso alla risorsa desiderata. Ciò si ottiene inviando una richiesta POST all'endpoint /token.

  5. Dopo una risposta corretta, Microsoft Entra ID restituisce un token di accesso, che è un token JSON Web (JWT).

  6. Quando viene richiesto il token di accesso, Microsoft Entra ID restituisce i metadati sul token di accesso per l'uso dell'applicazione. Il client deve memorizzare nella cache i token di accesso per la durata del token specificata all'interno della risposta OAuth2. Un'API Web potrebbe restituire una risposta invalid_token, ad esempio a causa di un token scaduto.

  7. Una volta ottenuto, il token di accesso può essere usato nelle richieste alle API Web.