Utiliser Flow pour la gouvernance des données directionnelles

Effectué

Dans certaines situations professionnelles, des données peuvent provenir de sources externes au moyen de connecteurs et être intégrées à des services comportant également vos informations métier importantes. En général, ces connecteurs communiquent entre eux. Le défi des stratégies de protection contre la perte de données (DLP) est de garantir que les connecteurs ne communiquent que dans un sens, ce qui empêche l’envoi accidentel de vos précieuses données métier à un tiers. La gestion du flux de données visant à s’assurer qu’elles ne vont que là où elles sont censées être s’appelle la gouvernance directionnelle des données.

À l’heure actuelle, les stratégies DLP ne gèrent pas automatiquement la gouvernance directionnelle des données. Mais vous pouvez intercepter et empêcher tout flux d’envoyer vos données métier à des tiers à l’aide de Power Automate.

Voici un exemple : supposons que votre organisation souhaite garder une trace des publications sur X (anciennement Twitter) à l’aide de SharePoint. Sans contrôles en place, vos informations métier pourraient transiter de SharePoint vers X.

Pour vous assurer que les données ne se déplacent que dans la bonne direction (de X vers SharePoint), procédez comme suit :

  1. Créez une stratégie DLP depuis le Centre d’administration Power Platform pour inclure les connecteurs SharePoint et X dans le groupe de données Métier. Cela permet aux créateurs de créer des flux à l’aide de ces deux connecteurs.

    Capture d’écran de la page Stratégies de données du Centre d’administration Microsoft Power Platform affichant les connecteurs X et SharePoint de l’étape Affecter des connecteurs.

  2. Ensuite, connectez-vous à Power Automate Maker Portal à l’aide de votre compte administrateur pour créer un flux de gouvernance. Vous créez un flux planifié qui s’exécute toutes les heures.

  3. Dans le menu gauche de l’écran d’accueil, cliquez sur + Créer, puis sélectionnez Flux de cloud planifié. Donnez à votre flux un nom, une date et une heure de début et une répétition toutes les heures, puis cliquez sur Créer.

    Capture d’écran de la boîte de dialogue Créer un flux planifié avec le champ Nom du flux défini sur Détecter les actions X.

    Un déclencheur de périodicité est alors automatiquement ajouté à votre flux.

  4. Ensuite, vous allez créer une variable qui calcule le nombre de « cycles » au cours des 60 dernières minutes. (Un cycle est une petite unité de temps.) La variable de cette étape vous permettra, ultérieurement dans le flux, de voir si des flux ont été créés ou modifiés depuis la dernière exécution de votre flux, il y a 60 minutes.

  5. Cliquez sur le signe + sous le déclencheur de Périodicité, puis le menu Ajouter une action s’affiche. Dans la zone de Recherche, saisissez Initialiser la variable et faites défiler les résultats vers le bas pour trouver l’action Initialiser la variable. (Elle se trouve dans les actions de Variable.)

  6. Cliquez sur le titre Initialiser la variable et redéfinissez le nom de l’action sur Initialiser la variable - Timestamp Hour Ago. Dans le champ Nom, saisissez previousTimestamp. Dans le champ Type, sélectionnez Entier. Placez votre curseur dans le champ Valeur, puis vous pouvez sélectionner un éclair (pour ajouter du contenu dynamique à partir d’une étape précédente) ou fx (pour ajouter une expression). Comme vous allez saisir une expression, sélectionnez fx.

    Saisissez cette formule ticks(addMinutes(utcNow(),-60)), puis cliquez sur Ajouter.

    Capture d’écran de la page Mes flux Power Automate avec le champ Valeur de l’action Initialiser la variable comportant la formule relative aux cycles mis en évidence.

    Ensuite, vous allez créer une autre variable. Cette variable vous permettra, ultérieurement dans votre flux, de détecter si d’autres flux incluent une action X.

  7. Cliquez sur le + sous l’étape que vous venez de créer pour ajouter une autre action. Recherchez et ajoutez une autre action Initialiser la variable. Cliquez sur le titre Initialiser la variable et redéfinissez le nom de l’action sur Initialiser la variable - Does flow contain X Action. Dans le champ Nom, ajoutez isFlowAction, puis redéfinissez le Type sur Booléen. Définissez false comme valeur par défaut en sélectionnant false dans la liste déroulante sous Valeur. Vous utiliserez cette variable ultérieurement dans votre flux lorsque vous détecterez qu’un flux inclut une action X.

    Capture d’écran d’une deuxième action Initialiser la variable nommée Does flow contain X Action.

    Ensuite, vous obtenez une liste d’environnements. Cette liste d’environnements créés lors de cette étape vous permettra, ultérieurement dans le flux, de vérifier si chaque environnement comporte un flux comprenant des actions X.

  8. Cliquez sur le + sous l’étape que vous avez créée et recherchez Lister les environnements en tant qu’administrateur ; cette action se trouve dans le connecteur Power Platform for Admins. Il n’est pas nécessaire de modifier les paramètres de cette étape.

    Capture d’écran de la nouvelle action Power Platform for Admins avec l’option Lister les environnements en tant qu’administrateur mise en évidence.

    Après avoir répertorié les environnements, vous obtenez une liste des flux dans chaque environnement.

  9. Cliquez sur le + sous l’étape que vous avez créée, puis recherchez Lister les flux en tant qu’administrateur (V2). (S’il existe une version ultérieure à la V2, utilisez la plus récente.) Cette action se trouve sous le connecteur Gestion de Power Automate.

    Capture d’écran de l’étape Choisir une action avec le connecteur Gestion de Power Automate et l’action Lister les flux en tant qu’administrateur mis en évidence.

  10. L’action Lister les flux en tant qu’administrateur nécessite le nom d’un environnement comme paramètre d’entrée. Placez votre curseur dans le champ Environnement, puis sélectionnez Valeurs personnalisées dans la liste déroulante. L’éclair et l’icône fx s’affichent alors à nouveau. Cette fois-ci, vous souhaitez utiliser le contenu dynamique généré à notre étape Lister les environnements en tant qu’administrateur, donc sélectionnez l’éclair.

  11. Vous voyez une liste des sorties disponibles à utiliser à partir des étapes précédentes que vous avez créées dans votre flux. Faites défiler vers le bas et recherchez l’étape Lister les environnements en tant qu’administrateur ; sous cette étape, sélectionnez la colonne Name. Lorsque vous fournissez cette entrée, une action Appliquer à chacun est automatiquement ajoutée pour itérer dans tous vos environnements.

    Capture d’écran de l’action Appliquer à chacun avec l’action Lister les flux en tant qu’administrateur comportant le contenu dynamique Name.

