Passaggio 2: Ottenere un token di accesso per l'autenticazioneStep 2: Get an authentication access token

Questo articolo fa parte di una procedura dettagliata per il push dei dati in un set di dati.This article is part of a step-by-step walkthrough to push data into a dataset.

Nel passaggio 1 Registrare l'app in Azure AD della procedura per il push dei dati in un set di dati è stata registrata un'app client in Azure AD.In step 1 of Push data into a dataset, Register the app with Azure AD, you registered a client app in Azure AD. In questo passaggio si ottiene un token di accesso per l'autenticazione.In this step, you get an authentication access token. Le app di Power BI sono integrate con Azure AD per fornire funzionalità sicure di accesso e autorizzazione per l'app.Power BI apps are integrated with Azure AD to provide secure sign in and authorization for your app. Si usa un token per l'autenticazione in Azure AD e l'accesso alle risorse di Power BI.You use a token to authenticate to Azure AD and gain access to Power BI resources.

Ecco come ottenere un token di accesso per l'autenticazione.Here's how to get an authentication access token.

Ottenere un token di accesso per l'autenticazioneGet an authentication access token

NOTA: prima di iniziare, assicurarsi di aver seguito i passaggi precedenti della procedura dettagliata per il push dei dati in un set di dati.NOTE: Before you get started, make sure you have followed the previous steps in the push data into a dataset walkthrough.

  1. In Visual Studio 2015 creare un progetto Applicazione console .In Visual Studio 2015, create a Console Application project.
  2. Installare il pacchetto NuGet Azure AD Authentication Library per .NET.Install the Azure AD Authentication Library for .NET NuGet package. Questo pacchetto viene usato per ottenere un token di sicurezza per l'autenticazione in un'app .NET.To get an authentication security token in a .NET app, you use this package. Ecco come installare il pacchetto:Here's how to install the package:

    a.a. In Visual Studio 2015 scegliere Strumenti > Gestione pacchetti NuGet > Console di Gestione pacchetti.In Visual Studio 2015, choose Tools > NuGet Package Manager > Package Manager Console.

    b.b. In Console di Gestione pacchettiimmettere Install-Package Microsoft.IdentityModel.Clients.ActiveDirectory -Version 2.21.301221612.In Package Manager Console, enter Install-Package Microsoft.IdentityModel.Clients.ActiveDirectory -Version 2.21.301221612.

  3. Aggiungere il codice seguente nella classe Program {…}.Add the code below into class Program {...}.
  4. Sostituire "{ClientID}" con l' ID client ottenuto in fase di registrazione dell'app.Replace "{ClientID}", with the Client ID you got when you registered the app. Vedere Registrare l'app in Azure AD.See Register the app with Azure AD.
  5. Dopo aver installato il pacchetto Microsoft.IdentityModel.Clients.ActiveDirectory, aggiungere using Microsoft.IdentityModel.Clients.ActiveDirectory; a Program.cs.After installing the Microsoft.IdentityModel.Clients.ActiveDirectory package, add using Microsoft.IdentityModel.Clients.ActiveDirectory; to Program.cs.
  6. Eseguire l'app console e accedere al proprio account di Power BI.Run the Console App, and login to your Power BI account. Nella finestra della console dovrebbe essere presente una stringa di token.You should see a token string in the Console Window.

Codice di esempio per ottenere il token di sicurezza per l'autenticazioneSample code to get authentication security token

