Devin prend également en charge la connexion à Azure DevOps via un principal de service Microsoft Entra, ce qui ne nécessite pas de compte de service dédié disposant de privilèges élevés d’administrateur d’annuaire. Selon vos besoins, cette méthode peut être plus adaptée — consultez Azure DevOps (principal de service).
Pourquoi intégrer Devin à Azure DevOps ?
Intégrer Devin à votre organisation Azure DevOps permet à Devin de cloner des repositories, de créer des pull requests (PR) et de collaborer efficacement avec votre équipe. Cette intégration permet à Devin de s’intégrer de façon transparente à votre flux de développement existant. Contrairement à certaines autres intégrations de gestion de code source, Azure DevOps n’affiche pas les applications tierces de la même manière. Au lieu de cela, toute la gestion des connexions se fait dans Devin, sous Settings > Connections > Azure DevOps.Prérequis
Avant de configurer l’intégration Azure DevOps, vous devez :-
Créer un utilisateur Azure DevOps dédié pour Devin - Créez un nouveau compte Azure DevOps spécifiquement pour Devin (par exemple,
devin@yourcompany.com). Ce compte de service dédié permet une gestion des accès plus simple et de meilleurs journaux d’audit. - Accorder à l’utilisateur Devin un rôle d’administrateur suffisant - Le nouveau compte de service Devin doit être en mesure d’accorder le consentement administrateur pour le tenant (Application Administrator, Cloud Application Administrator ou Global Administrator). Microsoft limite l’accès des applications tierces, sauf si un administrateur disposant de privilèges suffisants accorde un consentement au niveau du tenant.
-
Vous préparer au flux de connexion - Pour finaliser l’intégration, vous devrez :
- Être connecté à Devin avec votre compte personnel
- Être connecté à Azure DevOps avec le compte de service Devin (le nouveau compte pouvant accorder le consentement administrateur pour votre tenant)
Les deux sessions de navigateur doivent rester actives pendant le processus de configuration de l’intégration : votre compte Devin pour initier la connexion, et le compte de service Devin dans Azure DevOps pour autoriser le consentement OAuth.
Authentification et autorisations
Devin utilise OAuth 2.0 via MSAL de Microsoft (Microsoft Authentication Library) pour se connecter à Azure DevOps. Le compte de service Devin doit être habilité à accorder le consentement administrateur pour le tenant (Application Administrator, Cloud Application Administrator ou Global Administrator) afin de mener à bien le flux d’authentification OAuth. Azure DevOps repose sur des comptes de service, donc Devin se connecte en utilisant l’identité de l’utilisateur Devin autorisé plutôt qu’une application enregistrée.Modèle RBAC et gestion des autorisations
L’intégration de Devin avec Azure DevOps repose sur un modèle strict de contrôle d’accès basé sur les rôles (RBAC) qui dissocie authentification et autorisation. Cela garantit que Devin n’accède qu’aux repositories explicitement autorisés par les administrateurs Enterprise. Lorsque vous connectez Azure DevOps à Devin :- Un enregistrement de connexion est créé, contenant le jeton de rafraîchissement chiffré et lié à l’identité de l’utilisateur
- Devin génère des enregistrements d’autorisations pour définir quelles organisations, quels projets et quels repositories sont accessibles
- À l’exécution, des vérifications sont effectuées sur l’ensemble des dépôts et comparées à la liste des autorisations afin de garantir le respect des périmètres définis
Hiérarchie Azure DevOps
Configuration de l’intégration
-
Connectez-vous aux deux comptes :
- Connectez-vous à votre compte Devin sur app.devin.ai
- Dans un autre navigateur ou dans une fenêtre de navigation privée, connectez-vous à Azure DevOps avec le compte de service Devin (le compte habilité à accorder le consentement administrateur pour votre tenant)
- Dans votre compte Devin Enterprise, accédez à Settings > Connections > Azure DevOps.
-
Cliquez sur le bouton Connect pour lancer le flux OAuth. Si Azure DevOps est déjà connecté, le bouton s’intitule Add connection.
- Pour vous connecter plutôt avec un principal de service Microsoft Entra, ouvrez le menu déroulant du bouton Connect et sélectionnez Connect with service principal. Consultez Azure DevOps (Service Principal).

- Un nouvel onglet s’ouvre alors dans le navigateur et vous invite à autoriser Devin à accéder à votre organisation Azure DevOps. Assurez-vous d’être connecté avec le compte de service Devin (le compte habilité à accorder le consentement administrateur pour votre tenant).

