Välj rätt autentiseringsmetod
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
För program som samverkar med Azure DevOps Services måste du autentisera för att få åtkomst till resurser som REST-API:er. Den här artikeln innehåller vägledning som hjälper dig att välja rätt autentiseringsmekanism för ditt program.
I följande tabell beskrivs de rekommenderade autentiseringsmekanismerna för olika programtyper. Se tillhörande beskrivningar, exempel och kodexempel som hjälper dig att komma igång.
Typ av program | beskrivning | Exempel | Autentiseringsmekanism | Kodexempel |
---|---|---|---|---|
Interaktiv app på klientsidan (REST) | Klientprogram som tillåter användarinteraktion som anropar REST-API:er för Azure DevOps Services | Konsolprogram som räknar upp projekt i en organisation | Microsoft Authentication Library (MSAL) | prov |
Interaktiv app på klientsidan (klientbibliotek) | Klientprogram som tillåter användarinteraktion som anropar Azure DevOps Services-klientbibliotek | Konsolprogram som räknar upp buggar som tilldelats den aktuella användaren | Klientbibliotek | prov |
Interaktiv JavaScript-app | GUI-baserat JavaScript-program | AngularJS-ensidesapp som visar projektinformation för en användare | Microsoft Authentication Library for JavaScript (MSAL JS) | prov |
Interaktiv OAuth-webbapp | GUI-baserad webbapp som kräver användarmedgivande | Anpassad webbinstrumentpanel som visar kompileringssammanfattningar | OAuth | prov |
Icke-interaktiv app på klientsidan | Huvudlös text endast program på klientsidan | Konsolapp som visar alla buggar som tilldelats en användare | Enhetsprofil | prov |
Personlig åtkomsttoken (PAT) | Ägartoken för att få åtkomst till dina egna resurser | Använd din PAT i stället för ditt lösenord för REST-begäranden. Inte idealiskt för att skapa program. | Pats | Docs |
Serverapp | Azure DevOps Server-appen med hjälp av klient-OM-biblioteket | Azure DevOps Server-tillägg som visar instrumentpaneler för teamfel | Klientbibliotek | prov |
Tjänstens huvudnamnsapp | Program med åtkomst till organisationens Azure DevOps-resurser | Azure-funktion för att skapa arbetsobjekt | Tjänstens huvudnamn och hanterade identiteter | prov |
Webbtillägg | Azure DevOps Services-tillägg | Tillägg för agila kort | VSS-webbtilläggs-SDK | prov |
Mer information finns i följande artiklar:
- Om säkerhet och identitet.
- OAuth-autentisering
- Tjänstens huvudnamn och hanterade identiteter
- Azure DevOps-klientbibliotek
- Azure DevOps-tillägg
- Översikt över Azure DevOps-dataskydd
Om du aktiverar grundläggande IIS-autentisering ogiltigförklaras användningen av PAT för Azure DevOps Server
Mer information finns i Använda grundläggande IIS-autentisering med Azure DevOps lokalt.
Vanliga frågor (FAQ)
F: Varför kan inte mitt tjänstkonto komma åt Azure DevOps REST API?
S: Ditt tjänstkonto kanske inte har "materialiserats". Tjänstkonton utan interaktiva inloggningsbehörigheter kan inte logga in. Mer information finns i den här lösningen .
F: Ska jag använda Azure DevOps Services-klientbibliotek eller Rest-API:er för Azure DevOps Services för mitt interaktiva program på klientsidan?
S: Vi rekommenderar att du använder Azure DevOps Services-klientbibliotek via REST-API:er för åtkomst till Azure DevOps Services-resurser. De är enklare och enklare att underhålla när REST-slutpunktsversioner ändras. Om klientbiblioteken saknar vissa funktioner använder du MSAL för autentisering med våra REST-API:er.
F: Är den här vägledningen endast för Azure DevOps Services eller är den också relevant för lokala Azure DevOps Server-användare?
S: Den här vägledningen gäller främst för Azure DevOps Services-användare. För Azure Devops Server-användare rekommenderar vi att du använder klientbibliotek, Windows-autentisering eller personliga åtkomsttoken (PAT) för autentisering.
F: Vad händer om jag vill att mitt program ska autentiseras med både Azure DevOps Server och Azure DevOps Services?
S: Det bästa sättet är att ha separata autentiseringsvägar för Azure DevOps Server och Azure DevOps Services. Du kan använda requestContext
för att avgöra vilken tjänst du har åtkomst till och sedan tillämpa rätt autentiseringsmekanism. Om du föredrar en enhetlig lösning fungerar PAT för båda.