Power Apps code apps : du React hébergé et gouverné par la Power Platform
Les code apps hébergent une application React ou Vue dans la Power Platform, avec son identité et sa gouvernance, sans reconstruire authentification et cycle de vie à part. Activation par environnement, licence Power Apps Premium, limites à connaître, et quand le low-code suffit encore.
Jusqu’ici, le choix était binaire. Soit une application se construisait en low-code, et héritait de l’identité, des connecteurs et de la gouvernance de la Power Platform. Soit elle se développait en code, et il fallait alors reconstruire tout cela : hébergement, authentification, gestion des secrets, cycle de vie applicatif, politiques de données.
Les code apps évitent ce choix : on écrit une application web dans son éditeur habituel, avec React, Vue ou un autre framework, puis on la pousse vers la Power Platform, qui l’héberge et fournit la couche d’identité et de gouvernance. Microsoft les a annoncées en disponibilité générale sur son blog Power Platform.
Une application monopage écrite en local et hébergée par la plateforme
Une code app est une application web monopage que vous écrivez, construisez et exécutez localement, et que la Power Platform héberge ensuite. Microsoft écrit que les code apps prennent en charge les applications monopage, et qu’à l’exécution une code app réunit trois pièces : votre code, la bibliothèque cliente Power Apps — parfois appelée le « Power Apps SDK », livrée dans le paquet npm @microsoft/power-apps — et l’hôte Power Apps, qui gère l’authentification de l’utilisateur final et le chargement de l’application.
Ce qu’elle apporte par rapport à un hébergement autonome :
- L’authentification et l’autorisation Microsoft Entra, sans code d’authentification à écrire ni à maintenir.
- L’accès aux sources de données Power Platform et à plus de 1 500 connecteurs, appelables directement depuis JavaScript.
- Le respect des stratégies de plateforme managée de l’organisation : limites de partage d’applications, accès conditionnel, protection contre la perte de données.
- Le déploiement et le cycle de vie applicatif simplifiés.
Côté outillage, Microsoft demande un IDE, Node.js, npm, Git et le CLI Power Apps.
Ce qu’une code app ne change pas : vous restez responsable du code, de ses dépendances et de sa qualité.
Activation par environnement et licence Power Apps Premium
L’activation par environnement. Ce n’est pas un réglage de créateur : Microsoft écrit que les administrateurs Power Platform et les administrateurs d’environnement peuvent définir cette option. Dans le centre d’administration Power Platform, sur l’environnement visé, le chemin est Settings puis, dans la sous-section Product, Features : la fonctionnalité Power Apps code apps y porte une bascule Enable code apps. Sur un parc de plusieurs environnements, un administrateur l’active en lot avec les groupes d’environnements et leurs règles.
La capacité n’est pas active d’office : c’est un administrateur qui l’active, environnement par environnement.
La licence. Tout utilisateur final qui exécute une code app a besoin d’une licence Power Apps Premium. Elle se règle avant de construire l’application, puisqu’elle conditionne son usage par les utilisateurs finaux.
Les deux exigences ne se confondent pas : sur un environnement managé, tout usage actif demande l’une des licences autonomes qualifiantes ou un compteur au paiement à l’usage ; une code app demande en propre une licence Power Apps Premium par utilisateur final, que l’environnement soit managé ou non.
Le CLI s’appelle pa, et les commandes pac code seront remplacées
Deux outils coexistent. pac, le Power Platform CLI, est l’outil historique et généraliste ; son groupe code compte dix commandes consacrées aux code apps, et la documentation marque encore ce groupe en préversion. pa, le CLI Power Apps, est le nouvel outil dédié aux code apps. Il s’installe par npm — npm install --global @microsoft/power-apps-cli — et ses commandes suivent le format pa <groupe> <commande>, sur cinq groupes : pa app, pa auth, pa connector, pa connection et pa telemetry.
Attention à une confusion facile : @microsoft/power-apps n’est pas le CLI, c’est la bibliothèque cliente. Le CLI est le paquet @microsoft/power-apps-cli, et il s’invoque pa.
Microsoft écrit que la nouvelle interface CLI « remplacera ces commandes, qui seront déconseillées dans une prochaine version ». Le verbe est au futur : les commandes pac code ne sont pas encore déconseillées, et Microsoft ne publie pas de date.
| Tâche | Avec pac code | Avec le CLI pa |
|---|---|---|
| Initialiser une code app | pac code init | pa app init |
| Démarrer l’hôte local | pac code run | pa app run |
| Publier vers un environnement | pac code push | pa app push |
| Ajouter une source de données | pac code add-data-source | pa app add data-source |
| Ajouter un flux Power Automate | aucune commande | pa app add flow |
| Lister les flux de l’environnement | aucune commande | pa app list-flows |
| S’authentifier | pac auth create | pa auth login |
Les deux lignes sans équivalent ne sont pas des variantes d’écriture : le groupe pac code ne porte aucune commande de flux. Le CLI pa en ajoute d’autres qui n’ont pas non plus de contrepartie, dont pa app share, qui partage l’application avec des utilisateurs ou des principaux de service, et pa app add dataverse-api, qui ajoute une action ou une fonction Dataverse.
Une équipe qui a monté une chaîne d’intégration continue sur pac code a donc un travail de reprise à planifier. Notre lecture : c’est le genre de reprise qui ne coûte pas cher tant qu’on la fait à froid, et qui se paie mal le jour où la dépréciation arrive au milieu d’autre chose.
Les limites à connaître avant de s’engager
Microsoft en documente cinq. Deux engagent l’architecture : le point de terminaison public sans restriction par adresse IP, et l’absence de prise en charge de l’intégration Git de la plateforme.
- Les ressources compilées sont servies depuis un point de terminaison accessible publiquement, qui ne prend pas en charge les restrictions par adresse IP. Le réglage d’environnement de liaison IP et de pare-feu SAS ne s’applique donc pas. Pour restreindre l’accès par adresse, Microsoft renvoie vers l’accès conditionnel par emplacement, puisque les code apps s’authentifient auprès de Microsoft Entra ID. La page de configuration système ajoute de ne pas stocker de données sensibles dans l’application, mais de les tenir dans une source de données, lue après les contrôles d’authentification et d’autorisation.
- L’intégration Git de la Power Platform n’est pas prise en charge. À relever pour une équipe qui vient du code : le gestionnaire de sources de l’équipe reste bien sûr le sien, mais la fonctionnalité Git de la plateforme, elle, ne couvre pas les code apps.
- Les code apps ne sont pas prises en charge dans Power Apps pour Windows.
- Elles ne prennent pas encore en charge l’intégration de données Power BI — la fonction
PowerBIIntegration— mais elles peuvent être incorporées dans un rapport Power BI par le visuel Power Apps. - Elles ne prennent pas en charge l’intégration des formulaires SharePoint.
Les cas où une code app convient, et ceux où le low-code suffit
Le bon cas. Une interface qui demande un contrôle fin du rendu ou une bibliothèque tierce que le low-code ne sait pas reproduire, mais qui doit vivre dans le périmètre de gouvernance de l’organisation, avec l’identité Entra et les stratégies de données existantes. C’est aussi le bon choix quand l’équipe qui la construit est une équipe de développement, avec son gestionnaire de sources et sa chaîne d’intégration.
Le mauvais cas. Un formulaire, une liste, un processus d’approbation. Une application canevas ou pilotée par modèle fait cela plus vite, se maintient sans développeur, et ne demande à personne de connaître React.
Le cas à surveiller. L’équipe qui choisit le code parce qu’elle connaît le code, sur un besoin que le low-code couvrirait. Notre lecture : ce coût n’apparaît pas à la construction, mais le jour où l’auteur de l’application n’est plus là pour la reprendre.
Une fois publiée, une code app suit les limites de partage des applications canevas et peut être mise en quarantaine ; les stratégies de prévention de perte de données s’appliquent à son lancement, et l’accès conditionnel s’applique à une application individuelle. Ce sont des leviers nommés un par un, pas un droit de veto général sur la publication.
Ces arbitrages entre low-code, pro-code et gouvernance sont exactement ceux que nous posons au démarrage d’un projet ; notre page Power Apps décrit le cadre.
Les sources Microsoft
- Vue d’ensemble des applications de code Power Apps — Microsoft Learn
- Power Apps code apps overview — Microsoft Learn, texte de référence
- Informations de référence sur la commande CLI Power Apps — Microsoft Learn
- Démarrage rapide : créer une application de code à l’aide de l’interface CLI Power Apps — Microsoft Learn
- Groupe de commandes
codedu Power Platform CLI — Microsoft Learn - Groupe de commandes
authdu Power Platform CLI — Microsoft Learn - Architecture des applications de code — Microsoft Learn
- Configuration système des applications de code — Microsoft Learn
- Licences — environnements managés — Microsoft Learn
- Generally available: host and run code apps in Power Apps — Blog Microsoft Power Platform
Ce qu'un article ne peut pas savoir
Un article décrit ce qui vaut pour tout le monde. Ce qui change d'une organisation à l'autre, c'est l'inventaire : quelles applications, quels comptes, quels équipements sont réellement concernés chez vous. C'est l'inventaire qui décide de l'effort, et il ne se répond pas sur une page.
Vous parlez aux ingénieurs qui feraient le travail, pas à un intermédiaire. Réponse sous 24 heures ouvrées.
Vérifier ce qui est encore vrai
Les dates annoncées sont parfois repoussées, les produits changent de nom, les conditions évoluent. Le blog suit ces sujets au fil du temps : quand une règle change, un nouvel article le dit.
Chercher un sujet dans le blogDans le même dossier
Trois articles du même sujet. Le blog en compte 149, tous en accès libre.

