Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Azure DevOps använder en kombination av säkerhetsbegrepp för att säkerställa att endast behöriga användare kan komma åt dess funktioner, funktioner och data. Åtkomst bestäms av två nyckelprocesser: autentisering, som verifierar en användares autentiseringsuppgifter och auktorisering, som beviljar behörigheter baserat på kontorättigheter. Tillsammans styr dessa processer vad varje användare kan göra i Azure DevOps.
Den här artikeln utökar Komma igång med behörigheter, åtkomst och säkerhetsgrupper och hjälper administratörer att förstå olika kontotyper, autentiserings- och auktoriseringsmetoder samt säkerhetsprinciper som är tillgängliga för att skydda Azure DevOps-miljöer.
Kontotyper
- Användare
- Organisationsägare
- Tjänstkonton
- Tjänstens huvudnamn eller hanterade identiteter
- Jobbagenter
Autentisering
- Användarautentiseringsuppgifter
- Windows-autentisering
- Tvåfaktorsautentisering (2FA)
- SSH-nyckelautentisering
- Microfost Entra-token
- Personlig åtkomsttoken
- Oauth-konfiguration
- Active Directory-autentiseringsbibliotek
Auktorisering
- Medlemskap i säkerhetsgrupp
- Rollbaserad åtkomstkontroll
- Åtkomstnivåer
- Funktionsflaggor
- Säkerhetsnamnområden och behörigheter
Principer
- URL för sekretesspolicy
- Anslutnings- och säkerhetsprinciper för program
- Användarprinciper
- Git-lagringsplats och grenprinciper
Kontotyper
- Användare
- Tjänstkonton
- Tjänstens huvudnamn eller hanterade identiteter
- Jobbagenter
Autentisering
- Användarautentiseringsuppgifter
- Windows-autentisering
- Tvåfaktorsautentisering (2FA)
- SSH-nyckelautentisering
- Personliga åtkomsttoken
- Oauth-konfiguration
- Active Directory-autentiseringsbibliotek
Auktorisering
- Medlemskap i säkerhetsgrupp
- Rollbaserade behörigheter
- Åtkomstnivåer
- Funktionsflaggor
- Säkerhetsnamnområden och behörigheter
Principer
- Git-lagringsplats och grenprinciper
Viktigt!
Azure DevOps stöder inte autentisering med alternativa autentiseringsuppgifter. Om du fortfarande använder alternativa autentiseringsuppgifter rekommenderar vi starkt att du byter till en säkrare autentiseringsmetod.
Båda Azure DevOps stöder programutveckling från planering till distribution. Varje plattform använder Microsoft Azures plattform som en tjänstinfrastruktur och tjänster, inklusive Azure SQL-databaser, för att tillhandahålla en tillförlitlig, globalt tillgänglig tjänst för dina projekt.
Mer information om hur Microsoft ser till att dina projekt är säkra, tillgängliga, säkra och privata finns i översikten över Azure DevOps-dataskydd.
Konton
Även om mänskliga användarkonton är det primära fokuset har Azure DevOps även stöd för olika typer av konton för olika åtgärder:
- Organisationsägare: Skaparen av en Azure DevOps Services-organisation eller tilldelad ägare. Information om hur du hittar ägaren för din organisation finns i Leta upp organisationens ägare.
- Tjänstkonton: Intern Azure DevOps-organisation som används för att stödja en specifik tjänst, till exempel Agent Pool Service, PipelinesSDK. Beskrivningar av tjänstkonton finns i Säkerhetsgrupper, tjänstkonton och behörigheter.
- Tjänstens huvudnamn eller hanterade identiteter: Microsoft Entra-program eller hanterade identiteter som lagts till i din organisation för att utföra åtgärder för ett program som inte kommer från Microsoft. Vissa tjänsthuvudnamn refererar till den interna Azure DevOps-organisationen för att stödja interna åtgärder.
- Jobbagenter: Interna konton som används för att köra specifika jobb enligt ett vanligt schema.
- Konton från tredje part: Konton som kräver åtkomst för att stödja webbkrokar, tjänstanslutningar eller andra program som inte kommer från Microsoft.
I våra säkerhetsrelaterade artiklar refererar "användare" till alla identiteter som läggs till i användarhubben, vilket kan omfatta mänskliga användare och tjänstens huvudnamn.
- Tjänstkonton: Intern Azure DevOps-organisation som används för att stödja en specifik tjänst, till exempel Agent Pool Service, PipelinesSDK. Beskrivningar av tjänstkonton finns i Säkerhetsgrupper, tjänstkonton och behörigheter.
- Tjänstens huvudnamn eller hanterade identiteter: Microsoft Entra-program eller hanterade identiteter som lagts till i din organisation för att utföra åtgärder för ett program som inte kommer från Microsoft. Vissa tjänsthuvudnamn refererar till den interna Azure DevOps-organisationen för att stödja interna åtgärder.
- Jobbagenter: Interna konton som används för att köra specifika jobb enligt ett vanligt schema.
- Konton från tredje part: Konton som kräver åtkomst för att stödja webbkrokar, tjänstanslutningar eller andra program som inte kommer från Microsoft.
Det mest effektiva sättet att hantera konton är genom att lägga till dem i säkerhetsgrupper.
Kommentar
Organisationens ägare och medlemmar i gruppen Projektsamlingsadministratörer beviljas fullständig åtkomst till nästan alla funktioner och funktioner.
Autentisering
Autentisering verifierar en användares identitet baserat på de autentiseringsuppgifter som angavs under inloggningen till Azure DevOps. Azure DevOps integreras med flera identitetssystem för att hantera autentisering:
- Microsoft Entra-ID: Rekommenderas för organisationer som hanterar en stor grupp användare. Ger robust, molnbaserad autentisering och användarhantering.
- Microsoft-konto (MSA): Passar för mindre användarbaser som har åtkomst till Azure DevOps-organisationer. Stödjer autentisering via molnet.
- Active Directory (AD): Rekommenderas för lokala distributioner med många användare med hjälp av din befintliga AD-infrastruktur.
Microsoft Entra-ID och Microsoft-konton har båda stöd för molnautentisering. Mer information finns i Om åtkomst till Azure DevOps med Microsoft Entra-ID.
För lokala miljöer använder du Active Directory för att effektivt hantera användaråtkomst. Läs mer i Konfigurera grupper för användning i lokala distributioner.
Autentisera programmatiskt
Få åtkomst till din Azure DevOps-organisation programmatiskt utan att ange användarnamn och lösenord upprepade gånger genom att välja någon av de tillgängliga autentiseringsmetoderna. Använd följande metoder för att automatisera arbetsflöden, integrera med REST-API:er eller skapa anpassade program:
- Använd OAuth för att skapa program som utför åtgärder för användarnas räkning. Användarna måste godkänna appen. För nya appar använder du Microsoft Entra OAuth.
- Använd tjänstens huvudnamn eller hanterade identiteter för att automatisera arbetsflöden eller skapa verktyg som regelbundet har åtkomst till organisationsresurser. Utfärda Microsoft Entra-token för själva programmet.
- Använd Microsoft Entra-ID för säker, molnbaserad autentisering och användarhantering.
- Använd personliga åtkomsttoken (PAT) för ad hoc-begäranden eller tidiga prototyper. Undvik PAT för långsiktig apputveckling, eftersom de är mer mottagliga för läckor och missbruk.
Tips/Råd
Lagra alltid autentiseringsuppgifter på ett säkert sätt och följ metodtipsen för att hantera autentiseringsmetoder.
Som standard tillåter din organisation åtkomst för alla autentiseringsmetoder. Organisationsadministratörer kan begränsa åtkomsten till dessa autentiseringsmetoder genom att inaktivera säkerhetsprinciper. Klientadministratörer kan ytterligare minska PAT-risken genom att begränsa hur de kan skapas.
Auktorisering
Auktorisering avgör om en autentiserad identitet har de behörigheter som krävs för att få åtkomst till en specifik tjänst, funktion, funktion, objekt eller metod i Azure DevOps. Auktoriseringskontroller utförs alltid efter lyckad autentisering – om autentiseringen misslyckas utvärderas aldrig auktoriseringen. Även efter autentiseringen kan användare eller grupper nekas åtkomst till vissa åtgärder om de saknar nödvändiga behörigheter.
Azure DevOps hanterar auktorisering via behörigheter som tilldelats direkt till användare eller ärvts via säkerhetsgrupper eller roller. Åtkomstnivåer och funktionsflaggor kan ytterligare styra åtkomsten till specifika funktioner. Mer information om dessa auktoriseringsmetoder finns i Komma igång med behörigheter, åtkomst och säkerhetsgrupper.
Säkerhetsnamnområden och behörigheter
Säkerhetsnamnområden definierar användaråtkomstnivåer för specifika åtgärder på Azure DevOps-resurser.
- Varje resursfamilj, till exempel arbetsobjekt eller Git-lagringsplatser, har ett eget unikt namnområde.
- Inom varje namnområde kan det finnas flera åtkomstkontrollistor (ACL:er).
- Varje ACL innehåller en token, en ärvningsflagga och en eller flera åtkomstkontrollposter (ACE).
- Varje ACE anger en identitetsbeskrivning, en bitmask för tillåtna behörigheter och en bitmask för nekade behörigheter.
Mer information finns i Säkerhetsnamnområden och behörighetsreferens.
Säkerhetsprinciper
För att skydda din organisation och kod kan administratörer på organisationsnivå (projektsamlingsadministratör) eller innehavarnivå (Azure DevOps-administratör) aktivera eller inaktivera olika säkerhetsprinciper, beroende på principomfånget. Viktiga principer att överväga är:
- Ange en URL för sekretesspolicy för att beskriva hur du hanterar intern och extern gästdatasekretess.
- Bestäm om användare i din organisation ska kunna skapa offentliga projekt.
Om din organisation är ansluten till Microsoft Entra-ID har du åtkomst till följande andra säkerhetsfunktioner:
- Begränsa skapandet av organisationen till specifika användare.
- Bjud in externa gäster till organisationen.
- Tillåt att team- och projektadministratörer bjuder in nya användare.
- Aktivera validering av principer för villkorsstyrd åtkomst (CAP).
- Spåra granskningshändelser och strömmar i din organisation.
Granska och konfigurera dessa principer för att stärka organisationens säkerhetsstatus och säkerställa efterlevnad av dina krav på datasekretess och åtkomst.
Gruppen Projektomfattande användare
Som standard kan användare som läggs till i en organisation visa all information och inställningar för organisationen och projektet, inklusive användarlistor, projektlistor, faktureringsinformation, användningsdata med mera.
Om du vill begränsa åtkomsten för specifika användare, till exempel Intressenter, Microsoft Entra-gästanvändare eller medlemmar i en viss säkerhetsgrupp, aktiverar du funktionen Begränsa användarnas synlighet och samarbete till specifika projekts förhandsversionsfunktion för din organisation. När den här funktionen är aktiverad begränsas alla användare eller grupper som läggs till i gruppen Project-Scoped Användare på följande sätt:
- Åtkomsten är begränsad till sidorna Översikt och Projekt i Organisationsinställningar.
- Användare kan bara ansluta till och visa projekt som de uttryckligen läggs till i.
- Användare kan bara välja användar- och gruppidentiteter som uttryckligen läggs till i samma projekt.
Mer information finns i Hantera din organisation: Begränsa användarnas synlighet för projekt och fler och Hantera förhandsgranskningsfunktioner.
Varning
Tänk på följande begränsningar när du använder den här förhandsgranskningsfunktionen:
- Funktionerna för begränsad synlighet som beskrivs i det här avsnittet gäller endast interaktioner via webbportalen. Med REST-API:er eller
azure devops
CLI-kommandon kan projektmedlemmar komma åt begränsade data. - Användare i den begränsade gruppen kan bara välja användare som uttryckligen läggs till i Azure DevOps och inte användare som har åtkomst via Microsoft Entra-gruppmedlemskap.
- Gästanvändare som är medlemmar i den begränsade gruppen med standardåtkomst i Microsoft Entra-ID kan inte söka efter användare med personväljaren.
Git-lagringsplats och grenprinciper
För att skydda koden kan du ange olika Git-lagringsplatser och grenprinciper. Mer information finns i följande artiklar.
Säkerhet för Azure Repos och Azure Pipelines
Eftersom lagringsplatser och bygg- och versionspipelines utgör unika säkerhetsutmaningar används andra funktioner utöver de funktioner som beskrivs i den här artikeln. Mer information finns i följande artiklar.
- Skydda Azure Pipelines
- Planera hur du skyddar dina YAML-pipelines
- Skydd av lagringsplats
- Pipelineresurser
- Rekommendationer för att på ett säkert sätt strukturera projekt i din pipeline
- Säkerhet via mallar
- Så här använder du variabler och parametrar på ett säkert sätt i pipelinen
- Rekommendationer för att skydda delad infrastruktur i Azure Pipelines
- Andra säkerhetsöverväganden