Devin unterstützt auch die Verbindung mit Azure DevOps über einen Microsoft Entra-Service-Principal, für den kein dediziertes Servicekonto mit erhöhten Verzeichnisadministrator-Berechtigungen erforderlich ist. Je nach Ihren Anforderungen ist dieser Ansatz möglicherweise besser geeignet — siehe Azure DevOps (Service Principal).
Warum Devin in Azure DevOps integrieren?
Voraussetzungen
-
Einen dedizierten Azure DevOps-Benutzer für Devin erstellen - Erstellen Sie ein neues Azure DevOps-Konto speziell für Devin (z. B.
devin@yourcompany.com). Dieses dedizierte Servicekonto ermöglicht eine übersichtlichere Zugriffsverwaltung und Audit-Trails. - Dem Devin-Benutzer eine ausreichende Administratorrolle zuweisen - Das neue Devin-Servicekonto muss in der Lage sein, die Administratorzustimmung für den Mandanten zu erteilen (Application Administrator, Cloud Application Administrator oder Global Administrator). Microsoft beschränkt den Zugriff durch Drittanbieteranwendungen, sofern nicht ein Administrator mit ausreichenden Berechtigungen eine mandantenweite Zustimmung erteilt.
-
Sich auf den Verbindungsprozess vorbereiten - Um die Integration abzuschließen, müssen Sie:
- Mit Ihrem persönlichen Konto bei Devin angemeldet sein
- Mit dem Devin-Servicekonto (dem neuen Konto, das die Administratorzustimmung für Ihren Mandanten erteilen kann) bei Azure DevOps angemeldet sein
Beide Browsersitzungen müssen während der Einrichtung der Integration aktiv sein – Ihr Devin-Konto, um die Verbindung zu initiieren, und das Devin-Servicekonto in Azure DevOps, um der OAuth-Zustimmung zuzustimmen.
Authentifizierung und Berechtigungen
RBAC- und Berechtigungsmodell
- Es wird ein Verbindungseintrag mit dem verschlüsselten Refresh-Token erstellt, der mit der Benutzeridentität verknüpft ist
- Devin generiert Berechtigungseinträge, um festzulegen, auf welche Organisationen, Projekte und Repositories zugegriffen werden kann
- Zur Laufzeit werden in allen Repositories Prüfungen durchgeführt und mit der Berechtigungsliste abgeglichen, um Zugriffsschranken durchzusetzen
Azure DevOps-Hierarchie
Einrichten der Integration
-
Melden Sie sich bei beiden Konten an:
- Melden Sie sich bei Ihrem Devin-Konto unter app.devin.ai an
- Melden Sie sich in einem separaten Browser oder Inkognito-Fenster mit dem Devin-Servicekonto (dem Konto, das die Administratorzustimmung für Ihren Mandanten erteilen kann) bei Azure DevOps an
- Navigieren Sie in Ihrem Enterprise-Konto in Devin zu Settings > Enterprise Settings > Integrations

- Klicken Sie auf der Integrationsseite auf die Schaltfläche Connect to Azure DevOps.

- Es wird ein neuer Browser-Tab geöffnet, in dem Sie aufgefordert werden, Devin Berechtigungen für Ihre Azure-DevOps-Organisation zu erteilen. Stellen Sie sicher, dass Sie mit dem Devin-Servicekonto angemeldet sind (dem Konto, das die Administratorzustimmung für Ihren Mandanten erteilen kann).

- Nachdem Sie die Berechtigungen erteilt haben, sehen Sie Ihre Azure-DevOps-Integration und die verbundenen Repositories wieder auf der Integrationsseite in den Enterprise Settings.

- Da Devin nun Zugriff auf Ihr Azure DevOps hat, können Sie Berechtigungen für beliebige oder alle Unterorganisationen innerhalb Ihres Enterprise-Kontos gewähren. Wählen Sie dazu Git Permissions in Ihrer Azure-DevOps-Integration, wählen Sie eine Unterorganisation aus und gewähren Sie Berechtigungen entweder auf Gruppen- oder Repository-Ebene.

