Auswählen des richtigen Authentifizierungsmechanismus
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Für Anwendungen, die eine Schnittstelle mit Azure DevOps Services herstellen, müssen Sie sich authentifizieren, um Zugriff auf Ressourcen wie REST-APIs zu erhalten. Dieser Artikel enthält Anleitungen, mit denen Sie den richtigen Authentifizierungsmechanismus für Ihre Anwendung auswählen können.
In der folgenden Tabelle werden die vorgeschlagenen Authentifizierungskonzepte für verschiedene Anwendungsszenarien beschrieben. In den zugehörigen Beschreibungen, Beispielen und Codebeispielen finden Sie Hilfe bei den ersten Schritten.
Art der Anwendung | BESCHREIBUNG | Beispiel | Authentifizierungsmechanismus | Codebeispiele |
---|---|---|---|---|
Interaktive clientseitige App (REST) | Clientanwendung, die das Aufrufen von Azure DevOps Services-REST-APIs für Benutzerinteraktionen ermöglicht | Auflisten von Projekten in einer Konsolenanwendung in einer organization | OAuth mit der Microsoft-Authentifizierungsbibliothek (Microsoft Authentication Library, MSAL) | Beispiel |
Interaktive clientseitige App (Clientbibliotheken) | Clientanwendung, die Benutzerinteraktionen ermöglicht, indem sie das Aufrufen der Azure DevOps Services -Clientbibliotheken gestattet. | Die Konsolenanwendung listet Fehler auf, die dem aktuellen Benutzer zugewiesen sind | OAuth mit Clientbibliotheken | Beispiel |
Nicht interaktive clientseitige App | Clientseitige Anwendung nur headless Text | Konsolen-App, die alle Einem Benutzer zugewiesenen Fehler anzeigt | OAuth mit Geräteprofil-Flow | Beispiel |
Persönliches Zugriffstoken (Personal Access Token, PAT) | Bearertoken für den Zugriff auf Ihre eigenen Ressourcen | Verwenden Sie Ihr PAT anstelle Ihres Kennworts für Ad-hoc-REST-Anrufe. Nicht ideal für Anwendungen. | Pats | Beispiele |
Server-App | Azure DevOps Server App mithilfe der Client OM-Bibliothek | Azure DevOps Server Erweiterung mit Teamfehlerdashboards | Clientbibliotheken | Beispiel |
Dienstprinzipal oder verwaltete Identität | Anwendung mit eigener Identität | Azure-Funktion zum Erstellen von Arbeitselementen | Dienstprinzipale und verwaltete Identitäten | Beispiel |
Weberweiterung | Azure DevOps Services-Erweiterung | Erweiterung agiler Karten | VSS Web Extension SDK | Beispiel |
Tipp
Wir empfehlen für Entwickler*innen, die Azure DevOps Services integrieren möchten, die Entra-basierte Authentifizierung, wenn Sie mit Microsoft Entra-Konten interagieren. Die OAuth-Beispielapps in dieser Tabelle verwenden die Microsoft Entra-Identitätsplattform für die App-Entwicklung.
Informationen zur Authentifizierung über Microsoft-Konten (MSA) oder Azure DevOps Server-Benutzer finden Sie in unseren Client-Bibliotheken oder im Abschnitt PATs.
Lesen Sie in unserem Blogbeitrag mehr darüber, wie wir die Verwendung von PATs auf unserer gesamten Plattform reduzieren.
Häufig gestellte Fragen (FAQs)
F: Warum kann mein Dienstkonto nicht auf die Azure DevOps REST-API zugreifen?
A: Ihr Dienstkonto hat möglicherweise nicht "materialisiert". Dienstkonten ohne interaktive Anmeldeberechtigungen können sich nicht anmelden. Weitere Informationen finden Sie in dieser Lösungslösung .
F: Sollte ich Azure DevOps Services-Clientbibliotheken oder Azure DevOps Services-REST-APIs für meine interaktive clientseitige Anwendung verwenden?
A: Wir empfehlen die Verwendung von Azure DevOps Services-Clientbibliotheken über REST-APIs für den Zugriff auf Azure DevOps Services-Ressourcen. Sie sind einfacher und einfacher zu verwalten, wenn SICH REST-Endpunktversionen ändern. Wenn für die Clientbibliotheken bestimmte Funktionen fehlen, verwenden Sie MSAL für die Authentifizierung mit unseren REST-APIs.
F: Gilt dieser Leitfaden nur für Azure DevOps Services oder ist er auch für lokale Azure DevOps Server Benutzer relevant?
A: Diese Anleitung richtet sich in erster Linie an Azure DevOps Services-Benutzer. Für Azure Devops Server-Benutzer empfehlen wir die Verwendung der Clientbibliotheken, der Windows-Authentifizierung oder der Persönlichen Zugriffstoken (PERSONAL Access Tokens, PATs) für die Authentifizierung.
F: Was geschieht, wenn ich möchte, dass sich meine Anwendung bei Azure DevOps Server und Azure DevOps Services authentifiziert?
A: Die bewährte Methode besteht darin, separate Authentifizierungspfade für Azure DevOps Server und Azure DevOps Services zu haben. Sie können den requestContext
Dienst ermitteln, auf den Sie zugreifen, und dann den entsprechenden Authentifizierungsmechanismus anwenden. Wenn Sie eine einheitliche Lösung bevorzugen, funktionieren PATs für beide.