Generare un token di autenticazione

Questo articolo illustra come generare il token di autenticazione dell'entità servizio, il token di autenticazione di un utente e il token di aggiornamento di un utente.

Registrare l'app con l'account Microsoft Entra ID

  1. Per effettuare il provisioning della piattaforma Azure Data Manager for Energy, è necessario registrare l'app nella pagina di registrazione dell'app portale di Azure. È possibile usare un account Microsoft o un account aziendale o dell'istituto di istruzione per registrare un'app. Per informazioni su come configurare, vedere Registrare la documentazione dell'app.

  2. Nella sezione Panoramica dell'app, se non sono specificati URI di reindirizzamento, è possibile selezionare Aggiungi un Web della piattaforma>, aggiungere http://localhost:8080e selezionare Salva.

    Screenshot che mostra l'aggiunta dell'URI all'app.

Recuperare i parametri

È anche possibile trovare i parametri dopo la registrazione dell'app nel portale di Azure.

Trovare l'ID tenant

  1. Passare all'account Microsoft Entra per l'organizzazione. È possibile cercare Microsoft Entra ID nella barra di ricerca del portale di Azure.

  2. Nella scheda Panoramica , nella sezione Informazioni di base , trovare l'ID tenant.

  3. Copiare il tenant-ID valore e incollarlo in un editor da usare in un secondo momento.

    Screenshot che mostra la ricerca di Microsoft Entra ID.

    Screenshot che mostra la ricerca dell'ID tenant.

Trovare l'ID client

È client-id lo stesso valore usato per registrare l'applicazione durante il provisioning dell'istanza di Azure Data Manager per l'energia. Viene spesso definito .app-id

  1. Passare alla pagina Panoramica di Azure Data Manager per l'energia. Nel riquadro Informazioni di base trovare l'ID client.

  2. Copiare il client-id valore e incollarlo in un editor da usare in un secondo momento.

  3. Attualmente, un'istanza di Azure Data Manager per l'energia consente di associarne una app-id a un'istanza.

    Importante

    L'oggetto client-id passato come valore nelle chiamate API Entitlement deve essere lo stesso usato per il provisioning dell'istanza di Azure Data Manager per l'energia.

    Screenshot che mostra la ricerca dell'ID client per l'app registrata.

Trovare il segreto client

Un client-secret è un valore stringa che l'app può usare al posto di un certificato per identificarsi. A volte viene definita password dell'applicazione.

  1. Vai a Registrazioni app.

  2. Nella sezione Gestisci selezionare Certificati e segreti.

  3. Selezionare Nuovo segreto client per creare un segreto client per l'ID client usato per creare l'istanza di Azure Data Manager per l'energia.

  4. Registrare il valore del segreto per usarlo successivamente nel codice dell'applicazione client.

    Il token di accesso di app-id e client-secret ha l'accesso dell'amministratore dell'infrastruttura all'istanza.

    Attenzione

    Non dimenticare di registrare il valore del segreto. Questo valore del segreto non viene mai più visualizzato dopo aver lasciato questa pagina per la creazione del segreto client.

    Screenshot che mostra la ricerca del segreto client.

Trovare redirect-uri

Oggetto redirect-uri dell'app, in cui l'app invia e riceve le risposte di autenticazione. Deve corrispondere esattamente a uno degli URI di reindirizzamento registrati nel portale, ad eccezione del fatto che deve essere codificato in URL.

  1. Vai a Registrazioni app.
  2. Nella sezione Gestisci selezionare Autenticazione.
  3. Recuperare ( redirect-uri o URL di risposta) per l'app per ricevere risposte dall'ID Microsoft Entra.

Screenshot che mostra redirect-uri.

Trovare l'url adme per l'istanza di Azure Data Manager per l'energia

  1. Creare un'istanza di Azure Data Manager per l'energia usando l'istanzaclient-id precedente generata.

  2. Passare alla pagina Panoramica di Azure Data Manager per l'energia nella portale di Azure.

  3. Nel riquadro Informazioni di base copiare l'URI.

    Screenshot che mostra la ricerca dell'URI per l'istanza di Azure Data Manager per l'energia.

Trovare data-partition-id

Sono disponibili due modi per ottenere l'elenco delle partizioni di dati nell'istanza di Azure Data Manager per l'energia.

  • Opzione 1: nella sezione Avanzate dell'interfaccia utente di Azure Data Manager per l'energia passare alla voce di menu Partizioni dati.

    Screenshot che mostra l'individuazione dell'ID partizione dati dall'istanza di Azure Data Manager per l'energia.

  • Opzione 2: nel riquadro Informazioni di base della pagina Panoramica di Azure Data Manager per l'energia selezionare Visualizza sotto il campo Partizioni dati.

    Screenshot che mostra la ricerca dell'ID partizione dati nella pagina Panoramica dell'istanza di Azure Data Manager per l'istanza di energia.

    Screenshot che mostra la ricerca dell'ID partizione dati nella pagina Panoramica dell'istanza di Azure Data Manager per l'energia con le partizioni di dati.

Trova dominio

Per impostazione predefinita, domain è dataservices.energy per tutte le istanze di Azure Data Manager per l'energia.

Generare il token di autenticazione con ID client

