Déployer des pipelines en tant que principal de service ou propriétaire de pipeline

Les déploiements délégués peuvent être exécutés en tant que principal de service ou propriétaire d’étape de pipeline. Lorsqu’elle est activée, l’étape de pipeline se déploie en tant que délégué (principal du service ou propriétaire de l’étape de pipeline) au lieu du créateur demandeur.

Déployer avec un principal de service

Conditions préalables

  • Un compte utilisateur Microsoft Entra. Si vous n’en avez pas, vous pouvez créer un compte gratuitement.
  • L’un des rôles Microsoft Entra suivants : Administrateur général, Administrateur d’application cloud ou Administrateur d'application.
  • Vous devez être le propriétaire de l’application d'entreprise (principal de service) dans Microsoft Entra ID.

Pour un déploiement délégué avec un principal de service, procédez comme suit.

  1. Créez une application d’entreprise (principal de service) dans Microsoft Entra ID.

    Important

    Toute personne activant ou modifiant les configurations du principal de service dans les pipelines doit être un propriétaire de l’application d’entreprise (principal de service) dans Microsoft Entra ID.

  2. Ajoutez l’application d’entreprise en tant qu’utilisateur de serveur à serveur (S2S) dans votre environnement hôte de pipelines et dans chaque environnement cible dans lequel elle est déployée.

  3. Attribuez le rôle de sécurité Administrateur du pipeline de déploiement à l’utilisateur S2S dans l’hôte des pipelines et le rôle de sécurité Administrateur système dans les environnements cibles. Les rôles de sécurité à autorisation inférieure ne peuvent pas déployer de plug-ins ni d’autres composants de code.

  4. Choisissez (cochez) Déploiement délégué sur une étape de pipeline, sélectionnez Principal du service et saisissez l’ID client. Sélectionnez Enregistrer.

  5. Créez un flux de cloud dans l’environnement hôte des pipelines. Des systèmes alternatifs peuvent être intégrés à l’aide des API Microsoft Dataverse des pipelines.

  6. Sélectionnez le déclencheur OnApprovalStarted.

  7. Ajoutez des étapes pour la logique personnalisée souhaitée.

  8. Insérez une étape d’approbation. Utilisez le contenu dynamique pour envoyer des informations de demande de déploiement aux approbateurs.

  9. Insérez une condition.

  10. Créez une connexion Dataverse pour le principal de service. Un ID client et un secret sont nécessaires.

  11. Ajoutez Dataverse Effectuer une action indépendante en utilisant les paramètres indiqués ici.
    Nom de l’action : UpdateApprovalStatus ApprovalComments : insérer du contenu dynamique. Les commentaires sont visibles par le demandeur du déploiement. ApprovalStatus : 20 = approuvé, 30 = rejeté ApprovalProperties : insérer du contenu dynamique. Informations d’administration accessibles depuis l’hôte des pipelines.

    Important

    L’action UpdateApprovalStatus doit utiliser la connexion du principal du service.

    Se connecter au principal de service

    Astuce

    Pour améliorer l’expérience de débogage, sélectionnez ApprovalProperties et insérez workflow() dans le menu de contenu dynamique. Cela relie l’exécution de flux à l’exécution de l’étape du pipeline (historique des exécutions).

  12. Enregistrez, puis testez le pipeline.

Voici une capture d’écran d’un flux d’approbation canonique.

Flux d’approbation canonique

Important

  • Les créateurs demandeurs peuvent ne pas avoir accès aux ressources déployées dans les environnements cibles. Les ressources peuvent être partagées après le déploiement. Pour automatiser le partage, vous pouvez utiliser l’exemple ci-dessous ou l’extension ALM Accelerator comme implémentation de référence.
  • Au minimum, le rôle de sécurité Utilisateur de base est nécessaire pour déployer les références de connexion et accéder à l’environnement.
  • Lors des tests, si vous supprimez votre propre rôle de sécurité, un autre administrateur devra le restaurer ultérieurement. Les administrateurs Power Platform peuvent restaurer leur propre rôle de sécurité dans l’expérience classique.

Déployer en tant que propriétaire de l’étape du pipeline

Les utilisateurs réguliers, y compris ceux utilisés comme comptes de service, peuvent également servir de délégués. La configuration est plus simple que celle des principaux de service, mais les solutions contenant des références de connexion pour les connexions oAuth ne peuvent pas être déployées.

