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 Server |Azure DevOps Server |Azure DevOps Server 2022 | Azure DevOps Server 2020
Du kan stärka säkerheten för din distribution av Azure DevOps Server genom att konfigurera den så att den använder Hypertext Transfer Protocol Secure (HTTPS) med Secure Sockets Layer (SSL). Du kan välja att antingen kräva det här protokollet, vilket maximerar säkerheten för distributionen, eller så kan du välja att stödja HTTPS med SSL utöver standardprotokollet HTTP. Om du använder Versionshantering för Visual Studio 2013 kan du även konfigurera att använda HTTPS med SSL, även om du inte kan konfigurera det för att stödja både HTTP och HTTPS med SSL.
Innan du väljer en konfiguration bör du granska de fördelar och nackdelar som beskrivs här. När du har identifierat den konfiguration som bäst uppfyller organisationens säkerhetsbehov följer du stegen i det här avsnittet för att konfigurera distributionen.
I det här avsnittet
Konceptuell information
Serverkonfiguration
Valfria konfigurationsuppgifter
Byggkonfiguration
Klientkonfiguration
Konfiguration av Git-lagringsplats
Fördelar med att stödja HTTPS med SSL utöver HTTP
Om du konfigurerar distributionen av Azure DevOps Server för att stödja båda protokollen ansluter användare vars datorer har konfigurerats för HTTPS med SSL med hjälp av det protokollet, vilket gör distributionen säkrare. Dessutom kan användare vars datorer är konfigurerade för HTTP fortfarande ansluta till distributionen. Även om du inte bör distribuera den här konfigurationen via offentliga nätverk kan du få följande fördelar genom att fortsätta att stödja HTTP-anslutningar i en kontrollerad nätverksmiljö:
Du kan öka säkerheten för distributionen över tid genom att konfigurera klientdatorer för HTTPS med SSL som ditt schema tillåter. Om du använder en stegvis metod behöver du inte uppgradera alla datorer samtidigt, och användare vars datorer ännu inte har uppgraderats kan fortfarande ansluta till distributionen.
Du kan enklare konfigurera och underhålla Azure DevOps Server.
Anrop från en webbtjänst till en annan går snabbare via HTTP än via HTTPS med SSL. Därför kan du fortsätta att stödja HTTP-anslutningar från klientdatorer för vilka prestandakraven överväger säkerhetsriskerna.
Fördelar med att kräva HTTPS med SSL för alla anslutningar
Om du behöver HTTPS med SSL för alla anslutningar får du följande fördelar:
Alla webbanslutningar mellan programnivån, datanivån och klientnivån för Azure DevOps är säkrare eftersom de kräver certifikat.
Du kan styra åtkomsten enklare genom att konfigurera certifikat som upphör att gälla när en projektfas förväntas avslutas.
Nackdelar med att stödja eller kräva HTTPS med SSL
Innan du konfigurerar Azure DevOps Server för att stödja eller kräva HTTPS med SSL bör du överväga följande nackdelar:
Du kan komplicera pågående administrationsuppgifter. Du kan till exempel behöva konfigurera om distributionen för att sluta stödja HTTPS med SSL innan du kan använda Service Pack eller andra uppdateringar.
Du måste inte bara konfigurera utan även hantera en certifikatutfärdare (CA) och certifikatförtroenden. Du kan använda Certifikattjänster i Windows Server 2003 och Windows Server 2008, men du kanske inte vill investera den tid och de resurser som krävs för att distribuera en säker offentlig nyckelinfrastruktur (PKI).
Du måste ägna mycket tid åt att konfigurera och testa någon av dessa konfigurationer, och det blir svårare att felsöka distributionen.
Om du fortsätter att stödja båda protokollen kanske externa anslutningar inte krypteras om programnivån för Azure DevOps inte är korrekt skyddad.
Om du behöver HTTPS med SSL blir distributionens prestanda långsammare.
Konfigurera din distribution för att stödja eller kräva HTTPS med SSL
Procedurerna i det här avsnittet beskriver en process för att begära, utfärda och tilldela certifikat som krävs för SSL-anslutningar i Azure DevOps Server. Om du använder annan programvara än vad det här avsnittet beskriver kan du behöva utföra olika steg. Om du vill ha stöd för externa anslutningar till din Azure DevOps Server-distribution måste du även aktivera grundläggande autentisering, sammanfattad autentisering eller båda i IIS (Internet Information Services).
Genom att följa procedurerna i det här avsnittet utför du följande uppgifter:
Hämta certifikat för din distribution av Azure DevOps Server och de webbplatser som den använder.
Installera och tilldela certifikaten.
Konfigurera Azure DevOps Server.
Konfigurera Team Foundation Build.
Konfigurera versionshantering för Visual Studio 2013
Konfigurera klientdatorer.
Förutsättningar
Om du vill utföra procedurerna i det här avsnittet måste du först uppfylla följande krav:
De logiska komponenterna i data- och programnivåerna i Azure DevOps måste installeras, men när det gäller själva Azure DevOps Server måste de inte nödvändigtvis konfigureras. Dessa nivåer omfattar IIS, SQL Server och eventuella ytterligare komponenter som du kan ha integrerat, till exempel Team Foundation Build och SQL Server Reporting Services.
Procedurerna i det här avsnittet refererar till den server eller de servrar som kör de logiska komponenterna på program- och datanivåerna för Azure DevOps. Program- och datanivåerna kan köras på samma server eller flera servrar, enligt beskrivningen i installationsguiden för Azure DevOps Server.
Du måste ha en certifikatutfärdare (CA) från vilken du kan utfärda certifikat eller prenumerera på en tredjepartscertifikatutfärdare med en betrodd kedja. Det här avsnittet förutsätter att du använder Certificate Services som certifikatutfärdare, men du kan använda alla certifikatutfärdare som du har konfigurerat för distributionen eller certifikat från en betrodd certifikatutfärdare från tredje part. Om du inte har någon certifikatutfärdare kan du installera Certificate Services och konfigurera en. Mer information finns i någon av följande uppsättningar med dokumentation på Microsofts webbplats:
- För Windows Server 2012: Active Directory Certificate Services
Du måste vara administratör för att konfigurera alla komponenter i distributionen för HTTPS och SSL. Om du arbetar i en distribuerad distribution där olika personer har administratörsbehörighet för enskilda komponenter måste du samordna med dessa personer för att slutföra konfigurationen.
Mer specifikt måste du tillhöra gruppen Team Foundation-administratörer och du måste tillhöra gruppen Administratörer på programnivå, datanivå och Azure DevOps Proxy Server eller servrar för Team Foundation.
Om du vill konfigurera en byggserver måste du tillhöra gruppen Administratörer på servern.
Om du vill konfigurera Versionshantering måste du tillhöra gruppen Administratörer på servern som är värd för Versionshanteringsservern och vara medlem i rollen Release Manager i Versionshantering.
Om distributionen använder rapportering måste du vara medlem i en administrativ säkerhetsgrupp eller ha motsvarande behörigheter individuellt inställda för att konfigurera Reporting Services.
Mer information om behörigheter finns i Behörighetsreferens för Azure DevOps Server.
Antaganden
Procedurerna i det här avsnittet förutsätter att följande villkor är sanna:
Datanivå- och programnivåservern eller -servrarna har installerats och distribuerats i en säker miljö och konfigurerats enligt bästa praxis för säkerhet.
Du är bekant med hur du konfigurerar och hanterar PKIs och begär, utfärdar och tilldelar certifikat.
Du har en fungerande kunskap om nätverkstopologin i utvecklingsmiljön och du är bekant med att konfigurera nätverksinställningar, IIS och SQL Server.
Hämta ett certifikat
Innan du konfigurerar Azure DevOps Server att använda HTTPS med SSL måste du skaffa och installera ett servercertifikat för servrarna i distributionen. För att få ett servercertifikat måste du installera och konfigurera din egen certifikatutfärdare, eller så måste du använda en certifikatutfärdare från en extern organisation som du litar på (tredjepartscertifikat).
Mer information om hur du installerar en certifikatutfärdare finns i följande avsnitt på Microsofts webbplats:
För Windows Server 2012: Distribuera en AD CS-Two-Tier PKI-hierarki
För Windows Server 2008: Active Directory Certificate Services och hantering av offentliga nycklar
Begära, installera och konfigurera webbplatser med ett certifikat
När du har registrerat dig i en certifikatutfärdare måste du antingen begära ett certifikat med hjälp av IIS Manager, eller så måste du installera certifikatet manuellt på var och en av följande servrar i distributionen:
- Varje programnivåserver.
- Varje server som kör Azure DevOps Proxy Server, om någon är konfigurerad för din implementering.
- Varje server som kör Team Foundation Build Service som antingen en byggcontroller eller en byggagent, om någon är konfigurerad för din distribution.
- Servern som kör Reporting Services, om en är konfigurerad för implementeringen.
Dessutom måste klientdatorerna i distributionen registreras i certifikatkedjan och begära det nödvändiga certifikatet. Om du använder Versionshantering omfattar detta alla datorer som kör Versionshanteringsklienten, samt alla klienter¹ som kör distributionsagenten i dina versionsmiljöer. Om ett eller flera av dina projekt använder Git för versionskontroll måste användare i dessa projekt också konfigurera Git på sina datorer för att identifiera och använda klientcertifikatet. Information om hur du begär ett klientcertifikat från en specifik certifikatutfärdare finns i dokumentationen för certifikatutfärdare.
¹ Klienter och servrar anropas separat här, men det är bara en konvention i det här dokumentet. Alla datorer som kör distributionsagenten behöver certifikatet installerat.
Öppna IIS-hanteraren (Internet Information Services).
Expandera servern, navigera till Servercertifikat och skapa och slutför din certifikatbegäran.
Mer information finns i Konfigurera servercertifikat i IIS.
Importera certifikatet.
Nu måste du konfigurera varje webbplats som kräver det här certifikatet med lämpliga inställningar (med undantag för webbplatsen Versionshantering som du kommer att konfigurera senare). Mer specifikt måste du göra detta för var och en av följande webbplatser:
- Standardwebbplats
- Azure DevOps Server
- Azure DevOps Server Proxy (om distributionen använder den)
Öppna IIS-hanteraren (Internet Information Services) på varje server som är värd för en webbplats som du vill konfigurera.
Expandera ComputerName, expandera Platser, öppna undermenyn för den webbplats som du vill konfigurera (till exempel Azure DevOps Server) och välj sedan Bindningar i fönstret Åtgärder.
I Webbplatsbindningar väljer du Lägg till.
Dialogrutan Lägg till webbplatsbindning visas.
I listan Typ väljer du https.
I Port skriver du ett annat portnummer.
Viktigt!
Standardportnumret för SSL-anslutningar är 443, men du måste tilldela ett unikt portnummer för var och en av följande platser: Standardwebbplats, Azure DevOps Server och Azure DevOps Server Proxy (om distributionen använder den). Du bör registrera SSL-portnumret för varje webbplats som du konfigurerar. Du måste ange dessa nummer i administrationskonsolen för Azure DevOps.
I SSL-certifikat väljer du det certifikat som du importerade och väljer sedan OK och stänger sidan Bindningar.
Öppna vyn Funktionerpå startsidan för den webbplats som du konfigurerar.
Under IIS väljer du Autentisering.
Välj en autentiseringsmetod som du vill konfigurera, öppna dess undermeny och aktivera, inaktivera eller utföra ytterligare konfiguration på metoden, så att den bäst uppfyller dina säkerhetsbehov. Om du till exempel vill inaktivera anonym autentisering väljer du metoden Anonym autentisering och väljer Inaktivera på menyn Åtgärder.
Starta om webbtjänsterna när konfigurationen är klar.
Konfigurera brandväggen
Du måste konfigurera brandväggen för att tillåta trafik via de SSL-portar som du precis angav i IIS. Mer information finns i dokumentationen för brandväggen.
Viktigt!
Se till att testa trafiken på de portar som du har angett från en annan dator. Om du inte kan komma åt standardwebbplatsen eller webbportalen dubbelkollar du portinställningarna som du har angett för dessa webbplatser i IIS och kontrollerar att brandväggen är korrekt konfigurerad för att tillåta trafik på dessa portar.
Konfigurera SQL Server Reporting Services
Om din distribution använder rapportering måste du konfigurera SQL Server Reporting Services för att stödja HTTPS med SSL och använda den port som du angav i IIS för Azure DevOps Server. Annars fungerar inte rapportservern korrekt för din distribution. Mer information finns i Konfigurera en rapportserver för SSL-anslutningar (Secure Sockets Layer).
Tips/Råd
Om distributionen inte använder rapportering kan du hoppa över den här proceduren.
Konfigurera HTTPS för Azure DevOps Server
Följ de här stegen för att konfigurera din Azure DevOps Server-distribution med DE HTTPS-portar och värden som du konfigurerade i IIS för standard- och Azure DevOps Server-webbplatserna.
Konfigurera om Azure DevOps Server så att den använder eller kräver HTTPS
Öppna administrationskonsolen för Azure DevOps och bläddra till noden på programnivå.
I Sammanfattning av programnivå väljer du Ändra URL:er.
Fönstret Ändra URL:er öppnas.
I Meddelande-URL skriver du den HTTPS-URL som du konfigurerade för Azure DevOps Server-webbplatsen i IIS.
Du kan till exempel ha konfigurerat webbplatsen att använda port 444. I det här fallet skriver du https:// ServerName:444/tfs. Kontrollera att du använder det fullständigt kvalificerade domännamnet för servern i stället för localhost.
Välj Test. Välj inte OK om testet inte godkänns. Gå tillbaka och se till att du har angett rätt URL och portinformation, att alla brandväggar är konfigurerade för att tillåta trafik på dessa portar och att platsen är tillgänglig och körs i IIS Manager.
Om du vill kräva HTTPS väljer du Använd i server-URL och skriver sedan den HTTPS-URL som du konfigurerade för Azure DevOps Server-webbplatsen.
Kontrollera att du använder det fullständigt kvalificerade domännamnet för servern i stället för localhost.
Välj Test och välj sedan OK om testet godkänns.
Om distributionen använder Reporting Services väljer du Rapportering i administrationskonsolen. Annars hoppar du över resten av den här proceduren.
I Rapportering väljer du Redigera.
Om dialogrutan Ta offline öppnas väljer du OK.
Fönstret Rapportering öppnas.
Välj fliken Rapporter . I URL:er för rapportserver skriver du HTTPS-URL:er för webbtjänsten och rapporthanteraren och väljer sedan OK.
Testa åtkomsten till din utbyggnad
Du bör testa om ändringarna fungerar som förväntat. Det här steget är valfritt men rekommenderas starkt.
Testa åtkomsten till din utplacering
Öppna en webbläsare på en dator som inte är värd för programnivån och gå till teamets startsida.
Kontrollera om du kan komma åt dina team och projekt från webbportalen, inklusive administrationssidorna.
Om du inte kan komma åt distributionen via webbportalen granskar du de steg som du just har slutfört och kontrollerar att du har gjort alla konfigurationsändringar korrekt.
Konfigurera distributionen för att kräva HTTPS med SSL (valfritt)
Du kan kräva att alla anslutningar till Azure DevOps Server-programnivån använder HTTPS med SSL. Den här ytterligare säkerheten är valfri men rekommenderas.
Så här kräver du SSL-anslutningar
På den server som är värd för den webbplats som du vill konfigurera väljer du Start, Administrationsverktyg och sedan IIS-hanteraren (Internet Information Services).
Följ lämpliga steg för din version av IIS:
För distributioner som använder IIS 7.0:
Expandera ComputerName, expandera Webbplatser och välj sedan den webbplats som du vill konfigurera.
På startsidan för webbplatsen väljer du SSL-inställningar.
I fönstret SSL-inställningar markerar du kryssrutan Kräv SSL .
(Valfritt) Markera kryssrutan Kräv 128-bitars SSL .
I Klientcertifikat väljer du Ignorera, Acceptera eller Kräv, beroende på säkerhetskraven för distributionen.
I Åtgärder väljer du Använd.
Upprepa de här stegen för varje webbplats som du vill kräva SSL för.
Installera certifikatet på byggservrar
Om du har installerat Team Foundation Build Service på en eller flera servrar måste du installera certifikatet i arkivet Betrodda rotcertifikatutfärdare för varje server. Mer information finns i Hämta ett certifikat och begära, installera och konfigurera webbplatser med ett certifikat tidigare i det här avsnittet. Både kontrollanten och agenten kräver ett certifikat med en privat nyckel som du kan identifiera sig med i HTTPS-anslutningar.
Anmärkning
För att kunna utföra byggen via SSL måste certifikatet installeras i det betrodda rotarkivet på både byggkontrollenheten och byggagenten.
Uppdatera byggkonfigurationer
För att konfigurera Team Foundation Build for SSL-anslutningar måste du konfigurera byggtjänsten så att den använder HTTPS-URL:en som du konfigurerade för programnivån och samlingen som byggkonfigurationen stöder. Du måste konfigurera den här URL:en för varje byggkonfiguration i distributionen.
Så här ändrar du en byggkonfiguration så att den använder HTTPS
Öppna administrationskonsolen för Team Foundation på den server som är värd för den byggkonfiguration som du vill konfigurera.
Under Team Foundation expanderar du namnet på servern och väljer sedan Skapa konfiguration.
Fönstret Byggkonfiguration visas.
Under tjänstkonfigurationen väljer du Stoppa och sedan Egenskaper.
Dialogrutan Egenskaper för byggtjänsten öppnas.
I Kommunikation kontrollerar du att URL:en för projektsamlingen använder rätt HTTPS-adress och fullständigt servernamn.
I Slutpunkten för lokal byggtjänst (inkommande) väljer du Ändra.
Dialogrutan Skapa tjänstslutpunkt öppnas.
I Slutpunktsinformation kontrollerar du att portnumret matchar konfigurationsinformationen.
I Protokoll väljer du HTTPS.
I listan SSL-certifikat väljer du det certifikat som du har installerat och konfigurerat för användning med den här distributionen och väljer sedan OK.
I dialogrutan Egenskaper för byggtjänsten väljer du Start.
Konfigurera klientdatorer
På varje klientdator som användarna har åtkomst till Azure DevOps från måste du installera certifikatet lokalt och rensa klientcachen för alla användare som har åtkomst till Azure DevOps från den datorn. Annars kan användarna inte ansluta till Azure DevOps från den datorn. Mer information finns i Hantera betrodda rotcertifikat.
Viktigt!
Följ inte den här proceduren för datorer som kör både Azure DevOps Server och en eller flera klienter i Azure DevOps.
Så här installerar du certifikatet på en klientdator
Logga in på datorn med hjälp av ett konto som tillhör gruppen Administratörer på datorn.
Installera certifikatet i mappen Betrodda rotcertifikatutfärdare för den lokala datorn.
Rensa cacheminnet på en klientdator
Logga in på datorn med autentiseringsuppgifterna för den användare vars cacheminne du vill rensa.
Stäng alla öppna instanser av Visual Studio.
Öppna följande mapp i ett webbläsarfönster:
Drive:\Users\UserName\AppData\Local\Microsoft\Team Foundation\4.0\Cache
Ta bort innehållet i cachekatalogen. Se till att du tar bort alla undermappar.
Välj Start, välj Kör, skriv devenv /resetuserdata och välj sedan OK.
Upprepa de här stegen för kontot för varje användare som har åtkomst till Team Foundation från den datorn.
Anmärkning
Du kanske vill distribuera instruktioner för att rensa cacheminnet till alla dina Azure DevOps-användare så att de kan rensa cacheminnena själva.
Ansluta klientdatorer till den omkonfigurerade distributionen
I Visual Studio ansluter du till Azure DevOps Server med hjälp av den nya HTTPS-URL:en.
Mer information finns i Ansluta till projekt i Azure DevOps Server.
Konfigurera Git
Som standard kan projekt som använder Git för versionskontroll inte verifiera det SSL-certifikat som du har konfigurerat för Azure DevOps Server. Det beror på att Git till skillnad från Azure DevOps Server och Visual Studio inte känner igen Windows-certifikatarkivet. I stället använder den OpenSSL för sitt certifikatarkiv. För att kunna använda en Git-lagringsplats för projekt som konfigurerats med SSL måste du konfigurera Git med certifikatet i roten i certifieringskedjan för din TFS 2013-distribution. Det här är en klientkonfigurationsuppgift som endast gäller för Git-lagringsplatsprojekt.
Mer information om hur Git-nätverksåtgärder fungerar i Visual Studio 2013 finns i det här blogginlägget.
Tips/Råd
För andra git-autentiseringsuppgifter, till exempel Windows-autentisering, bör du överväga att ladda ned och installera Windows Credential Store för Git.
Så här konfigurerar du certifikatarkivet för Git
Logga in på datorn med hjälp av ett konto som tillhör gruppen Administratörer på datorn.
Kontrollera att det nödvändiga certifikatet har installerats och konfigurerats på datorn enligt ovan.
Extrahera rotscertifikatet för Azure DevOps Server som en base64-kodad X.509 CER/PEM-fil i din stödda webbläsare.
Skapa en privat kopia av Git-rootcertifikatlager och lägg till det i din privata användarkopia av lagret.