Dela via


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 föreslagna autentiseringsbegrepp att överväga för olika programscenarier. 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 OAuth- med 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 OAuth med klientbibliotek prov
Icke-interaktiv app på klientsidan Huvudlös text endast program på klientsidan Konsolapp som visar alla buggar som tilldelats en användare OAuth med flöde för 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 ad hoc REST-anrop. Inte idealiskt för applikationer. Pats exempel
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 huvudprincip eller hanterade identitet Program med egen identitet 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

Tips

Entra-baserad autentisering är vår rekommendation för utvecklare som vill integrera med Azure DevOps Services om du interagerar med Microsoft Entra-konton. OAuth-exempelapparna i den här tabellen använder Microsoft Entras identitetsplattform för apputveckling.
För autentisering med Microsoft-konton (MSA) eller Azure DevOps Server-användare kan du titta på våra klientbibliotek eller PAT-.
Läs mer i vår blogg om hur vi minskar PAT-användningen på vår plattform.

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.