Pour déployer en tant que propriétaire de l’étape du pipeline, procédez comme suit.

  1. Attribuez le rôle de sécurité Administrateur du pipeline de déploiement au propriétaire de l’étape du pipeline dans l’hôte des pipelines et attribuez le rôle de sécurité Administrateur système dans les environnements cibles.

    Les rôles de sécurité à autorisation inférieure ne peuvent pas déployer de plug-ins ni d’autres composants de code.

  2. Connectez-vous en tant que propriétaire de la phase du pipeline Seul le propriétaire peut activer ou modifier ces paramètres. Une propriété d’équipe n’est pas autorisée.

  3. Sélectionnez Est un déploiement de type délégué sur une phase du pipeline, puis sélectionnez Propriétaire de la phase.

    • L’identité du propriétaire de la phase du pipeline est utilisée pour tous les déploiements dans cette phase.
    • De même, cette identité doit être utilisée pour approuver les déploiements.
  4. Créez un flux de cloud dans une solution dans l’environnement hôte des pipelines.

    1. Sélectionnez le déclencheur OnApprovalStarted.
    2. Insérez les actions comme vous le souhaitez. Par exemple, une approbation.
    3. Ajoutez Dataverse Effectuer une action non liée.
      Nom de l’action : UpdateApprovalStatus (20 = terminé, 30 = rejeté)

Exemples de déploiement délégué

Important

La fonctionnalité fournie dans ces exemples est désormais prise en charge de manière native dans le produit, mais n’est peut-être pas encore disponible dans votre région.

Ce téléchargement contient des exemples de flux de cloud pour gérer les approbations et partager des applications canevas et des flux déployés dans l’environnement cible. Télécharger l’exemple de solution

Téléchargez et importez la solution gérée dans l’environnement hôte de vos pipelines. La solution peut ensuite être personnalisée pour répondre aux besoins de votre organisation.

Questions fréquentes

Je reçois une erreur La phase de déploiement n’est pas propriétaire du principal de service (<AppId>). Seuls les propriétaires du principal de service peuvent l’utiliser pour les déploiements délégués.

Assurez-vous d’être le propriétaire de l’application d’entreprise (principal de service) dans Microsoft Entra ID (anciennement Azure AD). Vous n’êtes peut-être que le propriétaire de l’enregistrement de l’application, et non de l’application d’entreprise.

Applications d’entreprise

Pour les déploiements délégués basés sur le propriétaire de la phase, pourquoi ne puis-je pas affecter un autre utilisateur comme déployeur ?

Pour des raisons de sécurité, vous devez vous connecter en tant qu’utilisateur qui sera défini comme propriétaire de la phase du pipeline. Cela empêche l’ajout d’un utilisateur non consentant comme déployeur.

Pourquoi mes déploiements délégués sont-ils bloqués dans un état en attente ?

Tous les déploiements délégués sont en attente jusqu’à leur approbation. Assurez-vous que votre administrateur a configuré un flux d’approbation Power Automate ou une autre automatisation, qu’il fonctionne correctement et que le déploiement a été approuvé.

À qui appartiennent les objets de solution déployés ?

L’identité de déploiement. Pour les déploiements délégués, le propriétaire est le principal de service délégué ou le propriétaire de la phase du pipeline.

Comment les créateurs peuvent-ils accéder aux objets déployés dans les environnements cibles ?

Important

Une fonctionnalité native de partage pendant le déploiement est actuellement disponible, ce qui permet aux créateurs de demander l’accès aux ressources déployées dans le cadre de la demande de déploiement.

Les créateurs demandeurs peuvent ne pas avoir accès aux ressources déployées dans les environnements cibles. Les administrateurs doivent attribuer des rôles de sécurité et partager les applications, flux, etc. déployés dans le centre d’administration Power Platform. Les administrateurs peuvent également créer des automatisations pour gérer l’accès.

Puis-je ajouter des étapes d’approbation personnalisées ?

Oui. Par exemple, les approbations Power Automate peuvent être personnalisées pour répondre aux besoins de votre organisation. Vous pouvez également intégrer d’autres systèmes d’approbation.

Je reçois une erreur Les déploiements délégués de type « ServicePrincipal » ne peuvent être approuvés ou rejetés que par le principal de service configuré dans la phase de déploiement.

Assurez-vous que l’action personnalisée UpdateApprovalStatus de Dataverse est appelée par le principal de service. Si vous utilisez les approbations Power Automate, assurez-vous que cette action est configurée pour utiliser la connexion du principal de service délégué.

Je reçois une erreur Les déploiements délégués de type « Owner » ne peuvent être approuvés ou rejetés que par le propriétaire de la phase de déploiement.

Assurez-vous que l’action personnalisée UpdateApprovalStatus de Dataverse est appelée par le propriétaire de la phase du pipeline. Si vous utilisez les approbations Power Automate, assurez-vous que cette action est configurée pour utiliser la connexion du propriétaire de la phase du pipeline.

Je reçois une erreur dans mon processus d’approbation Impossible de trouver l’attribut de statut d’approbation pour l’enregistrement d’exécution de la phase.

Cela se produit lorsque le statut d’approbation n’est pas encore à l’état en attente. Assurez-vous qu’il s’agit d’un déploiement délégué et que vous utilisez le déclencheur OnApprovalStarted dans votre processus d’approbation.

Puis-je utiliser différents principaux de service pour différents pipelines et phases ?

Oui.