Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure DevOps Server | Azure DevOps Server 2022 - Azure DevOps Server 2019
Ein persönlicher Zugriffstoken (PAT) dient als alternatives Kennwort für die Authentifizierung bei Azure DevOps. Dieses PAT identifiziert Sie und bestimmt Ihre Zugriffsmöglichkeiten und den Bereich, in dem Sie Zugang haben. Behandeln Sie PATs mit der gleichen Vorsicht wie Kennwörter.
Wenn Sie Microsoft-Tools verwenden, wird Ihr Microsoft-Konto (MSA) oder Ihre Microsoft Entra ID erkannt und unterstützt. Wenn Sie Tools verwenden, die Microsoft Entra-Konten nicht unterstützen oder ihre primären Anmeldeinformationen lieber nicht freigeben möchten, sollten Sie PATs als alternative Authentifizierungsmethode verwenden. Wir empfehlen jedoch, wann immer möglich Microsoft Entra-Token statt PATs zu verwenden.
Wichtig
Wir empfehlen die sichereren Microsoft Entra-Token gegenüber token mit höherem Risiko für persönliche Zugriffstoken. Erfahren Sie mehr über unsere Bemühungen zur Reduzierung der PAT-Nutzung. Überprüfen Sie unsere Authentifizierungsleitfaden , um den richtigen Authentifizierungsmechanismus für Ihre Anforderungen auszuwählen.
Voraussetzungen
Kategorie | Anforderungen |
---|---|
Berechtigungen | Berechtigung zum Zugriff auf und zum Ändern Ihrer Benutzereinstellungen, in denen PATs verwaltet werden. – Navigieren Sie zu Ihrem Profil, und wählen Sie Benutzereinstellungen>Persönliche Zugriffstoken aus. Wenn Sie Ihre PATs hier sehen und verwalten können, verfügen Sie über die erforderlichen Berechtigungen. - Navigieren Sie zu Ihrem Projekt, und wählen Sie Projekteinstellungen>Berechtigungen aus. Suchen Sie Ihr Benutzerkonto in der Liste und überprüfen Sie die Ihnen zugewiesenen Berechtigungen. Suchen Sie nach Berechtigungen, die sich auf die Verwaltung von Token oder Benutzer-Einstellungen beziehen. – Wenn Ihre Organisation Richtlinien enthält, muss ihnen ein Administrator möglicherweise bestimmte Berechtigungen erteilen oder Sie einer Zulassungsliste hinzufügen, um PATs zu erstellen und zu verwalten. – PATs sind mit dem Benutzerkonto verbunden, das das Token geprägt hat. Je nachdem, welche Aufgaben der PAT ausführt, benötigen Sie selbst möglicherweise mehr Berechtigungen. |
Zugriffsebenen | Mindestens Basis-Zugriff. |
Aufgaben | Verwenden Sie PATs nur bei Bedarf, und drehen Sie sie immer regelmäßig. Weitere Informationen zu bewährten Methoden bei der Verwendung von PATs finden Sie in unserem Abschnitt. |
Einen PAT erstellen
Melden Sie sich bei Ihrem organization (
https://dev.azure.com/{Your_Organization}
) an.Öffnen Sie über die Startseite Ihre Benutzereinstellungen
, und wählen Sie dann Persönliche Zugriffstoken aus.
Wählen Sie + Neues Token aus.
Benennen Sie Ihren Token, wählen Sie die Organisation aus, in der Sie den Token verwenden möchten, und legen Sie dann fest, dass Ihr Token nach einer bestimmten Anzahl von Tagen automatisch abläuft.
Wählen Sie die Bereiche für dieses Token aus, um es für Ihre spezifischen Aufgaben zu autorisieren.
Um beispielsweise ein Token für einen Build and Release Agent zu erstellen, um sich bei Azure DevOps zu authentifizieren, setzen Sie den Bereich des Tokens auf Agent-Pools (Lesen & Verwalten). Um Überwachungsereignisse zu lesen und Streams zu verwalten oder zu löschen, wählen Sie Überwachungsprotokoll lesen, und wählen Sie dann Erstellen.
Hinweis
Ihr Administrator kann Sie möglicherweise daran hindern, PATs mit vollständigem Umfang zu erstellen, oder Sie nur auf PATs mit Paketumfang beschränken. Wenden Sie sich an Ihren Administrator, um auf die Zulassungsliste zuzugreifen, wenn Sie Zugriff auf weitere Bereiche benötigen. Einige Bereiche, wie z. B.
vso.governance
, sind möglicherweise nicht in der Benutzeroberfläche verfügbar, wenn sie nicht für den allgemeinen öffentlichen Gebrauch bestimmt sind.Kopieren Sie danach das Token, und speichern Sie es an einem sicheren Speicherort. Zu Ihrer Sicherheit wird er nicht mehr angezeigt.
Verwenden Sie Ihr PAT überall dort, wo Ihre Anmeldeinformationen für die Authentifizierung in Azure DevOps erforderlich sind.
Wichtig
- Behandeln Sie ein PAT mit der gleichen Vorsicht wie Ihr Kennwort und behandeln Sie es vertraulich. TEILEN SIE KEINE PATS.
- Für Organisationen, die durch Microsoft Entra ID unterstützt werden, müssen Sie sich innerhalb von 90 Tagen mit Ihrem neuen PAT anmelden, da es sonst inaktiv wird. Weitere Informationen finden Sie unter Häufigkeit der Benutzeranmeldung für bedingten Zugriff.
Benachrichtigungen
Während der Lebensdauer eines PAT erhalten die Benutzer zwei Benachrichtigungen: eine, wenn der PAT erstellt wird und eine weitere sieben Tage vor seinem Ablauf.
Nachdem Sie einen PAT erstellt haben, erhalten Sie möglicherweise eine Benachrichtigung ähnlich dem folgenden Beispiel. Diese Benachrichtigung dient als Bestätigung, dass Ihr PAT erfolgreich zu Ihrer Organisation hinzugefügt wurde.
Eine Ablaufbenachrichtigungs-E-Mail wird drei Tage vor Ablauf gesendet. Wenn Ihr Administrator Ihre Fähigkeit zum Erstellen von PATs in der Organisation entfernt hat, gibt die E-Mail an, dass es ihnen nicht mehr möglich ist, PATs neu zu generieren. Wenden Sie sich an Ihren Project-Sammlungsadministrator, um in einer Erlaubnisliste aufgenommen zu werden, die es Ihnen erlaubt, weiterhin PATs in dieser Organisation zu erstellen.
Weitere Informationen finden Sie unter Konfigurieren eines SMTP-Servers und Anpassen der E-Mail für Warnungen und Feedback-Anfragen.
Unerwartete Benachrichtigung
Wenn Sie eine unerwartete PAT-Benachrichtigung erhalten, bedeutet dies möglicherweise, dass ein Administrator oder Tool ein PAT für Sie erstellt hat. Im Folgenden finden Sie einige Beispiele:
- Ein Token mit dem Namen „Git:
https://dev.azure.com/{Your_Organization}
on YourMachine” wird erstellt, wenn Sie sich mit einem Azure DevOps Git-Repo über git.exe verbinden. - Wenn Sie oder ein Administrator eine Azure App Service-Web-App-Bereitstellung einrichten, wird ein Token mit dem Namen „Service Hooks: Azure App Service: Deploy web app“ erstellt.
- Ein Token mit dem Namen "WebAppLoadTestCDIntToken" wird erstellt, wenn Sie oder ein Administrator Weblasttests als Teil einer Pipeline einrichten.
- Wenn eine Microsoft Teams-Integration mit Messaging-Erweiterung eingerichtet wird, wird ein Token mit dem Namen „Microsoft Teams Integration“ erstellt.
Warnung
- Widerrufen Sie den PAT (und ändern Sie Ihr Kennwort), wenn Sie vermuten, dass er irrtümlich existiert.
- Wenden Sie sich an Ihren Administrator, wenn Sie ein Microsoft Entra-Benutzer sind, um festzustellen, ob von einer unbekannten Quelle oder einem unbekannten Speicherort auf Ihre Organisation zugegriffen wurde.
- Lesen Sie die FAQ zu unbeabsichtigten PAT-Check-Ins in öffentliche GitHub-Repositories.
Verwenden eines PAT
Ihr PAT dient als Ihre digitale Identität, ähnlich wie ein Kennwort. Sie können PATs als schnelle Möglichkeit verwenden, um einmalige Anfragen zu stellen oder einen Prototyp einer Anwendung lokal zu testen. Verwenden Sie einen PAT in Ihrem Code, um REST-APIs-Anforderungen zu authentifizieren und Workflows zu automatisieren, indem Sie den PAT in den Autorisierungsheader Ihrer Anforderung einschließen.
Wichtig
Sobald Ihr App-Code funktioniert, wechseln Sie zu Microsoft Entra OAuth, um Token im Auftrag der Benutzer Ihrer App zu erwerben oder verwenden Sie einen Dienstprinzipal oder eine verwaltete Identität, um Token als Anwendung abzurufen. Es wird nicht empfohlen, Apps oder Skripts mit PATs langfristig auszuführen. Microsoft Entra-Token können überall verwendet werden, wo ein PAT verwendet wird. Erwägen Sie, ein Microsoft Entra-Token über die Azure CLI für Ad-hoc-Anforderungen zu erwerben.
Um den PAT über einen HTTP-Header bereitzustellen, müssen Sie ihn zuerst in eine Base64
Zeichenfolge konvertieren. Sie kann dann als HTTP-Header im folgenden Format bereitgestellt werden.
Authorization: Basic BASE64_USERNAME_PAT_STRING
Ändern eines PAT
Führen Sie die folgenden Schritte aus, um:
- Generieren Sie ein PAT neu, um ein neues Token zu erstellen, das das vorherige ungültig macht.
- Verlängern Sie ein PAT, um seine Gültigkeitsdauer zu erhöhen.
- Ändern Sie den Bereich eines PATs, um seine Berechtigungen zu ändern.
Öffnen Sie über die Startseite Ihre Benutzereinstellungen
, und wählen Sie dann Persönliche Zugriffstoken aus.
Wählen Sie das Token, das Sie ändern möchten, und dann Bearbeiten.
Bearbeiten Sie den Namen des Tokens, den Ablauf des Tokens oder den Bereich, der mit dem Token verknüpft ist, und wählen Sie dann Speichern.
Ein PAT widerrufen
Sie können ein PAT jederzeit aus diesen und anderen Gründen widerrufen:
- Widerrufen Sie einen PAT, wenn Sie vermuten, dass sie kompromittiert ist.
- Widerrufen Sie einen PAT, wenn er nicht mehr benötigt wird.
- Widerrufen Sie ein PAT, um Sicherheitsrichtlinien oder Compliance-Anforderungen durchzusetzen.
Öffnen Sie über die Startseite Ihre Benutzereinstellungen
, und wählen Sie dann Persönliche Zugriffstoken aus.
Wählen Sie unter Sicherheit Persönliches Zugriffstoken. Wählen Sie das Token aus, für das Sie den Zugriff widerrufen möchten, und wählen Sie dann Widerrufen.
Wählen Sie Widerrufen im Bestätigungsdialog.
PAT Lifecycle Management-APIs
Die PAT Lifecycle Management-APIs könnten nützlich sein, wenn die Pflege großer Mengen von Token über die Benutzeroberfläche nicht mehr tragbar ist. Die programmgesteuerte Verwaltung der PAT-Drehung eröffnet auch die Möglichkeit, PATs regelmäßig zu drehen und ihre Standardlebensdauer zu verkürzen. Unsere Python-Beispiel-App kann mit Ihrem Microsoft Entra-Mandanten und Ihrer Azure DevOps-Organisation konfiguriert werden.
Einige Punkte, die Sie zu diesen APIs beachten müssen:
- Microsoft Entra-Zugriffstoken sind erforderlich, um auf diese API zuzugreifen, da im Allgemeinen eine stärkere Authentifizierungsform empfohlen wird, wenn neue Token verwendet werden.
- Nur Benutzer oder Apps, die einen "Im-Auftrag-von-Benutzer"-Ablauf verwenden, können PATs generieren. Apps, die "On-behalf-of-application"-Flüsse oder Authentifizierungsflüsse verwenden, die keine Microsoft Entra-Zugriffstoken ausgeben, sind für die Verwendung mit dieser API nicht gültig. Daher können Dienstprinzipale oder verwaltete Identitäten keine PATs erstellen oder verwalten.
- Zuvor unterstützten die PAT Lifecycle Management-APIs nur den
user_impersonation
Bereich, aber jetzt sind dievso.pats
verfügbar und der empfohlene Bereich für diese APIS. Begrenzen Sie alle Apps, die sich zuvor aufuser_impersonation
verlassen haben, um diese APIs aufzurufen.
Änderungen am Format
Seit Juli 2024 haben wir das Format der PAT-Zeichenfolgen aktualisiert, um die geheime Erkennung in unseren durchleckten PAT-Erkennungstools und Partnerangeboten zu verbessern. Dieses neue PAT-Format enthält mehr identifizierbare Bits, um die falsch positive Erkennungsrate in diesen Erkennungstools zu verbessern und erkannte Lecks schneller zu mindern.
- Neue Token sind jetzt 84 Zeichen lang, wobei 52 Zeichen randomisierte Daten vorhanden sind, wodurch die Gesamtentropie verbessert wird, wodurch Token resistenter gegen Brute-Force-Angriffe sind.
- Von unserem Dienst ausgestellte Token enthalten eine feste
AZDO
Signatur an den Positionen 76-80.
Wenn Sie einen pat verwenden, der vor diesen Daten ausgestellt wurde, regenerieren Sie Ihr PAT erneut. Wenn Sie in PATs integriert sind und die PAT-Überprüfung integriert ist, aktualisieren Sie Ihren Validierungscode so, dass sowohl neue als auch vorhandene Tokenlängen berücksichtigt werden.
Warnung
Beide Formate bleiben für die vorhersehbare Zukunft gültig. Da die Einführung des neuen Formats zunimmt, könnten wir ältere 52-stellige PATs aus dem Verkehr ziehen.
Bewährte Verfahren für die Verwendung von PATs
Ziehen Sie Alternativen in Betracht
- Erwerben Sie ein Microsoft Entra-Token über die Azure CLI für Ad-hoc-Anforderungen, anstatt einen längerlebigen PAT zu verwenden.
- Verwenden Sie Anmeldeinformationsmanager wie Git Credential Manager oder Azure Artifacts Credential Manager , um die Verwaltung von Anmeldeinformationen zu vereinfachen, wobei die Authentifizierung auf
oauth
oder Microsoft Entra-Token festgelegt ist.
PATs erstellen
- Geben Sie keine personenbezogenen Daten im PAT-Namen ein. Benennen Sie den PAT-Namen nicht um, um einige oder alle tatsächlichen PAT-Token einzuschließen.
- Vermeiden Sie die Erstellung globaler PATs, es sei denn, dies ist in allen Organisationen erforderlich.
- Verwenden Sie ein anderes Token pro Fluss oder Benutzerfall.
- Wählen Sie nur die minimalen Bereiche aus, die für jeden PAT erforderlich sind. Gewähren Sie den geringsten Berechtigungen, die für Ihre bestimmte Aufgabe erforderlich sind, und erstellen Sie separate PATs mit eingeschränkten Bereichen für verschiedene Workflows, anstatt ein einzelnes, breit angelegtes Token zu verwenden. Wenn Ihr PAT schreibgeschützte Berechtigungen benötigt, geben Sie erst Schreibberechtigungen an, wenn dies erforderlich ist.
- Halten Sie PAT-Lebensdauer kurz (wöchentlich ist ideal, noch kürzer ist besser).
PATs verwalten
- Teilen Sie Ihre PATs nicht!
- Speichern Sie Ihre PATs in einer Sicheren Schlüsselverwaltungslösung, z. B. Azure KeyVault.
- Drehen oder regenerieren Sie Ihre PATs regelmäßig über UI- oder PAT-Lifecycle-Verwaltungs-APIs.
- Widerrufen sie PATs, wenn sie nicht mehr benötigt werden.
- Rotieren Sie Ihre PATs und verwenden Sie das neue PAT-Format für eine bessere Erkennung von durchgesickerten Secrets und deren Widerruf durch unsere First-Party-Tools.
Für Administratoren
- Mandantenadministratoren können Richtlinien festlegen, um die globale PAT-Erstellung, die spezifische PAT-Erstellung und die lange Laufzeit von PATs einzuschränken.
- Mieteradministratoren können PATs für die Benutzer ihrer Organisation zu widerrufen wenn das PAT gefährdet ist.
- Organisationsadministratoren können die PAT-Erstellung in einer Organisation einschränken. Wenn PATs noch benötigt werden, beschränken Sie ihre Erstellung auf nur solche auf der Zulassungsliste.
Häufig gestellte Fragen
F: Warum kann ich ein PAT, das auf eine einzelne Organisation beschränkt ist, nicht bearbeiten oder neu generieren?
A: Melden Sie sich bei der Organisation an, in deren Bereich Ihr PAT fällt. Sie können Ihre PATs anzeigen, wenn Sie bei jeder Organisation in derselben Microsoft Entra-ID angemeldet sind, indem Sie den Access-Bereichsfilter ändern, aber Sie können organisationsbezogene Token nur bearbeiten, wenn Sie bei der jeweiligen Organisation angemeldet sind.
F: Was geschieht mit einem PAT, wenn ein Benutzerkonto deaktiviert wird?
A: Wenn ein Benutzer aus Azure DevOps entfernt wird, wird das PAT innerhalb von 1 Stunde ungültig. Wenn Ihre Organisation mit Microsoft Entra ID verbunden ist, wird das PAT auch in Microsoft Entra ID ungültig, da es zu dem Benutzer gehört. Wir empfehlen, das PAT auf einen anderen Benutzer oder ein anderes Dienstkonto zu rotieren, damit die Dienste weiterhin ausgeführt werden können.
F: Kann ich PATs mit allen REST-APIs von Azure DevOps verwenden?
A: Nein. Sie können PATs mit den meisten Azure DevOps-REST-APIs verwenden, Organisationen und Profile und die PAT Management Lifecycle-APIs unterstützen jedoch nur Microsoft Entra-Token.
F: Was passiert, wenn ich mein PAT versehentlich in ein öffentliches Repository auf GitHub einchecke?
A: Azure DevOps scannt nach PATs, die in öffentliche Repositories auf GitHub eingecheckt wurden. Wenn wir ein geleaktes Token finden, senden wir sofort eine detaillierte E-Mail-Benachrichtigung an den Besitzer des Tokens und protokollieren ein Ereignis im Überwachungsprotokoll Ihrer Azure DevOps Organisation. Wir empfehlen den betroffenen Benutzern, das Problem zu beheben, indem sie das geleakte Token widerrufen und es durch ein neues Token ersetzen.
Sofern Sie nicht die Richtlinie Automatischer Widerruf von geleakten personenbezogenen Zugriffstoken deaktiviert haben, widerrufen wir das geleakte PAT sofort. Weitere Informationen finden Sie unter Geleakte PATs automatisch widerrufen.
F: Kann ich ein personenbezogenes Zugriffstoken als ApiKey verwenden, um NuGet-Pakete über die Kommandozeile dotnet/nuget.exe in einem Azure Artifacts-Feed zu veröffentlichen?
A: Nein. Azure Artifacts unterstützt nicht die Übergabe eines PAT als ApiKey. Bei Verwendung einer lokalen Entwicklungsumgebung wird empfohlen, den Azure Artifacts-Anmeldeinformationsanbieter zu installieren, um sich bei Azure Artifacts zu authentifizieren. Weitere Informationen finden Sie in den folgenden Beispielen: dotnet, NuGet.exe. Wenn Sie Ihre Pakete mit Azure Pipelines veröffentlichen möchten, verwenden Sie die Aufgabe NuGet-Authentifizierung, um sich mit Ihrem Feed zu authentifizieren. Siehe Beispiel
F: Warum funktioniert mein PAT nicht mehr?
A: Die PAT-Authentifizierung erfordert eine regelmäßige Anmeldung bei Azure DevOps unter Verwendung des vollständigen Flows für die Authentifizierung. Eine einmalige Anmeldung alle 30 Tage ist für viele Benutzer ausreichend, aber je nach Ihrer Microsoft Entra-Konfiguration müssen Sie sich möglicherweise häufiger anmelden. Wenn Ihr PAT nicht mehr funktioniert, versuchen Sie zunächst, sich in Ihrer Organisation anzumelden und die vollständige Authentifizierung abzuschließen. Wenn Ihr PAT immer noch nicht funktioniert, überprüfen Sie, ob es abgelaufen ist.
Die Aktivierung der IIS Basic Authentication macht die Verwendung von PATs für Azure DevOps-Server ungültig. Es wird empfohlen, die IIS-Standardauthentifizierung immer desaktiviert zu lassen.
Warnung
Wenn Sie Git mit IIS Basic Authentication verwenden, funktioniert Git nicht, da PATs für die Benutzerauthentifizierung erforderlich sind. Sie können git-Anforderungen einen zusätzlichen Header hinzufügen, um ihn mit DER IIS-Standardauthentifizierung zu verwenden. Diese Aktion wird jedoch nicht empfohlen. Der zusätzliche Header muss für alle Azure DevOps Server-Installationen verwendet werden, da Windows Auth auch die Verwendung von PATs verhindert. Der zusätzliche Header muss auch eine Base64-Codierung von user:PAT
enthalten.
git -c http.extraheader='Authorization: Basic [base 64 encoding of "user:password"]' ls-remote http://tfsserver:8080/tfs/DefaultCollection/_git/projectName
F: Wie erstelle ich Zugriffstoken, die nicht an eine Person gebunden sind?
A: Alle PATs sind der Benutzeridentität zugeordnet, die sie erstellt hat. Anwendungen können keine PATs erstellen.
In Azure DevOps können Sie Zugriffstoken generieren, die nicht mit einem bestimmten Benutzer verknüpft sind, indem Sie Microsoft Entra-Token verwenden, die von einem Anwendungsdienstprinzipal oder einer verwalteten Identität ausgestellt wurden. Verwenden Sie für Pipelines Dienstverbindungen , um automatisierte Aufgaben sicher zu authentifizieren und zu autorisieren, ohne sich auf benutzerspezifische Anmeldeinformationen zu verlassen.
F: Wie kann ich PATs über die API neu generieren/drehen? Ich habe diese Option in der Benutzeroberfläche gesehen, aber ich sehe keine ähnliche Methode in der API.
Die in der Benutzeroberfläche verfügbare "Regenerate"-Funktion führt tatsächlich einige Aktionen durch, die über DIE API repliziert werden können.
Führen Sie die folgenden Schritte aus, um Ihren PAT zu drehen:
- Siehe PAT-Metadaten mit einem GET-Aufruf ,
- Erstellen eines neuen PAT mit der alten PAT-ID mithilfe einer POST-Anfrage
- Widerrufen Sie den alten PAT mithilfe eines DELETE-Aufrufs .
F: Ich sehe ein Popup "Administratorgenehmigung benötigen", wenn ich versuche, eine Microsoft Entra-App zum Aufrufen der PAT Lifecycle Management-APIs zu verwenden.
Die Sicherheitsrichtlinien Ihres Mandanten erfordern die Administratorzustimmung, bevor Anwendungen auf Organisationsressourcen in der Organisation zugreifen können. Wenden Sie sich an Ihren Mandantenadministrator.
F: Kann ich einen Serviceprinzipal zum Erstellen oder Verwalten von PATs verwenden?
Nein, persönliche Zugriffstoken gehören zu einer Benutzeridentität. Microsoft Entra-Dienstprinzipale oder verwaltete Identitäten können kurzlebige Microsoft Entra-Token generieren, die an den meisten Stellen verwendet werden können, an denen ein PAT akzeptiert wird. Erfahren Sie mehr über unsere Bemühungen, die PAT-Nutzung in Azure DevOps zu reduzieren und paTs durch Microsoft Entra-Token zu ersetzen.