-
Une fois les autorisations accordées, vous êtes redirigé vers la page des connexions Azure DevOps dans Devin, où figure votre nouvelle connexion. Cliquez sur celle-ci pour ouvrir son panneau de détails :
- General : configuration du webhook, reconnexion et déconnexion
- Manage access : permettre à des utilisateurs ou à des rôles de gérer les autorisations de repository pour cette connexion
- Repositories : les repositories accessibles via cette connexion
- Maintenant que Devin a accès à votre Azure DevOps, vous pouvez accorder des autorisations à tout ou partie des organisations de votre compte Enterprise. Pour ce faire, accédez à Settings > Repositories, choisissez une organisation, cliquez sur Manage permissions et accordez les autorisations au niveau Organization/Project ou Repository. Consultez Autorisations de repository.
- Pour chaque organisation ayant reçu des autorisations, accédez à Settings > Environment > Blueprints dans cette organisation, cliquez sur Add dans la section Repositories, puis sélectionnez les repositories à ajouter à l’environnement de Devin. Consultez Configuration déclarative de l’environnement.
Ce à quoi Devin peut accéder
Ce à quoi Devin n’a pas accès
- Éléments de travail (tableaux)
- Pipelines ou builds
- Plans de test
- Artefacts
- Wiki
- Connexions de service
Si votre organisation a besoin que Devin prenne en charge ces domaines supplémentaires à l’avenir, cela nécessitera des autorisations OAuth plus larges et une nouvelle logique côté fournisseur. Veuillez contacter enterprise@cognition.ai pour discuter de vos besoins.
Considérations de sécurité
- OAuth fournit les capacités, le RBAC définit les limites - OAuth accorde la capacité technique d’accéder à Azure DevOps, mais une couche supplémentaire d’autorisations Git applique les véritables limites d’accès
- Accès explicite uniquement - Devin n’accède jamais à des dépôts ou des projets qui ne lui ont pas été explicitement accordés dans l’interface Enterprise
- Identifiants chiffrés - Tous les jetons de rafraîchissement sont chiffrés et stockés de manière sécurisée
- Piste d’audit - L’utilisation d’un compte de service dédié facilite le suivi de l’activité de Devin dans vos journaux d’audit Azure DevOps
- Stratégies de branche respectées - Les PR de Devin sont soumises aux mêmes stratégies de branche et exigences de revue que celles de tout autre contributeur
Bonnes pratiques
- Utiliser le compte de service Devin dédié - Utilisez toujours le compte Azure DevOps dédié créé pour Devin plutôt que de vous connecter avec un compte personnel.
- Activer les stratégies de branche - Configurez des stratégies de branche dans Azure DevOps pour garantir que toutes les modifications suivent un processus de revue approprié avant d’être fusionnées.
- Utiliser des autorisations au niveau du dépôt - Accordez à Devin l’accès uniquement aux dépôts spécifiques dont il a besoin, plutôt qu’un accès à l’ensemble de l’organisation.
- Surveiller les journaux d’accès - Examinez régulièrement les journaux d’audit d’Azure DevOps pour suivre l’activité de Devin.
- Documenter votre configuration - Conservez une documentation interne indiquant à quels dépôts Devin a accès et pour quels motifs.
Si votre Microsoft Entra ID est intégré au HRIS (Human Resources Information System) de votre organisation, des étapes de configuration supplémentaires peuvent être nécessaires pour finaliser l’intégration à Azure DevOps. Veuillez contacter l’équipe d’assistance Devin pour obtenir de l’aide sur la configuration avancée.
Dépannage
Le consentement OAuth échoue :- Vérifiez que le compte de service Devin peut accorder le consentement administrateur pour le tenant (nécessite le rôle Application Administrator, Cloud Application Administrator ou Global Administrator)
- Vérifiez que votre tenant Microsoft Entra ID autorise le consentement aux applications tierces
- Assurez-vous que vous êtes connecté à Azure DevOps avec le compte de service Devin (et non votre compte personnel) lors de la finalisation du flux OAuth
- Vérifiez que le compte de service Devin a accès aux repositories dans Azure DevOps
- Ouvrez la connexion dans Settings > Connections > Azure DevOps et vérifiez que les repositories apparaissent dans l’onglet Repositories
- Vérifiez que les autorisations sur les repositories ont été accordées à l’organisation dans Settings > Repositories
- Assurez-vous que les repositories ont été ajoutés à l’environnement de l’organisation dans Settings > Environment > Blueprints
- Confirmez que le compte de service Devin dispose des autorisations de contributeur sur le repository cible
- Vérifiez que les stratégies de branche ne bloquent pas la création de la PR
- Vérifiez que la branche cible existe et est accessible

