Partager via


Créer une application de principal de service via l’API (version préliminaire)

[Cet article fait partie de la documentation en version préliminaire et peut faire l’objet de modifications.]

L’authentification via nom d’utilisateur et mot de passe n’est souvent pas idéale, en particulier avec la montée en puissance de l’authentification multifactorielle. Dans de tels cas, l’authentification du principal de service (ou du flux d’informations d’identification du client) est préférable. Vous pouvez vous authentifier auprès d’un principal de service en enregistrant une nouvelle application de principal de service dans votre propre client Microsoft Entra, puis en enregistrant cette même application auprès de Power Platform.

Note

Power Platform CLI offre un moyen plus simple. Pour en savoir plus, consultez Création d’une application de principal de service à l’aide de PAC CLI.

Enregistrement d’une application de gestion administrative

Tout d’abord, l’application cliente doit être enregistrée dans votre client Microsoft Entra. Consultez l’article Authentification pour les API Power Platform pour en savoir plus.

Une fois votre application client enregistrée dans Microsoft Entra ID, elle doit également être enregistrée auprès de Microsoft Power Platform. Aujourd’hui, il n’y a aucun moyen de le faire via le centre d’administration Power Platform ; cela doit être fait par programmation via l’API Power Platform ou PowerShell pour les administrateurs Power Platform. Un principal de service ne peut pas s’enregistrer lui-même. De par sa conception, un administrateur utilisant un contexte de nom d’utilisateur et de mot de passe doit enregistrer l’application. Cette contrainte garantit que seule une personne qui est un administrateur de l’application du client enregistre l’application.

Pour enregistrer une nouvelle application de gestion, utilisez la requête suivante avec un jeton de support obtenu à l’aide de l’authentification par nom d’utilisateur et mot de passe :

PUT https://api.bap.microsoft.com/providers/Microsoft.BusinessAppPlatform/adminApplications/{CLIENT_ID_FROM_AZURE_APP}?api-version=2020-10-01
Host: api.bap.microsoft.com
Accept: application/json
Authorization: Bearer eyJ0eXAiOi...

Faire des demandes en tant que principal du service

Maintenant que le principal de service est enregistré auprès de Microsoft Power Platform, vous pouvez vous authentifier en tant que principal de service lui-même. Utilisez la demande suivante pour rechercher votre liste d’applications de gestion. Cette demande peut utiliser un jeton porteur obtenu à l’aide du flux d’authentification des informations d’identification du client :

GET https://api.bap.microsoft.com/providers/Microsoft.BusinessAppPlatform/adminApplications?api-version=2020-10-01
Host: api.bap.microsoft.com
Accept: application/json
Authorization: Bearer eyJ0eXAiOi...

Création d’une application de principal de service à l’aide de PAC CLI

Utilisez Microsoft Power Platform CLI (PAC CLI) pour ajouter l’application Microsoft Entra ID (SPN) et l’utilisateur associé de l’application à l’environnement Dataverse. La commande admin create-service-principal crée l’application Microsoft Entra ID (SPN) et l’enregistre également auprès de Microsoft Power Platform.

pac admin create-service-principal  --environment <environment id>

En savoir plus sur la commande pac admin create-service-principal et sur la façon d’installer PAC CLI.

Limitations des principaux de service

Actuellement, l’authentification du principal de service fonctionne pour la gestion de l’environnement, les paramètres du client et la gestion Power Apps. Les API liées à Flow sont prises en charge pour l’authentification du principal du service dans les situations où une licence n’est pas requise, car il n’est pas possible d’attribuer des licences aux identités du principal du service dans Microsoft Entra ID.

Les applications du principal de service sont traitées dans Power Platform de la même manière que les utilisateurs normaux avec le rôle Administrateur Power Platform attribué. Des rôles et des autorisations granulaires ne peuvent pas être attribués pour limiter leurs capacités. Aucun rôle spécial n’est attribué à l’application dans Microsoft Entra ID, car c’est la façon dont les services de la plateforme traitent les demandes effectuées par les principaux de service.