Ověřování mezi službami s Azure Data Lake Storage Gen1 pomocí sady .NET SDK

V tomto článku se dozvíte, jak pomocí sady .NET SDK provádět ověřování služba-služba pomocí Azure Data Lake Storage Gen1. Informace o ověřování koncových uživatelů pomocí Data Lake Storage Gen1 pomocí sady .NET SDK najdete v tématu Ověřování koncových uživatelů pomocí Data Lake Storage Gen1 pomocí sady .NET SDK.

Požadavky

Vytvoření aplikace .NET

  1. V sadě Visual Studio vyberte nabídku File (Soubor ), New (Nový) a pak Project ( Projekt).

  2. Zvolte Konzolová aplikace (.NET Framework) a pak vyberte Další.

  3. Do pole Název projektu zadejte CreateADLApplicationa pak vyberte Vytvořit.

  4. Přidejte do projektu balíčky NuGet.

    1. V Průzkumníku řešení klikněte pravým tlačítkem na název projektu a klikněte na možnost Správa balíčků NuGet.

    2. Ujistěte se, že na kartě Správce balíčků NuGet je položka Zdroj balíčku nastavena na hodnotu nuget.org a že je zaškrtnuto políčko Zahrnout předběžné verze.

    3. Vyhledejte a nainstalujte následující balíčky NuGet:

      • Microsoft.Azure.Management.DataLake.Store – Tento kurz používá verzi v2.1.3-preview.

      • Microsoft.Rest.ClientRuntime.Azure.Authentication – Tento kurz používá verzi v2.2.12.

        Přidání zdroje NuGet

    4. Zavřete Správce balíčků NuGet.

  5. Otevřete soubor Program.cs, odstraňte stávající kód a potom vložte následující příkazy, čímž přidáte odkazy na obory názvů.

using System;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading;
using System.Collections.Generic;
using System.Security.Cryptography.X509Certificates; // Required only if you are using an Azure AD application created with certificates

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;

Ověřování mezi službami pomocí tajného klíče klienta

Přidejte tento fragment kódu do klientské aplikace .NET. Zástupné hodnoty nahraďte hodnotami načtenými z webové aplikace Microsoft Entra (uvedené jako předpoklad). Tento fragment kódu umožňuje ověřit aplikaci neinteraktivně pomocí Data Lake Storage Gen1 pomocí tajného klíče nebo klíče klienta pro Microsoft Entra webovou aplikaci.

private static void Main(string[] args)
{
    // Service principal / application authentication with client secret / key
    // Use the client ID of an existing AAD "Web App" application.
    string TENANT = "<AAD-directory-domain>";
    string CLIENTID = "<AAD_WEB_APP_CLIENT_ID>";
    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 secret_key = "<AAD_WEB_APP_SECRET_KEY>";
    var armCreds = GetCreds_SPI_SecretKey(TENANT, ARM_TOKEN_AUDIENCE, CLIENTID, secret_key);
    var adlCreds = GetCreds_SPI_SecretKey(TENANT, ADL_TOKEN_AUDIENCE, CLIENTID, secret_key);
}

Předchozí fragment kódu používá pomocnou funkci GetCreds_SPI_SecretKey. Kód této pomocné funkce je k dispozici tady na GitHubu.

Ověřování mezi službami pomocí certifikátu

Přidejte tento fragment kódu do klientské aplikace .NET. Zástupné hodnoty nahraďte hodnotami načtenými z webové aplikace Microsoft Entra (uvedené jako předpoklad). Tento fragment kódu umožňuje neinteraktivně ověřit aplikaci pomocí Data Lake Storage Gen1 pomocí certifikátu pro Microsoft Entra webovou aplikaci. Pokyny k vytvoření aplikace Microsoft Entra najdete v tématu Vytvoření instančního objektu s certifikáty.

private static void Main(string[] args)
{
    // Service principal / application authentication with certificate
    // Use the client ID and certificate of an existing AAD "Web App" application.
    string TENANT = "<AAD-directory-domain>";
    string CLIENTID = "<AAD_WEB_APP_CLIENT_ID>";
    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/");
    var cert = new X509Certificate2(@"d:\cert.pfx", "<certpassword>");
    var armCreds = GetCreds_SPI_Cert(TENANT, ARM_TOKEN_AUDIENCE, CLIENTID, cert);
    var adlCreds = GetCreds_SPI_Cert(TENANT, ADL_TOKEN_AUDIENCE, CLIENTID, cert);
}

Předchozí fragment kódu používá pomocnou funkci GetCreds_SPI_Cert. Kód této pomocné funkce je k dispozici tady na GitHubu.

Další kroky

V tomto článku jste zjistili, jak používat ověřování mezi službami k ověřování pomocí Data Lake Storage Gen1 pomocí sady .NET SDK. Teď se můžete podívat na následující články, které popisují, jak používat sadu .NET SDK k práci s Data Lake Storage Gen1.