Seule l’exploration des flux modifiés depuis la dernière exécution de ce flux vous intéresse, donc vous allez ajouter une condition à votre flux pour comparer les cycles du dernier timestamp modifié de chaque flux à la variable Timestamp Hour Ago que vous avez définie plus tôt dans ce flux.

  1. Pour ce faire, vous devez d’abord calculer les cycles de votre dernier timestamp modifié. L’instruction complète est ticks(items('Apply_to_each_2')?['properties']?['lastModifiedTime']) is greater than previousTimestamp.

    Capture d’écran de l’action Condition avec un nombre de cycles supérieur au précédent avec les options Si oui et Si non.

  2. Si vous détectez qu’un flux a été modifié dans les 60 dernières minutes, vous souhaitez vérifier qu’il ne vous appartient pas, en tant qu’administrateur. Cette vérification vous aidera à éviter une erreur lorsque vous tenterez d’ajouter l’administrateur en tant que copropriétaire d’un flux à une étape future.

    Utilisez le connecteur Utilisateurs d’Office 365 et l’action Obtenir mon profil (v2), puis ajoutez-les à la branche Si oui. Cette étape renvoie des informations sur l’utilisateur qui a établi une connexion avec le connecteur. Dans ce cas, il s’agit de l’administrateur.

    Capture d’écran de l’action Utilisateurs d’Office 365 sous la branche Si oui avec l’action Obtenir mon profil mise en évidence.

  3. À présent, vous allez ajouter une autre condition qui vérifie si l’ID d’objet Créateur (de l’action Lister les flux en tant qu’administrateur) est égal à l’ID (de l’action Obtenir mon profil (V2)).

    Dans la branche Si oui, ajoutez l’action Modifier le rôle du propriétaire du flux en tant qu’administrateur, qui appartient au connecteur Power Automate for Admins. Vous allez ajouter votre administrateur en tant que copropriétaire du flux et faciliter l’extraction de la définition du flux, ce qui nécessite que vous soyez un copropriétaire du flux.

    Vous récupérerez la définition du flux à une étape ultérieure, mais pour le moment, fournissez le Nom de l’environnement et le Nom du flux actuels. Développez la section Corps/put et ajoutez ces détails sur votre utilisateur administrateur : adresse e-mail, nom d’affichage et ID. Ces valeurs sont accessibles dans le contenu dynamique de votre action Obtenir mon profil (V2).

    Capture d’écran de l’action Modifier le rôle du propriétaire du flux en tant qu’administrateur avec les propriétés mises en évidence.

  4. Après avoir ajouté votre compte administrateur en tant que copropriétaire du flux, vous pouvez appeler l’action Obtenir le flux en tant qu’administrateur à partir du connecteur Power Automate Management.

    Capture d’écran du connecteur Power Automate Management avec l’action Obtenir le flux en tant qu’administrateur mis en évidence.

  5. Les entrées pour l’action Obtenir le flux en tant qu’administrateur incluent le Nom de l’environnement et le Nom du flux actuels. La sortie de cette action comprend la définition du flux qui vous permettra de déterminer si une action X existe.

    Capture d’écran de la branche Si oui comportant l’action Obtenir le flux en tant qu’administrateur ajoutée avec le champ Environnement défini sur Name et le champ Flux défini sur Flow Name.

  6. Pour vérifier si une action X est utilisée, ajoutez une condition à votre flux et vérifiez si l’attribut Action Api name (de l’action Obtenir le flux en tant qu’administrateur) est égal à shared_twitter. Une fois que vous avez ajouté cette condition, une boucle Appliquer à chacun est appliquée. En effet, l’attribut Action Api name fait partie d’un tableau, chaque flux pouvant comporter plusieurs actions.

  7. Dans la branche Si oui, redéfinissez votre variable isFlowAction sur true, puisque vous avez maintenant trouvé un flux qui inclut une action Twitter. Cette variable vous permettra, ultérieurement dans votre flux, de déterminer si vous devez désactiver un flux et envoyer un e-mail à son propriétaire.

    Capture d’écran de l’action Condition - Y a-t-il une action Twitter ? avec la branche Si oui et l’action Définir une variable - Une action Twitter existe mises en évidence.

  8. Outre la variable Appliquer à chacun qui vous permet d’itérer dans toutes les actions de votre flux, ajoutez une autre condition. Cette condition vérifie si la valeur de votre variable isFlowAction est true.

    Capture d’écran de l’action Condition 3 - Existe-t-il une action Twitter ? mise en évidence.

  9. Dans la branche Si oui, ajoutez le connecteur Microsoft Flow for Admins, puis sélectionnez l’action Désactiver le flux en tant qu’administrateur. Cela vous permet de désactiver le flux pour empêcher que des informations puissent être envoyées à X. Pour appeler cette action, incluez le Nom de l’environnement et le Nom du flux actuels.

    Capture d’écran de la branche Si oui comportant l’action Désactiver le flux en tant qu’administrateur avec le champ Nom de l’environnement défini sur Name et le champ Nom du flux défini sur Flow Name.

  10. Si vous désactivez le flux de quelqu’un, vous souhaitez lui envoyer un e-mail l’informant que son flux n’est plus exécuté. Pour obtenir l’adresse e-mail du propriétaire du flux, renvoyez l’adresse e-mail du propriétaire à l’aide du connecteur Utilisateurs d’Office 365 et de l’action Obtenir le profil utilisateur (V2). Pour obtenir son adresse e-mail, vous devez ajouter l’ID d’objet créateur, qui peut être récupéré à partir de l’action Lister les flux en tant qu’administrateur.

    Capture d’écran de l’action Obtenir le profil utilisateur - Créateur de flux avec le champ Utilisateur (UPN) défini sur ID d’objet créateur.

  11. Envoyez un e-mail au propriétaire du flux à l’aide du connecteur Office 365 Outlook et de l’action Envoyer un e-mail (V2). À l’aide des informations renvoyées par l’action Obtenir un profil utilisateur (V2), envoyez cet e-mail, notamment les attributs Mail et Given Name. De plus, vous pouvez inclure le nom du flux en ajoutant l’attribut Flow Display Name se trouvant dans la sortie Lister les flux en tant qu’administrateur.

    Capture d’écran de l’action Envoyer un e-mail avec le champ À défini sur Mail, du texte saisi dans le champ Objet et du texte saisi dans l’encadré Corps avec les éléments de contenu dynamique Given Name et Flow Display Name.

  12. Comme vous parcourez tous les flux de votre abonné, vous devez redéfinir votre variable isFlowAction sur false de manière à pouvoir rechercher d’autres flux susceptibles de comporter une action Twitter. Vous pouvez maintenant enregistrer votre flux d’administration.

    Capture d’écran de l’action Définir la variable - Réinitialiser l’indicateur Twitter avec le champ Nom défini sur isFlowAction et le champ Valeur défini sur false.

  13. Pour tester votre flux, connectez-vous à Power Automate Maker Portal avec un autre compte. Créez un flux qui inclut un déclencheur SharePoint et une action X. Ce scénario ne sera pas bloqué par votre stratégie DLP, mais il devrait être détecté par le flux d’administration que vous avez créé.

    Capture d’écran de Power Automate sur la page Mes flux créant un flux comprenant une action Twitter avec les étapes « Lorsqu’un élément est créé » et « Obtenir le profil utilisateur ».

  14. Vous pouvez maintenant exécuter votre flux Détecter les actions X (anciennement Twitter) créé préalablement en tant qu’administrateur. Lorsque ce flux est exécuté, il devrait détecter qu’un flux a été modifié récemment et qu’il inclut une action Twitter. Un e-mail est alors envoyé au propriétaire du flux.

    Capture d’écran d’un e-mail avec l’objet « Votre flux a été désactivé » et le message « Votre flux : SharePoint > Twitter a été désactivé… »

  15. Si vous examinez le flux entre SharePoint et X, vous constatez qu’il a été désactivé, car votre administrateur a désactivé le flux.

    Capture d’écran de la page Flux Power Automate avec le flux SharePoint -> Twitter désactivé.

Cependant, récupérer des informations de X et les envoyer à SharePoint n’enfreint pas vos règles de gouvernance. Vous pouvez donc créer un autre flux à l’aide du compte du créateur de votre flux, qui inclut un déclencheur X et une action SharePoint. Lorsque vous exécutez votre flux de gouvernance Détecter les actions X, il reste fonctionnel et n’est pas désactivé, car il s’agit d’un cas d’utilisation autorisé.

Capture d’écran de Power Automate sur la page Mes flux créant un flux comprenant une action X avec les étapes « Lorsqu’un nouveau tweet est publié » et « Créer un élément ».