Notifications d'applications sans propriétaires ou co-propriétaires

Dans l'article précédent, nous avons vu l'importance de ne pas laisser vos applications PowerApps sans propriétaires, ou uniquement avec des utilisateurs ayant le droit de consultation de l'application.

Pour pallier à ce type de problèmes, nous avons ensuite exploré les différentes façons d'y remédier en définissant de nouveaux rôles sur ces applications.

Dans cet article, je vous propose la mise en place d'un flux Power Automate pour recevoir périodiquement une notification par e-mail contenant un récapitulatif des applications orphelines.

Installation du flux

Pré requis

Télécharger le package du flux Power Automate en suivant ce lien : OrphanedAppsNotifier_v1.zip

Pour pouvoir exécuter le flux, vous devrez disposer d'un compte utilisateur ayant rôle Administrateur de la Power Platform.

Import

Utilisez la fonctionnalité d'import de Power Automate pour installer le flux dans votre environnement.


Sélectionner le fichier précédemment téléchargé, et après chargement du package, configurer les connections puis cliquer sur "Importer".

Configuration

Le flux installé ne nécessite qu'un élément de configuration, l'adresse e-mail du destinataire de réception des notifications.
Pour cela, passer en mode modification du flux et modifier l'action "Adresse mail notification".


Le flux est configuré pour se déclencher les premiers jours de chaque mois, à partir du 1er janvier 2022.
Cette périodicité peut être modifiée dans le paramétrage du déclencheur.

Détail du fonctionnement du flux

Connecteurs

Le flux utilise les connecteurs suivants :

  • Power Platform for admins : pour la récupération des environnements
  • Power Apps for admins : pour la récupération des applications
  • Power Apps for makers : pour la récupération des rôles des applications
  • Azure AD : pour la récupération des comptes utilisateurs propriétaires ou co-propriétaires
  • Office 365 Outlook : pour l'envoi de la notification par e-mail

Boucle sur les environnements et les applications

La première étape du flux consiste à récupérer et parcourir l'ensemble des environnements Power Platform du client Microsoft 365.


Il faut ensuite, pour chacun des environnements, parcourir l'ensemble des applications.

Vérification du propriétaire

Pour chacune des applications, nous vérifions dans un premier temps si le propriétaire désigné de l'application est toujours existant dans l'annuaire de l'entreprise.


Si le propriétaire est toujours existant, nous ne levons aucune alertes, et passons à l'application suivante.

Dans le cas contraire, nous procéderons à une vérification des rôles attribués sur l'application, co-propriétaires et/ou utilisateurs.

Pour cela, une condition "Exécuter après" est appliquée sur l'action suivante du flux.
Pour la modifier, ouvrir le menu sur l'action suivant la récupération du compte utilisateur dans l'annuaire, et cliquer sur "Configurer la propriété Exécuter après".


Sélectionner une ou plusieurs conditions et cliquer sur "Terminer".


Cette condition, une fois appliquée, est identifiable dans l'éditeur du flux, par une flèche de couleur et en pointillés et l'icône d'informations.


La suite des actions réalisées dans la boucle sur les applications sont regroupées dans une action appelée "Portée" (Scope dans la version anglaise).


Ceci permet d'appliquer la condition d'exécution, après l'action de récupération du propriétaire dans l'annuaire, à l'ensemble des actions qui viendront par la suite à l'intérieur de la boucle.

Vérification des rôles d'application

Cette seconde étape de vérification consiste à identifier les applications qui n'ont, en plus du propriétaire, pas de co-propriétaires, et donc uniquement des autorisations d'accès d'utilisation attribuées aux utilisateurs.

Une première condition exclue les applications de type personnalisation de formulaire SharePoint.


Nous utilisons dans un premier temps l'action "Obtenir les attributions de rôle de l'application" du connecteur "Power Apps for makers".

Un compteur, remis à zéro avant de début de la boucle sur les rôles récupérés pour l'application, permettra de calculer le nombre d'autorisations en édition positionnées sur l'application.


Pour chacun des rôles de co-propriétaires assigné sur l'application, nous testons si l'utilisateur est présent dans l'annuaire de l'entreprise.
Si c'est le cas, nous incrémentons le compteur du nombre d'utilisateurs co-propriétaires sur l'application en question.


A la fin de la boucle sur les rôles de l'application, il ne nous reste plus qu'à tester la valeur du compteur. Si celle-ci est égale à 0, c'est qu'il n'y a pas d'utilisateurs avec le droit d'édition sur l'application.

Nous ajoutons donc un nouvel objet dans la variable tableau des applications sans propriétaires ni co-propriétaires.

Dans le cas contraire, nous ajoutons cet objet dans la variable tableau des applications sans propriétaires.

Cet objet contient 3 propriétés, le nom de l'application, le nom de son propriétaire et son adresse e-mail.

Construction du tableau

A la fin de la boucle sur un environnement, nous construisons le message de sortie (contenu de la notification e-mail), avec les données récoltées dans les 2 variables de tableau.


Tout d'abord en ajoutant le nom de l'environnement dans le message.


Puis, pour chacun des 2 tableaux, s'ils contiennent des données, l'ajout sous forme de tableau HTML des informations liées aux applications.

Mise en forme et envoi de la notification

La dernière étape du flux consiste à appliquer une mise en forme pour les tableaux HTML qui sont insérés dans l'e-mail et l'envoi de ce dernier.


Le style des tableaux est appliqué grâce à une feuille de styles CSS.


Pour plus d'explications sur la construction des tableaux HTML et sur leur mise en forme, rendez-vous sur le blog de
Ryan MACLEAN.

Conclusion

L'utilisation du CoE Starter Kit Power Platform, proposé par Microsoft, est un très bon moyen de suivre et gouverner votre environnement Power Platform.

Il permet en autre de récupérer la liste des applications orphelines dans le tableau de bord.

Le flux proposé ici, vous permettra en plus de recevoir des rappels, sous forme de notification e-mail, pour ensuite mener les actions d'attribution de nouveaux rôles de propriétaire, ou de suppression de l'application si elle n'est plus utilisée.

Des améliorations peuvent être apportées à cette solution, en commençant par la prise en charge des formulaires SharePoint personnalisées avec Power Apps, en affectant des superviseurs différents selon les environnements, ou en implémentant des actions pour chacune des applications remontées afin de permettre aux superviseurs d'attribuer un nouveau propriétaire directement depuis Teams.

Commentaires

Posts les plus consultés de ce blog

Changer le propriétaire d'une application Power Apps

Changer l'expéditeur des e-mails envoyés dans les flux Power Automate

Suppression, restauration et archivage, des équipes et des canaux d'équipes Teams