Eseguire il comando curl seguente in Azure Cloud Bash dopo aver sostituito i valori segnaposto con i valori corrispondenti trovati in precedenza nei passaggi precedenti. Il token di accesso nella risposta è il client-id token di autenticazione.

Formato richiesta

curl --location --request POST 'https://login.microsoftonline.com/<tenant-id>/oauth2/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'scope=<client-id>.default' \
--data-urlencode 'client_id=<client-id>' \
--data-urlencode 'client_secret=<client-secret>' \
--data-urlencode 'resource=<client-id>'

Risposta di esempio

    {
        "token_type": "Bearer",
        "expires_in": 86399,
        "ext_expires_in": 86399,
        "access_token": "abcdefgh123456............."
    }

Generare il token di autenticazione utente

La generazione del token di autenticazione di un utente è un processo in due passaggi.

Ottenere il codice di autorizzazione

Il primo passaggio per ottenere un token di accesso per molti flussi OIDC (OpenID Connessione) e OAuth 2.0 consiste nel reindirizzare l'utente all'endpoint di Microsoft Identity Platform/authorize. Microsoft Entra ID firma l'utente e richiede il consenso per le autorizzazioni richieste dall'app. Nel flusso di concessione del codice di autorizzazione, dopo aver ottenuto il consenso, Microsoft Entra ID restituisce un codice di autorizzazione all'app che può riscattare nell'endpoint di Microsoft Identity Platform /token per un token di accesso.

  1. Preparare il formato della richiesta usando i parametri .

    https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/authorize?client_id=<client-id>
    &response_type=code
    &redirect_uri=<redirect-uri>
    &response_mode=query
    &scope=<client-id>%2f.default&state=12345&sso_reload=true
    
  2. Dopo aver sostituito i parametri, è possibile incollare la richiesta nell'URL di qualsiasi browser e selezionare INVIO.

  3. Accedere al portale di Azure se non è già stato eseguito l'accesso.

  4. Potresti vedere il "Hmmm... impossibile raggiungere questa pagina" messaggio di errore nel browser. È possibile ignorarla.

    Screenshot del reindirizzamento localhost.

  5. Al termine dell'autenticazione, il browser viene reindirizzato a http://localhost:8080/?code={authorization code}&state=... .

  6. Copiare la risposta dalla barra URL del browser e recuperare il testo tra code= e &state.

    http://localhost:8080/?code=0.BRoAv4j5cvGGr0...au78f&state=12345&session....
    
  7. Tieni questo authorization-code utile per un uso futuro.

    Parametro Descrizione
    codice Codice di autorizzazione richiesto dall'app. L'app può usare il codice di autorizzazione per richiedere un token di accesso per la risorsa di destinazione. I codici di autorizzazione sono di breve durata. In genere scadono dopo circa 10 minuti.
    state Se nella richiesta è incluso un parametro state, lo stesso valore deve essere visualizzato nella risposta. L'app deve verificare che i valori state nella richiesta e nella risposta siano identici. Questo controllo consente di rilevare gli attacchi CSRF contro il client.
    session_state Valore univoco che identifica la sessione utente corrente. Questo valore è un GUID, ma deve essere considerato come un valore opaco che viene superato senza esame.

Avviso

L'esecuzione dell'URL in Postman non funzionerà perché richiede una configurazione aggiuntiva per il recupero dei token.

Ottenere un token di autenticazione e un token di aggiornamento

Il secondo passaggio consiste nel ottenere il token di autenticazione e il token di aggiornamento. L'app usa il codice di autorizzazione ricevuto nel passaggio precedente per richiedere un token di accesso inviando una richiesta POST all'endpoint /token .

Formato richiesta

  curl -X POST -H "Content-Type: application/x-www-form-urlencoded" -d 'client_id=<client-id>
  &scope=<client-id>%2f.default openid profile offline_access
  &code=<authorization-code>
  &redirect_uri=<redirect-uri>
  &grant_type=authorization_code
  &client_secret=<client-secret>' 'https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token'

Risposta di esempio

{
  "token_type": "Bearer",
  "scope": "User.Read profile openid email",
  "expires_in": 4557,
  "access_token": "eyJ0eXAiOiJKV1QiLCJub25jZSI6IkJuUXdJd0ZFc...",
  "refresh_token": "0.ARoAv4j5cvGGr0GRqy180BHbR8lB8cvIWGtHpawGN..."
}
Parametro Descrizione
token_type Indica il valore del tipo di token. L'unico tipo supportato da Microsoft Entra ID è Bearer.
ambito Elenco separato da spazi delle autorizzazioni di Microsoft Graph per cui il token di accesso è valido.
expires_in Tempo di validità del token di accesso (in secondi).
access_token Token di accesso richiesto. L'app può usare questo token per chiamare Microsoft Graph.
token di aggiornamento Token di aggiornamento di OAuth 2.0. L'app può usare questo token per acquisire token di accesso aggiuntivi dopo la scadenza del token di accesso corrente. I token di aggiornamento hanno una lunga durata e possono essere usati per mantenere l'accesso alle risorse per lunghi periodi di tempo.

Per altre informazioni sulla generazione di un token di accesso utente e sull'uso di un token di aggiornamento per generare un nuovo token di accesso, vedere Generare token di aggiornamento.

OSDU® è un marchio di The Open Group.

Passaggi successivi

Per altre informazioni su come usare il token di aggiornamento generato, vedere: