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 wird der empfohlene Authentifizierungsmechanismus für verschiedene Anwendungstypen beschrieben. Erste Schritte finden Sie in den folgenden grundlegenden Beschreibungen, Beispielen und Codebeispielen.

Art der Anwendung BESCHREIBUNG Beispiel Authentifizierungsmechanismus Codebeispiele
Interaktiv clientseitig (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 Microsoft Authentication Library (MSAL) Beispiel
Interaktive Clientseite (Clientbibliothek) Clientanwendung, die benutzerinteraktionsaufrufe Azure DevOps Services-Clientbibliotheken zulässt Die Konsolenanwendung listet Fehler auf, die dem aktuellen Benutzer zugewiesen sind Clientbibliotheken Beispiel
Interaktives JavaScript GUI-basierte JavaScript-Anwendung AngularJS-Einzelseiten-App, die Projektinformationen für einen Benutzer anzeigt Microsoft Authentication Library for JavaScript (MSAL JS) Beispiel
Persönliches Zugriffstoken (Personal Access Token, PAT) Bearertoken für den Zugriff auf Ihre eigenen Ressourcen Verwenden Sie Ihr PAT anstelle Ihres Kennworts. Pats
Nicht interaktive Clientseite Clientseitige Anwendung nur headless Text Konsolen-App, die alle Einem Benutzer zugewiesenen Fehler anzeigt Geräteprofil Beispiel
Interaktive clientseitige App für Azure DevOps Clientanwendung, die Benutzerinteraktion ermöglicht, authentifiziert Azure DevOps-Benutzer Konsolenanwendung, mit der Azure DevOps-Benutzern zugewiesene Fehler angezeigt werden können Clientbibliothek (interaktiv und Windows-Authentifizierung) Beispiel
Interaktives Web GUI-basierte Webanwendung, die die Zustimmung des Benutzers erfordert Benutzerdefinierte Web-Dashboard anzeigen von Buildzusammenfassungen Azure DevOps OAuth Beispiel
Dienstprinzipale oder verwaltete Identitäten Anwendung mit Zugriff auf die Azure DevOps-Ressourcen von organization Azure-Funktion zum Erstellen von Arbeitselementen Dienstprinzipale und verwaltete Identitäten Beispiel
Azure DevOps Server Anwendung Azure DevOps Server App mithilfe der Client OM-Bibliothek Azure DevOps Server Erweiterung mit Teamfehlerdashboards Clientbibliotheken Beispiel
Azure DevOps Services-Erweiterung Azure DevOps Services-Erweiterung Agile Karten VSS Web Extension SDK Beispiel

Informationen zu Sicherheits- und Identitätskonzepten in Azure DevOps finden Sie unter Informationen zu Sicherheit und Identität. Weitere Informationen zum Speichern Ihrer Anmeldeinformationen finden Sie unter Speicher von Anmeldeinformationen für Azure DevOps.

Durch aktivieren der IIS-Standardauthentifizierung wird die Verwendung von PATs für Azure DevOps Server ungültig.

Weitere Informationen finden Sie unter Verwenden der IIS-Standardauthentifizierung mit lokalen Azure DevOps.For more information, see Using IIS Basic Authentication with Azure DevOps on-premises.

Häufig gestellte Fragen (FAQs)

F: Warum kann eines meiner Dienstkonten nicht auf die Azure DevOps-REST-API zugreifen?

A: Ihr Dienstkonto hat möglicherweise nicht "materialisiert". Da die Anmeldung nicht mit einem Dienstkonto möglich ist, das nicht über interaktive Anmeldeberechtigungen verfügt, schauen Sie sich diese Umgehung an.

F: Ich stelle eine interaktive clientseitige Anwendung her. Sollte ich Azure DevOps Services Clientbibliotheken oder Azure DevOps Services REST-APIs verwenden?

A: Beim Zugriff auf Azure DevOps Services Ressourcen wird empfohlen, Azure DevOps Services Clientbibliotheken über REST-APIs zu verwenden. Sie sind einfacher und einfacher zu verwalten, wenn Versionsänderungen an unseren REST-Endpunkten auftreten. Wenn funktionen in den Clientbibliotheken fehlen, ist MSAL der beste Authentifizierungsmechanismus, der mit unseren REST-APIs verwendet werden kann.

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 hauptsächlich an Azure DevOps Services Benutzer. Clientbibliotheken sind eine Reihe von Paketen, die speziell für die Erweiterung Azure DevOps Server Funktionalität entwickelt wurden. Für lokale Benutzer empfehlen wir die Verwendung der Clientbibliotheken, der Windows-Authentifizierung oder der persönlichen Zugriffstoken (PATs), um sich für einen Benutzer zu authentifizieren.

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, unterschiedliche Authentifizierungspfade für Azure DevOps Server und Azure DevOps Services. Sie können den requestContext verwenden, um herauszufinden, welche Treffer Sie treffen, und dann den besten Mechanismus für jeden verwenden. Wenn Sie stattdessen eine einheitliche Lösung wünschen, funktionieren PATs für beide.