Condividi tramite


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

Questo articolo illustra come usare .NET SDK per eseguire l'autenticazione degli utenti finali con Azure Data Lake Storage Gen1. Per l'autenticazione da servizio a servizio con Data Lake Storage Gen1 con .NET SDK, vedere Autenticazione da servizio a servizio con Data Lake Storage Gen1 con .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 assicurarsi che Origine pacchetto sia impostato su nuget.org e che la casella di controllo Includi versione preliminare sia selezionata.

    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, il che significa che viene richiesto di immettere le credenziali di Azure.

Per semplificare l'uso, il frammento di codice seguente usa i valori predefiniti per l'ID client e l'URI di reindirizzamento validi per qualsiasi sottoscrizione di Azure. Nel frammento di codice seguente è sufficiente specificare il valore per l'ID tenant. È possibile recuperare l'ID tenant seguendo 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);
    }
    

Un paio di cose da conoscere sul frammento di codice precedente:

  • Il frammento di codice precedente usa funzioni helper GetTokenCache e GetCreds_User_Popup. Il codice per queste funzioni helper è disponibile qui su GitHub.
  • Per completare l'esercitazione più velocemente, il frammento usa un ID client dell'applicazione nativa disponibile per impostazione predefinita per tutte le sottoscrizioni di Azure. È quindi possibile usare questo frammento di codice as-is nell'applicazione.
  • Tuttavia, se si vuole usare il proprio ID client applicazione e dominio Microsoft Entra, è necessario creare un'applicazione nativa Microsoft Entra e quindi usare l'ID tenant, l'ID client e l'URI di reindirizzamento di Microsoft Entra 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 esaminare gli articoli seguenti che illustrano come usare .NET SDK per usare Azure Data Lake Storage Gen1.