Cet article est une introduction à l’authentification dans Power BI et sur la façon d’obtenir un jeton d’accès à l’aide d’un ID client. Pour prendre en main la création d’une application Power BI, consultez Prendre en main la création d’une application Power BI.

L’API de Power BI fournit un accès par programmation à des ressources de tableau de bord telles que des jeux de données, des tables et des lignes. Ces ressources sont protégées par Azure Active Directory (Azure AD). Pour accéder aux ressources Power BI, vous authentifiez votre application avec Azure AD.

Présentation de l’authentification dans Power BI

Les applications Power BI sont intégrées à Azure Active Directory (Azure AD) afin d’offrir une connexion et une autorisation sécurisées pour votre application. Pour intégrer une application Power BI à Azure AD, vous devez inscrire les informations relatives à votre application auprès d’Azure AD à l’aide du portail de gestion Azure. Lorsque vous inscrivez une application dans Azure Active Directory, l’application sous-traite l’authentification à Azure AD. L’inscription d’une application consiste à indiquer à Azure AD des informations sur votre application, notamment l’URL de son emplacement, l’URL permettant d’envoyer des réponses après authentification, et l’URI permettant d’identifier votre application. Lorsque vous inscrivez une application cliente ou web dans Azure AD, vous lui donnez accès à l’API REST de Power BI.

Une application Power BI utilise un ID client pour s’identifier sur Azure AD. Voir ID client d’application Azure. Pour une application web, vous avez besoin d’une clé secrète du client. Voir Clé secrète du client d’application web Azure.

Pour savoir comment enregistrer et authentifier une application Power BI :

ID client d’application Azure

Une application Azure a un ID client qui lui permet de s’identifier auprès des utilisateurs auxquels elle demande des autorisations. Vous pouvez utiliser un ID client pour obtenir un jeton d’authentification. Pour obtenir un ID client Azure, consultez Obtention d’un ID d’application cliente.

Pour obtenir un exemple complet montrant comment utiliser un ID client Azure pour authentifier une application cliente, consultez Authentifier une application cliente.

Par exemple, le code C# suivant utilise un ID client d’application Azure pour obtenir un jeton d’accès.

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

Clé secrète cliente d’une application web Azure

Quand vous inscrivez une application web, vous recevez une clésecrète cliente. La clé secrète client est utilisée par l’application web pour s’identifier en toute sécurité auprès du service Power BI. Pour obtenir une clé secrète du client Azure, consultez Obtention d’une clé secrète du client.

Pour obtenir un exemple complet montrant comment utiliser un ID client et une clé secrète du client Azure pour authentifier une application web, consultez Authentifier une application web.

Voir aussi

Prendre en main la création d’une application Power BI
Obtention d’un locataire Azure Active Directory
Créer un locataire Azure Active Directory
Inscrire une application cliente
Inscrire une application web
D’autres questions ? Posez vos questions à la communauté Power BI