Authentification des utilisateurs finaux auprès d’Azure Data Lake Storage Gen1 à l’aide du SDK .NET

Dans cet article, vous allez apprendre à utiliser le SDK .NET pour authentifier les utilisateurs finaux auprès d’Azure Data Lake Storage Gen1. Pour plus d’informations sur l’authentification de service à service auprès de Data Lake Storage Gen1 à l’aide du SDK .NET, voir Authentification de service à service auprès de Data Lake Storage Gen1 à l’aide du SDK .NET.

Prérequis

Créer une application .NET

  1. Dans Visual Studio, sélectionnez le menu Fichier, puis Nouveau et Projet.

  2. Choisissez Application console (.NET Framework) , puis sélectionnez Suivant.

  3. Dans Nom du projet, entrez CreateADLApplication, puis sélectionnez Créer.

  4. Ajoutez les packages NuGet à votre projet.

    1. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le nom du projet, puis cliquez sur Gérer les packages NuGet.

    2. Dans l’onglet Gestionnaire de package NuGet, vérifiez que Source du package a la valeur nuget.org et que la case Inclure la version préliminaire est cochée.

    3. Recherchez et installez les packages NuGet suivants :

      • Microsoft.Azure.Management.DataLake.Store - Ce didacticiel utilise v2.1.3-preview.

      • Microsoft.Rest.ClientRuntime.Azure.Authentication - Ce didacticiel utilise v2.2.12.

        Ajouter une source NuGet

    4. Fermez le Gestionnaire de package NuGet.

  5. Ouvrez Program.cs.

  6. Remplacez les instructions using par les lignes suivantes :

    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;
    

Authentification des utilisateurs finaux

Ajoutez cet extrait de code dans votre application cliente .NET. Remplacez les valeurs d’espace réservé par les valeurs récupérées à partir d’une application native Microsoft Entra (répertoriées comme prérequis). Cet extrait de code vous permet d’authentifier votre application de manière interactive auprès de Data Lake Storage Gen1, ce qui signifie que vous êtes invité à entrer vos informations d’identification Azure.

Pour simplifier l’utilisation, l’extrait de code suivant utilise les valeurs par défaut de l’ID client et l’URI de redirection qui sont valides avec n’importe quel abonnement Azure. Dans l’extrait de code suivant, il vous suffit de fournir la valeur de votre ID de locataire. Vous pouvez récupérer l’ID de locataire en suivant les instructions fournies dans la section Obtenir l’ID de locataire.

  • Remplacez la fonction Main() par le code suivant :

    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);
    }
    

Voici quelques informations utiles concernant l’extrait de code précédent :

  • L’extrait de code précédent utilise les fonctions d’assistance GetTokenCache et GetCreds_User_Popup. Le code de ces fonctions d'assistance est disponible ici sur GitHub.
  • Pour vous aider à effectuer le didacticiel plus rapidement, l’extrait de code utilise un ID client d’application native disponible par défaut pour tous les abonnements Azure. Vous pouvez donc utiliser cet extrait de code en l’état dans votre application.
  • Toutefois, si vous souhaitez utiliser votre propre id client Microsoft Entra domaine et d’application, vous devez créer une Microsoft Entra application native, puis utiliser l’ID de locataire Microsoft Entra, l’ID client et l’URI de redirection de l’application que vous avez créée. Pour obtenir des instructions, voir la page Créer une application Active Directory pour l’authentification des utilisateurs finaux auprès de Data Lake Storage Gen1.

Étapes suivantes

Dans cet article, vous avez appris à vous servir de l’authentification des utilisateurs finaux auprès d’Azure Data Lake Storage Gen1 avec le SDK .NET. Vous pouvez maintenant consulter les articles ci-après qui expliquent comment utiliser le SDK .NET pour travailler avec Azure Data Lake Storage Gen1.