Este artigo é uma introdução à autenticação no Power BI e como obter um token de acesso usando uma ID do cliente. Para começar a criar um aplicativo do Power BI, veja Introdução à criação de um aplicativo Power BI.

A API do Power BI fornece acesso programático a recursos de painéis, como conjuntos de dados, tabelas e linhas. Esses recursos são protegidos pelo Azure AD (Azure Active Directory). Para obter acesso a recursos do Power BI, você autentica seu aplicativo como Azure AD.

Introdução à autenticação no Power BI

Os aplicativos do Power BI são integrados ao Active Directory do Azure (AD do Azure) para fornecer entrada e autorização seguras para seu aplicativo. Para integrar um aplicativo do Power BI ao AD do Azure, registre os detalhes do aplicativo no AD do Azure usando o Portal de Gerenciamento do Azure. Ao registrar um aplicativo no Active Directory do Azure, o aplicativo terceiriza a autenticação para o AD do Azure. O registro do aplicativo envolve falar sobre o seu aplicativo ao AD do Azure, incluindo a URL na qual ele está localizado, a URL para enviar respostas após a autenticação e o URI para identificar o aplicativo. Ao registrar um aplicativo cliente ou aplicativo Web no Active Directory do Azure, você concede à API REST do Power BI acesso ao aplicativo.

Um aplicativo Power BI usa uma ID do cliente para se identificar para AD do Azure. Veja ID do cliente do aplicativo do Azure. Para um aplicativo Web, você precisa de uma chave de segredo do cliente. Veja Chave secreta do cliente do aplicativo Web do Azure.

Para saber como registrar e autenticar um aplicativo do Power BI:

ID do cliente do aplicativo Azure

Um aplicativo Azure tem uma ID do cliente que é usada pelo aplicativo para se identificar aos usuários aos quais ele está solicitando permissões. Você pode usar uma ID do cliente para obter um token de autenticação. Para obter uma ID do Cliente do Azure, veja Como obter uma ID do aplicativo cliente.

Para obter um exemplo completo de como usar uma ID do Cliente do Azure para autenticar um aplicativo cliente, veja Autenticar um aplicativo cliente.

Por exemplo, o código C# a seguir usa uma ID do cliente do aplicativo do Azure para obter um token de acesso.

  static string AccessToken()
  {
        //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.

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

        string clientId = {clientIDFromAzureAppRegistration};

        //A redirect uri gives AAD more details about the specific application that it will authenticate.
        //Since a client app does not have an external service to redirect to, this Uri is the standard placeholder for a client app.
        string redirectUri = "https://login.live.com/oauth20_desktop.srf";

        // Create an instance of AuthenticationContext to acquire an Azure access token
        // OAuth2 authority Uri
        string authorityUri = "https://login.windows.net/common/oauth2/authorize";
        AuthenticationContext authContext = new AuthenticationContext(authorityUri);

        // Call AcquireToken to get an Azure token from Azure Active Directory token issuance endpoint
        //  AcquireToken takes a Client Id that Azure AD creates when you register your client app.
        //  To learn how to register a client app and get a Client ID, see https://msdn.microsoft.com/en-US/library/dn877542(Azure.100).aspx   
        string token = authContext.AcquireToken(resourceUri, clientID, new Uri(redirectUri)).AccessToken;

        return token;
  }

Chave de segredo do cliente de aplicativo Web do Azure

Ao registrar um aplicativo Web, você receberá uma Chavesecreta do cliente. A chave de segredo do cliente é usada pelo aplicativo Web para se identificar ao serviço do Power BI. Para obter uma Chave secreta do cliente do Azure, veja Como obter uma chave secreta do cliente.

Para obter um exemplo completo de como usar uma ID do cliente e uma Chave secreta de cliente do Azure para autenticar um aplicativo Web, veja Autenticar um aplicativo Web.

Consulte também

Introdução à criação de um aplicativo do Power BI
Como obter um locatário do Azure Active Directory
Criar um locatário do Azure Active Directory
Registrar um aplicativo cliente
Registrar um aplicativo Web
Mais perguntas? Experimente a Comunidade do Power BI