- Navigieren Sie für jede Organisation, der Berechtigungen gewährt wurden, zu Devin’s Settings > Devin’s Machine, klicken Sie auf + Repository und integrieren Sie die Repositories in Devin’s Machine.
Worauf Devin zugreifen kann
| Funktion | Beschreibung |
|---|---|
| Repositories auflisten | Verfügbare Repositories und deren Metadaten anzeigen |
| Branches lesen | Auf Branch-Informationen und Commit-Verlauf zugreifen |
| Pull Requests erstellen | Neue PRs für Codeänderungen erstellen |
| Pull Requests anzeigen | Auf PR-Ereignisse, Kommentare und Status zugreifen |
| Code pushen | Neue Branches und Commits in Repositories pushen |
Worauf Devin nicht zugreifen kann
- Arbeitselemente (Boards)
- Pipelines oder Builds
- Testpläne
- Artefakte
- Wiki
- Serviceverbindungen
Wenn Ihre Organisation künftig eine Unterstützung dieser zusätzlichen Bereiche durch Devin benötigt, wären dafür erweiterte OAuth-Scopes und neue Provider-Logik erforderlich. Bitte kontaktieren Sie enterprise@cognition.ai, um Ihre Anforderungen zu besprechen.
Sicherheitsaspekte
- OAuth ermöglicht Zugriff, RBAC setzt Grenzen durch – OAuth gewährt die technische Möglichkeit, auf Azure DevOps zuzugreifen, aber eine zusätzliche Ebene von Git-Berechtigungen erzwingt die tatsächlichen Zugriffsbeschränkungen
- Nur expliziter Zugriff – Devin greift niemals auf Repos oder Projekte zu, die nicht ausdrücklich in der Enterprise-UI freigegeben wurden
- Verschlüsselte Zugangsdaten – Alle Refresh-Tokens werden verschlüsselt und sicher gespeichert
- Audit-Trail – Die Verwendung eines dedizierten Servicekontos erleichtert die Nachverfolgung der Aktivitäten von Devin in Ihren Azure-DevOps-Auditprotokollen
- Branch-Richtlinien werden beachtet – Die PRs von Devin unterliegen denselben Branch-Richtlinien und Review-Anforderungen wie die PRs aller anderen Beitragenden
Best Practices
- Verwenden Sie das dedizierte Devin-Servicekonto - Verwenden Sie stets das dedizierte Azure DevOps-Konto, das für Devin erstellt wurde, statt sich mit einem persönlichen Konto zu verbinden
- Aktivieren Sie Branch-Richtlinien - Richten Sie Branch-Richtlinien in Azure DevOps ein, um sicherzustellen, dass alle Änderungen einen ordnungsgemäßen Review-Prozess durchlaufen, bevor sie zusammengeführt werden
- Verwenden Sie Berechtigungen auf Repository-Ebene - Gewähren Sie Devin nur Zugriff auf die spezifischen Repositories, die es benötigt, statt organisationsweiten Zugriff zu erteilen
- Überwachen Sie Zugriffsprotokolle - Überprüfen Sie regelmäßig die Azure DevOps-Auditprotokolle auf Aktivitäten von Devin
- Dokumentieren Sie Ihr Setup - Führen Sie eine interne Dokumentation darüber, auf welche Repositories Devin Zugriff hat und aus welchem Grund
Wenn Ihre Microsoft Entra ID mit dem HRIS (Human Resources Information System) Ihrer Organisation integriert ist, können zusätzliche Konfigurationsschritte erforderlich sein, um die Azure DevOps-Integration abzuschließen. Bitte kontaktieren Sie das Devin-Supportteam für Unterstützung bei der erweiterten Einrichtung.
Fehlerbehebung
- Überprüfen Sie, ob das Devin-Servicekonto die Administratorzustimmung für den Mandanten erteilen kann (erfordert die Rolle Application Administrator, Cloud Application Administrator oder Global Administrator)
- Prüfen Sie, ob Ihr Microsoft Entra ID-Mandant die Zustimmung für Anwendungen von Drittanbietern zulässt
- Stellen Sie sicher, dass Sie beim Durchlaufen des OAuth-Ablaufs in Azure DevOps mit dem Devin-Servicekonto (und nicht mit Ihrem persönlichen Konto) angemeldet sind
- Überprüfen Sie, ob das Devin-Servicekonto Zugriff auf die Repositories in Azure DevOps hat
- Prüfen Sie, ob Repository-Berechtigungen in Devin’s Enterprise Settings erteilt wurden
- Stellen Sie sicher, dass die Repositories zu Devin’s Machine hinzugefügt wurden
- Bestätigen Sie, dass das Devin-Servicekonto Mitwirkendenrechte auf dem Ziel-Repository hat
- Prüfen Sie, ob Branch-Richtlinien die PR-Erstellung nicht blockieren
- Überprüfen Sie, ob der Ziel-Branch existiert und zugänglich ist