Aggiungere questo codice a Program {...}.Add this code to Program {...}.

  • Una variabile token per chiamare le operazioni:A token variable to call operations:

    private static string token = string.Empty;
    
    static void Main(string[] args)
    {
    }
    
  • In static void Main(string[] args):In static void Main(string[] args):

    static void Main(string[] args)
    {
      //Get an authentication access token
      token = GetToken();
    }
    
  • Aggiungere un metodo GetToken():Add a GetToken() method:
       #region Get an authentication access token
       private static string GetToken()
       {
           // TODO: Install-Package Microsoft.IdentityModel.Clients.ActiveDirectory -Version 2.21.301221612
           // and add using Microsoft.IdentityModel.Clients.ActiveDirectory

           //The client id that Azure AD created when you registered your client app.
           string clientID = "{Client_ID}";

           //RedirectUri you used when you register your app.
           //For a client app, a redirect uri gives Azure AD more details on the application that it will authenticate.
           // You can use this redirect uri for your client app
           string redirectUri = "https://login.live.com/oauth20_desktop.srf";

           //Resource Uri for Power BI API
           string resourceUri = "https://analysis.windows.net/powerbi/api";

           //OAuth2 authority Uri
           string authorityUri = "https://login.windows.net/common/oauth2/authorize";

           //Get access token:
           // To call a Power BI REST operation, create an instance of AuthenticationContext and call AcquireToken
           // AuthenticationContext is part of the Active Directory Authentication Library NuGet package
           // To install the Active Directory Authentication Library NuGet package in Visual Studio,
           //  run "Install-Package Microsoft.IdentityModel.Clients.ActiveDirectory" from the nuget Package Manager Console.

           // AcquireToken will acquire an Azure access token
           // Call AcquireToken to get an Azure token from Azure Active Directory token issuance endpoint
           AuthenticationContext authContext = new AuthenticationContext(authorityUri);
           string token = authContext.AcquireToken(resourceUri, clientID, new Uri(redirectUri)).AccessToken;

           Console.WriteLine(token);
           Console.ReadLine();

           return token;
       }

       #endregion

Dopo avere ottenuto un token di autenticazione, è possibile chiamare qualsiasi operazione di Power BI.After you get an authentication token, you can call any Power BI operation. Il passaggio successivo illustra come chiamare l'operazione Create Dataset per creare un set di dati per eseguire il push dei dati in un dashboard.The next step shows you how to call the Create Dataset operation to create a dataset to push data into a dashboard.

Il passaggio successivo illustra come creare un set di dati in Power BI.The next step shows you how to create a dataset in Power BI.

Di seguito è riportato il listato di codice completo.Below is the complete code listing.

Listato di codice completoComplete code listing

using System;
using Microsoft.IdentityModel.Clients.ActiveDirectory;

namespace walkthrough_push_data
{
    class Program
    {
        private static string token = string.Empty;

        static void Main(string[] args)
        {

            //Get an authentication access token
            token = GetToken();

        }

        #region Get an authentication access token
        private static string GetToken()
        {
            // TODO: Install-Package Microsoft.IdentityModel.Clients.ActiveDirectory -Version 2.21.301221612
            // and add using Microsoft.IdentityModel.Clients.ActiveDirectory

            //The client id that Azure AD created when you registered your client app.
            string clientID = "{Client_ID}";

            //RedirectUri you used when you register your app.
            //For a client app, a redirect uri gives Azure AD more details on the application that it will authenticate.
            // You can use this redirect uri for your client app
            string redirectUri = "https://login.live.com/oauth20_desktop.srf";

            //Resource Uri for Power BI API
            string resourceUri = "https://analysis.windows.net/powerbi/api";

            //OAuth2 authority Uri
            string authorityUri = "https://login.windows.net/common/oauth2/authorize";

            //Get access token:
            // To call a Power BI REST operation, create an instance of AuthenticationContext and call AcquireToken
            // AuthenticationContext is part of the Active Directory Authentication Library NuGet package
            // To install the Active Directory Authentication Library NuGet package in Visual Studio,
            //  run "Install-Package Microsoft.IdentityModel.Clients.ActiveDirectory" from the nuget Package Manager Console.

            // AcquireToken will acquire an Azure access token
            // Call AcquireToken to get an Azure token from Azure Active Directory token issuance endpoint
            AuthenticationContext authContext = new AuthenticationContext(authorityUri);
            string token = authContext.AcquireToken(resourceUri, clientID, new Uri(redirectUri)).AccessToken;

            Console.WriteLine(token);
            Console.ReadLine();

            return token;
        }

        #endregion

    }
}

Passaggio successivo >Next Step >

Passaggi successiviNext steps

Creare un set di dati in Power BICreate a dataset in Power BI
Registrare un'app in Azure ADRegister an app with Azure AD
Azure AD Authentication Library per il pacchetto NuGet .NETAzure AD Authentication Library for .NET NuGet package
Eseguire il push dei dati in un set di dati di Power BIPush data into a Power BI dataset
Panoramica dell'API REST di Power BIOverview of Power BI REST API
Riferimento all'API REST di Power BIPower BI REST API reference
Altre domande?More questions? Provare la community di Power BITry the Power BI Community