Autenticazione dell'utente finale con Azure Data Lake Storage Gen1 tramite .NET SDK

Questo articolo illustra come usare .NET SDK per eseguire l'autenticazione dell'utente finale con Azure Data Lake Storage Gen1. Per l'autenticazione da servizio a servizio con Data Lake Storage Gen1 tramite .NET SDK, vedere Autenticazione da servizio a servizio con Data Lake Storage Gen1 tramite .NET SDK.

Prerequisiti

Creare un'applicazione .NET

  1. In Visual Studio selezionare il menu File , Nuovo e quindi Progetto.

  2. Scegliere App console (.NET Framework) e quindi selezionare Avanti.

  3. In Nome del progetto immettere CreateADLApplication e quindi selezionare Crea.

  4. Aggiungere i pacchetti NuGet al progetto.

    1. Fare clic con il pulsante destro del mouse sul nome del progetto in Esplora soluzioni e scegliere Gestisci pacchetti NuGet.

    2. Nella scheda Gestione pacchetti NuGet verificare che l'origine pacchetto sia impostata su nuget.org e che sia selezionata la casella di controllo Includi versione preliminare .

    3. Cercare e installare i pacchetti NuGet seguenti:

      • Microsoft.Azure.Management.DataLake.Store - Questa esercitazione usa v2.1.3-preview.

      • Microsoft.Rest.ClientRuntime.Azure.Authentication - Questa esercitazione usa la versione 2.2.12.

        Aggiungere un'origine NuGet

    4. Chiudere Gestione pacchetti NuGet.

  5. Aprire Program.cs

  6. Sostituire le istruzioni using con le righe seguenti:

    using System;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Threading;
    using System.Collections.Generic;
    
    using Microsoft.Rest;
    using Microsoft.Rest.Azure.Authentication;
    using Microsoft.Azure.Management.DataLake.Store;
    using Microsoft.Azure.Management.DataLake.Store.Models;
    using Microsoft.IdentityModel.Clients.ActiveDirectory;
    

Autenticazione dell'utente finale

Aggiungere questo frammento di codice nell'applicazione client .NET. Sostituire i valori segnaposto con i valori recuperati da un'applicazione nativa Microsoft Entra (elencata come prerequisito). Questo frammento di codice consente di autenticare l'applicazione in modo interattivo con Data Lake Storage Gen1, ovvero viene chiesto di immettere le credenziali di Azure.

Per semplicità, il frammento seguente usa valori predefiniti per ID client e URI di reindirizzamento validi con qualsiasi sottoscrizione di Azure. Nel frammento seguente è sufficiente fornire il valore per l'ID del tenant. È possibile recuperare l'ID del tenant usando le istruzioni fornite in ottenere l'ID tenant.

  • Sostituire la funzione Main() con il codice seguente:

    private static void Main(string[] args)
    {
        //User login via interactive popup
        string TENANT = "<AAD-directory-domain>";
        string CLIENTID = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
        System.Uri ARM_TOKEN_AUDIENCE = new System.Uri(@"https://management.core.windows.net/");
        System.Uri ADL_TOKEN_AUDIENCE = new System.Uri(@"https://datalake.azure.net/");
        string MY_DOCUMENTS = System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyDocuments);
        string TOKEN_CACHE_PATH = System.IO.Path.Combine(MY_DOCUMENTS, "my.tokencache");
        var tokenCache = GetTokenCache(TOKEN_CACHE_PATH);
        var armCreds = GetCreds_User_Popup(TENANT, ARM_TOKEN_AUDIENCE, CLIENTID, tokenCache);
        var adlCreds = GetCreds_User_Popup(TENANT, ADL_TOKEN_AUDIENCE, CLIENTID, tokenCache);
    }
    

Informazioni utili sul frammento di codice precedente:

  • Il frammento precedente usa le funzioni helper GetTokenCache e GetCreds_User_Popup. Il codice per queste funzioni helper è disponibile qui su GitHub.
  • Per velocizzare il completamento dell'esercitazione, il frammento usa un ID client applicazione nativa disponibile per impostazione predefinita per tutte le sottoscrizioni di Azure. È quindi possibile usare questo frammento così com'è nell'applicazione.
  • Tuttavia, se si vuole usare il proprio ID client di dominio e applicazione Microsoft Entra, è necessario creare un'applicazione nativa di Microsoft Entra e quindi usare l'ID tenant Microsoft Entra, l'ID client e l'URI di reindirizzamento per l'applicazione creata. Per istruzioni, vedere Creare un'applicazione Active Directory per l'autenticazione dell'utente finale con Data Lake Storage Gen1.

Passaggi successivi

In questo articolo si è appreso come usare l'autenticazione dell'utente finale per eseguire l'autenticazione con Azure Data Lake Storage Gen1 usando .NET SDK. È ora possibile leggere gli articoli seguenti per informazioni su come usare .NET SDK in Azure Data Lake Storage Gen1.