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

Vous pouvez exécuter des déploiements délégués en tant que principal de service ou propriétaire de l’étape de pipeline. Lorsque vous activez cette fonctionnalité, la phase du pipeline est déployée en tant que délégué (principal de service ou propriétaire de la phase du pipeline), et non en tant que créateur à l’origine de la demande.

Déployer avec un principal du 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 d’applications cloud ou Administrateur d’applications.
  • 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. Vous pouvez éventuellement autoriser le partage des demandes afin que les demandeurs de déploiement puissent spécifier quels groupes de sécurité peuvent accéder aux objets déployés au sein de l’environnement cible. Les demandes de partage font partie de la demande de déploiement et peuvent être approuvées ou rejetées.

Important

Les approbateurs de déploiement sont chargés d’examiner attentivement les informations de partage et de rôle de sécurité. Lorsqu’un déploiement est approuvé, les pipelines attribuent automatiquement des autorisations à l’aide de l’identité du principal de service de déploiement.
>

  1. 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.

  2. Sélectionnez le déclencheur OnApprovalStarted.

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

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

  5. Insérez une condition.

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

  7. Ajoutez Dataverse Effectuer une action indépendante en utilisant les paramètres indiqués ici.
    Nom de l’action : UpdateApprovalStatus Commentaires d’approbation : Insérer un 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 avec un 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 associe l’exécution du flux à l’exécution de l’étape du pipeline (historique des exécutions).

  8. Enregistrez, puis testez le pipeline.

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

Flux d’approbation canonique

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 par rapport aux principaux de service, mais vous ne pouvez pas déployer de solutions contenant des références de connexion pour les connexions OAuth.

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 de pipeline au sein de l’hôte de 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 responsable de l’étape du pipeline. Seul le propriétaire peut activer ou modifier ces paramètres. La propriété par une é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 souhaitées. 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

Le produit prend désormais en charge en mode natif les fonctionnalités fournies dans ces exemples, mais ces exemples peuvent fournir des insights sur l’extension de la fonctionnalité de partage native.

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. Vous pouvez ensuite personnaliser la solution pour répondre aux besoins de votre organisation.

Questions fréquentes

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

Le partage pendant le déploiement est une fonctionnalité native des déploiements délégués avec des principaux de service. Cette fonctionnalité élimine la nécessité pour les administrateurs d’attribuer manuellement des rôles de sécurité et de partager des applications déployées, des flux, des copilotes et d’autres objets au sein du Centre d’administration Power Platform. Au lieu de cela, les administrateurs doivent uniquement approuver la demande de déploiement, et le système gère automatiquement le partage.

Quels types d’objets peuvent être partagés lors du déploiement ?

Actuellement, le système prend en charge le partage de rôles de sécurité, d’applications de canevas et de flux cloud. Selon votre région, le partage via Copilot peut également être disponible.

Puis-je mettre à jour le partage lorsque de nouvelles versions sont déployées ?

Le partage est disponible la première fois qu’un objet est déployé dans l’environnement cible. Vous ne pouvez pas mettre à jour le partage lorsque de nouvelles versions sont déployées. Assurez-vous de sélectionner un groupe de sécurité approprié lors du premier déploiement. Gérez l’accès continu via des groupes de sécurité.

Quelles autorisations sont attribuées pour les applications canevas et les flux ?

Les pipelines attribuent les privilèges minimaux requis pour exécuter des applications et des flux. Si vous souhaitez des privilèges plus élevés, vous pouvez étendre des pipelines. Nous vous recommandons d’activer la fonctionnalité bloquer les personnalisations non managées lors de l’attribution d’autorisations supérieures.

Les créateurs peuvent-ils partager avec des utilisateurs individuels ?

Actuellement non. Nous vous recommandons de gérer l’accès des utilisateurs individuels via des groupes de sécurité après le premier déploiement de l’objet.

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.

Vérifiez que vous êtes le propriétaire de l'application d'entreprise (principal de service) dans Microsoft Entra ID (anciennement Azure AD). Il se peut que vous soyez le propriétaire de l’inscription d’application, mais pas 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 que vous définissez comme propriétaire de l’étape du pipeline. Cette exigence empêche l’ajout d’un utilisateur nonconsentant en tant que déployeur.

Pour les déploiements délégués basés sur le propriétaire de phase, puis-je utiliser un fichier de DeploymentSettings.json personnalisé ?

N’est actuellement pas disponible dans l’expérience de création.

Pourquoi mes déploiements délégués sont-ils bloqués à l’état « En attente » ?

Tous les déploiements délégués sont en attente jusqu’à leur approbation. Vérifiez que votre administrateur configure un flux d'approbation Power Automate ou une autre automatisation, qu'il fonctionne correctement et que le déploiement est 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.

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.

Pourquoi dois-je être le propriétaire du principal de service ?

Cette exigence est appliquée pour des raisons de sécurité. Vous pouvez également créer des pipelines à l’aide d’un compte de service et ajouter le même compte de service que le propriétaire. Une autre option consiste à désigner le principal de service (utilisateur de l’application) en tant que propriétaire de l’étape du pipeline et en tant que propriétaire de lui-même (application d’entreprise) dans Microsoft Entra. Toutefois, l’affectation de la propriété de la phase de pipeline à une application doit être effectuée via l’API Dataverse de l’hôte des pipelines.

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, vérifiez 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 dans Power Automate, assurez-vous que cette action est configurée pour utiliser la connexion du propriétaire de l’étape du pipeline agissant en tant que délégué.

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

Cette erreur se produit lorsque l’état d’approbation n’est pas dans l’état en attente. Assurez-vous d’utiliser un déploiement délégué et d’utiliser le déclencheur OnApprovalStarted dans votre flux d’approbation.

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

Oui.