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.
[email protected]). Dieses dedizierte Servicekonto ermöglicht eine übersichtlichere Zugriffsverwaltung und Audit-Protokolle. - Dem Devin-Benutzer AAD Global Admin-Berechtigungen zuweisen - Das neue Devin-Servicekonto muss Azure Active Directory (AAD) Global Admin-Berechtigungen haben. Microsoft beschränkt den Zugriff durch Drittanbieteranwendungen, sofern kein Global Admin 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 mit AAD Global Admin-Berechtigungen) 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 die OAuth-Zustimmung zu erteilen.
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 mit AAD Global Admin-Berechtigungen) 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 mit AAD Global Admin-Berechtigungen).

- 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 [email protected], 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 über Berechtigungen als AAD Global Admin verfügt
- Prüfen Sie, ob Ihr Azure AD-Mandant die Zustimmung für Anwendungen von Drittanbietern zulässt
- Stellen Sie sicher, dass Sie beim Durchlaufen des OAuth-Flows 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 Devins Enterprise-Einstellungen erteilt wurden
- Stellen Sie sicher, dass die Repositories zu Devins 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
