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 empfohlenen Authentifizierungsmechanismen für verschiedene Anwendungstypen 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 | Beispiel |
Interaktive clientseitige App (Clientbibliotheken) | Clientanwendung, die es ermöglicht, dass Benutzer mit den Azure DevOps Services-Clientbibliotheken interagieren und diese aufrufen | Die Konsolenanwendung listet Fehler auf, die dem aktuellen Benutzer zugewiesen sind | Clientbibliotheken | Beispiel |
Nicht interaktive clientseitige App | Clientseitige Anwendung nur headless Text | Konsolen-App, die alle Einem Benutzer zugewiesenen Fehler anzeigt | Geräteprofil | Beispiel |
Persönliches Zugriffstoken (Personal Access Token, PAT) | Bearertoken für den Zugriff auf Ihre eigenen Ressourcen | Verwenden Sie Ihren PAT anstelle Ihres Kennworts für REST-Anforderungen. Nicht ideal für die Erstellung von Anwendungen. | Pats | docs |
Server-App | Azure DevOps Server App mithilfe der Client OM-Bibliothek | Azure DevOps Server Erweiterung mit Teamfehlerdashboards | Clientbibliotheken | Beispiel |
Dienstprinzipal oder verwaltete Identität | Anwendungsidentität mit Zugriff auf die Azure DevOps-Ressourcen der Organisation | 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 |
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.