Passer au contenu principal

Vue d’ensemble

Devin se connecte à Azure DevOps via un principal de service Microsoft Entra. Votre administrateur approuve dans votre tenant l’application Cognition Azure DevOps Service Principal publiée par Cognition, ce qui crée un principal de service que vous ajoutez ensuite à votre organisation Azure DevOps avec les autorisations de votre choix.
  • Seule l’autorisation User.Read est demandée lors de l’approbation Entra — elle sert uniquement à établir l’identité
  • L’approbation Entra à elle seule n’accorde pas l’accès aux dépôts ni au code
  • L’accès aux dépôts est entièrement contrôlé par les autorisations que vous attribuez dans Azure DevOps
Contrairement à certaines autres intégrations SCM, Azure DevOps n’affiche pas les applications tierces de la même façon. Toute la gestion des connexions s’effectue dans Devin, sous Settings > Enterprise Settings > Integrations.

Prérequis

Avant de configurer l’intégration Azure DevOps, assurez-vous de disposer de :
  1. un compte Devin Enterprise disposant de l’autorisation de gérer les intégrations
  2. un administrateur Microsoft Entra pouvant accorder le consentement administrateur pour les applications
  3. un administrateur de l’organisation Azure DevOps pouvant ajouter des utilisateurs et attribuer des autorisations

Configuration de l’intégration

  1. Connectez-vous à votre compte Devin sur app.devin.ai.
  2. Dans un autre navigateur ou une fenêtre de navigation privée, connectez-vous à Azure DevOps (requis pour l’étape 6).
  3. Dans votre compte Devin Enterprise, accédez à Settings > Enterprise Settings > Integrations et sélectionnez Azure DevOps.
  4. Ouvrez le menu déroulant du bouton Connect et sélectionnez Connect with service principal.
Connect with service principal
  1. Vous êtes redirigé vers Microsoft pour autoriser Devin à accéder à votre tenant. Une fois l’autorisation approuvée, vous revenez sur la page d’intégration Azure DevOps dans Devin, qui affiche désormais une section Add organization with service principal.
    • L’approbation crée un principal de service dans votre tenant Microsoft Entra
    • Cette étape demande uniquement User.Read — elle n’accorde pas l’accès aux dépôts
  2. Dans Azure DevOps, accédez à Organization Settings > Users :
    • Cliquez sur Add Users et ajoutez le principal de service (Cognition Azure DevOps Service Principal)
    • Sélectionnez Basic comme niveau d’accès (Stakeholder ne suffit pas — les API exigent Basic)
    • Ajoutez-le à tous les projets auxquels vous souhaitez que Devin ait accès
    • Assignez le principal de service aux Groups Azure DevOps pertinents (généralement Project Contributors)
  3. De retour dans Devin, dans la section Add organization with service principal de la page d’intégration Azure DevOps, saisissez le nom de l’organisation Azure DevOps de l’étape précédente, puis cliquez sur Add.
  4. Dans Devin, sélectionnez Git Permissions dans votre intégration Azure DevOps, choisissez une sous-organisation et accordez des autorisations au niveau du Group ou du Repository.
Azure DevOps Git Permissions
  1. Pour chaque Organization à laquelle des autorisations ont été accordées, accédez à Devin’s Settings > Devin’s Machine, cliquez sur + Repository et intégrez les dépôts.

Ce à quoi Devin a accès

L’intégration Azure DevOps de Devin se limite aux opérations Git :
CapacitéDescription
Lister les dépôtsConsulter les dépôts disponibles et leurs métadonnées
Consulter les branchesAccéder aux informations sur les branches et à l’historique des commits
Créer des pull requestsOuvrir de nouvelles PR pour des modifications de code
Consulter les pull requestsAccéder aux événements, commentaires et au statut des PR
Pousser du codePousser de nouvelles branches et de nouveaux commits vers les dépôts
Devin n’a pas accès aux éléments de travail, pipelines, builds, plans de test, artefacts, wiki ou connexions de service.
Si votre organisation a besoin que Devin prenne en charge d’autres domaines Azure DevOps à l’avenir, veuillez contacter enterprise@cognition.ai pour discuter de vos besoins.

Considérations de sécurité

  • Autorisations Entra minimales — Seule l’autorisation User.Read est demandée. Aucun accès en lecture à l’ensemble de l’annuaire, aucune visibilité sur l’appartenance aux groupes et aucun contrôle administratif.
  • Autorisation explicite — L’approbation Entra seule n’accorde aucun accès à Azure DevOps. Tout accès aux dépôts doit être explicitement attribué par votre administrateur Azure DevOps.
  • Identifiants chiffrés — Tous les tokens sont chiffrés et stockés en toute sécurité.
  • Accès limité — Les autorisations peuvent être limitées à des projets, des dépôts et des opérations spécifiques via l’interface Enterprise de Devin.
  • Traçabilité — L’activité est consignée dans les journaux de connexion Entra et les journaux d’audit d’Azure DevOps.
  • Politiques de branche respectées — Les PR de Devin sont soumises aux mêmes politiques de branche et aux mêmes exigences de revue que n’importe quel autre contributeur.

Bonnes pratiques

  • Utilisez des autorisations au niveau du dépôt — Accordez à Devin l’accès uniquement aux dépôts et projets spécifiques dont il a besoin, plutôt qu’un accès à l’échelle de l’organisation.
  • Activez les politiques de branche — Configurez des politiques de branche dans Azure DevOps pour garantir que toutes les modifications passent par des processus de révision appropriés avant d’être fusionnées.
  • Surveillez les journaux d’audit — Consultez régulièrement les journaux d’audit Azure DevOps et les journaux de connexion Entra concernant l’activité du principal de service.

Dépannage

Le consentement administrateur échoue :
  • Vérifiez que l’utilisateur qui approuve dispose de l’autorisation d’accorder le consentement administrateur pour les applications dans votre tenant Entra
  • Si votre tenant restreint le consentement aux applications, un administrateur général ou un administrateur d’applications cloud devra peut-être accorder ce consentement
Le principal de service n’est pas visible dans Azure DevOps :
  • Vérifiez que le consentement administrateur s’est bien déroulé dans votre portail Entra, sous Applications d’entreprise (recherchez Cognition Azure DevOps Service Principal)
  • Assurez-vous que le principal de service a bien été ajouté explicitement à votre organisation Azure DevOps sous Organization Settings > Users
L’accès conditionnel / la MFA bloquent l’accès :
  • Si le principal de service est soumis à des politiques d’accès conditionnel imposant la MFA, l’actualisation du token échouera sans message d’erreur. Créez une exclusion d’accès conditionnel pour le principal de service vis-à-vis de l’application Devin.
Devin ne peut pas voir mes dépôts :
  • Vérifiez que le principal de service a bien été ajouté à l’organisation Azure DevOps sous Organization Settings > Users
  • Confirmez que le niveau d’accès est défini sur Basic (Stakeholder est insuffisant pour l’accès à l’API)
  • Vérifiez que les autorisations du dépôt ont été accordées dans les Enterprise Settings de Devin
  • Assurez-vous que les dépôts ont été ajoutés à Devin’s Machine
La création de pull requests échoue :
  • Confirmez que le principal de service dispose des autorisations de contributeur sur le dépôt cible
  • Vérifiez que les politiques de branche ne bloquent pas la création de la PR
  • Vérifiez que la branche cible existe et est accessible

Configuration réseau

Si le filtrage IP est activé sur votre instance Azure DevOps, vous devrez ajouter les adresses IP de Devin à la liste d’autorisation. Pour consulter la liste la plus à jour, reportez-vous à notre documentation sur la liste d’autorisation IP.