Pourquoi intégrer Devin à Azure DevOps ?
Prérequis
-
Créer un utilisateur Azure DevOps dédié pour Devin - Créez un nouveau compte Azure DevOps spécifiquement pour Devin (par exemple,
[email protected]). Ce compte de service dédié permet une gestion des accès plus simple et de meilleurs journaux d’audit. - Accorder les privilèges AAD Global Admin à l’utilisateur Devin - Le nouveau compte de service Devin doit disposer des privilèges Azure Active Directory (AAD) Global Admin. Microsoft limite l’accès des applications tierces, sauf si un Global Admin accorde un consentement au niveau du client (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 doté des autorisations AAD Global Admin)
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
Modèle RBAC et gestion des autorisations
- Un enregistrement de connexion est créé, contenant le jeton d’actualisation 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 dépôts 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 disposant des privilèges AAD Global Admin)
- Dans votre compte Devin Enterprise, accédez à Settings > Enterprise Settings > Integrations

- Une fois sur la page Integrations, cliquez sur le bouton Connect to Azure DevOps.

- Un nouvel onglet de navigateur s’ouvre et vous demande d’accorder à Devin l’accès à votre organisation Azure DevOps. Assurez-vous d’être connecté avec le compte de service Devin (le compte disposant des privilèges AAD Global Admin).

- Une fois les autorisations accordées, vous verrez votre intégration Azure DevOps et vos dépôts connectés à nouveau sur la page Integrations, dans les Enterprise Settings.

- Maintenant que Devin a accès à votre Azure DevOps, vous pouvez accorder des autorisations à n’importe quelle sous-organisation au sein de votre compte Enterprise. Pour ce faire, sélectionnez Git Permissions dans votre intégration Azure DevOps, choisissez une sous-organisation et accordez des autorisations soit au niveau du groupe, soit au niveau du dépôt.

- Pour chaque organisation à 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 dans Devin’s Machine.
Ce à quoi Devin peut accéder
| Fonctionnalité | Description |
|---|---|
| Lister les dépôts | Afficher les dépôts disponibles et leurs métadonnées |
| Consulter les branches | Accéder aux informations sur les branches et à l’historique des commits |
| Créer des pull requests | Ouvrir de nouvelles PR pour des modifications de code |
| Consulter les pull requests | Accéder aux événements, commentaires et statuts des PR |
| Pousser du code | Pousser de nouvelles branches et des commits vers les dépôts |
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 [email protected] 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
- Vérifiez que le compte de service Devin dispose des privilèges d’administrateur global AAD
- Vérifiez que votre client Azure AD 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 dépôts dans Azure DevOps
- Vérifiez que les autorisations sur les dépôts ont été accordées dans les Paramètres Enterprise de Devin
- Assurez-vous que les dépôts ont été ajoutés à la Machine Devin
- Confirmez que le compte de service Devin dispose des autorisations de contributeur sur le dépôt 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
