Vue d’ensemble
L’offre de déploiement de Devin en VPC vous permet d’héberger les environnements de développement de Devin dans votre propre VPC, ce qui permet aux machines virtuelles (VM) de Devin d’accéder aux ressources propriétaires situées derrière votre pare-feu d’entreprise. L’architecture prise en charge garantit un système entièrement sans état, ce qui signifie qu’aucune donnée ne sera stockée au repos en dehors de votre environnement. Vous disposez de plusieurs moyens pour exercer un contrôle granulaire sur l’accès de Devin à votre environnement, notamment, sans s’y limiter, au niveau de vos services ou ressources via le SSO ou les contrôles d’accès de votre système de gestion de versions.Centre de confiance
Pour en savoir plus et consulter la documentation de sécurité, rendez-vous sur notre Centre de confiance.
Architecture de base
DevBox de Devin
Cerveau de Devin

Spécifications de déploiement
Exigences en matière d’infrastructure
Exigences relatives au type d’instance :
- AWS : i3 bare metal EC2
- Azure : instances Lasv3 avec type de sécurité Standard
Architecture

- Le tenant Cognition est hébergé sur Azure
- Ports : HTTPS/443 (seul le trafic sortant depuis le VPC du client est requis)
- Au démarrage d’un DevBox, un WebSocket s’ouvre et se connecte à un conteneur isolé dans le tenant Devin
- Tous les échanges suivants ont lieu via cette connexion
- Cette architecture assure par défaut l’isolation des sessions backend
Gestion des données
Base de données Cognition
- Stocke uniquement les métadonnées
- Contient les données de référence de hachage (ID de session, ID d’événement, etc.)
Bases de données clients
-
Base de données clients principale :
- Connectée directement au cerveau de Devin
- Stocke les journaux de session chiffrés et les données Devin des clients
-
Base de données clients secondaire :
- Connectée à l’instance in-VPC
- Stocke des snapshots de VM, ce qui permet de démarrer des sessions à partir d’un snapshot
Toutes les données clients sont chiffrées avec une clé KMS personnalisée. Toutes les opérations de lecture/écriture en base de données sont effectuées via les API natives.
Secrets
Avant d’être envoyés au front-end, les secrets sont masqués et affichés sous la forme
[REDACTED SECRET].Sécurité
Chiffrement
- Chiffrement AES 256 des données au repos
- Chiffrement TLS 1.3+ des données en transit
Isolement
- Conteneur Devin Brain isolé pour chaque session
- AWS WAF pour les API front-end publiques
Composants DevBox
- Utilitaires principaux : git, python, java, docker, et plus encore
-
Composants personnalisés :
- Serveur VSCode
- Serveur VNC pour le contrôle interactif du navigateur
- Scripts utilitaires propriétaires
.pynécessaires au fonctionnement de Devin
Limitations
Contraintes techniques
- Limites de sessions simultanées en fonction de la capacité des instances bare metal
- La capacité peut être augmentée horizontalement en provisionnant davantage d’instances supplémentaires
- Ces instances peuvent être temporairement arrêtées pendant les périodes de moindre utilisation
- Les coûts d’infrastructure cloud sont à la charge du client
Restrictions de déploiement
Configuration DNS
La configuration DNS de l’instance Devin nécessite un paramétrage approprié pour résoudre les enregistrements dans les zones hébergées privées. Si vous rencontrez des problèmes de résolution DNS avec des enregistrements privés, suivez les étapes ci-dessous.Pour permettre aux instances Devin de résoudre les enregistrements dans les zones hébergées privées :- Mettez à jour la configuration DNS pour utiliser le résolveur DNS du VPC (adresse .2) au lieu de serveurs DNS publics. Pour la déterminer, exécutez la commande suivante :
- Modifiez le fichier de configuration de systemd-resolved :
- Remplacez l’entrée DNS par l’adresse .2 du VPC.
- Redémarrez le service systemd-resolved pour appliquer les modifications :
