Ändra projektsynlighet till offentlig eller privat
Azure DevOps Services
I den här artikeln får du lära dig hur du ändrar synligheten för projektet till offentlig eller privat.
När du växlar ett privat projekt till offentlig synlighet omfattar det allt dess innehåll. Det går inte att selektivt hålla vissa lagringsplatser, områdessökvägar eller byggmappar privata.
Åtkomsten är begränsad för användare som inte är inloggade, ofta kallade anonyma eller offentliga användare. Det finns också användare som är inloggade i Azure DevOps men inte ingår i ett projekt. Båda dessa användarkategorier ges begränsad, skrivskyddad åtkomst enligt beskrivningen i följande tabell.
När du byter ett privat projekt till offentligt får alla projektmedlemmar följande ändringar:
- Behörigheter som är märkta Neka känns inte igen. Behörigheterna som automatiskt ges till en icke-medlem anger en minsta nivå av funktioner som kan tilldelas till alla projektmedlemmar.
- Om en bygg-pipeline är inställd på Project Collection-omfånget körs den med ett Projektomfång i stället, vilket minskar risken för att skadliga användare får åtkomst till byggtjänstens autentiseringstoken.
- Intressenter har fullständig åtkomst till funktioner för lagringsplatser eller kod i offentliga projekt, men har ingen åtkomst till privata projekt.
- Intressenter har fullständig åtkomst till styrelser eller arbete i offentliga projekt, men endast delvis åtkomst i privata projekt. Mer information finns i Snabbreferens för intressentåtkomst.
- Basic + Test Plans-användare kan visa och köra tester från testplaner eller test. Grundläggande användare måste uppgradera sin åtkomstnivå till Basic + Test Plans för att få fullständig åtkomst, vilket inkluderar funktioner för att skapa testplaner och lägga till testfall.
Hubb/Inställningar | Åtkomst som inte är medlem | Intressentåtkomst | Grundläggande åtkomst | Läsåtkomst | Deltagaråtkomst | Projektadministratörsåtkomst |
---|---|---|---|---|---|---|
Instrumentpaneler | läs (många widgetar är inte tillgängliga) | Partiell | fullständig | läsa | läs-skriva | read-write-admin |
Wiki | läsa | fullständig | fullständig | läsa | läs-skriva | read-write-admin |
Tavlor (arbete) | läsa | Partiell | fullständig | läsa | läs-skriva | read-write-admin |
Lagringsplatser (kod) | läsa | fullständig | fullständig | läsa | läs-skriva | read-write-admin |
Pipelines (Build and Release) | läsa | fullständig | fullständig | läsa | läs-skriva | Läs-skriv-administrera |
Testplaner | ingen åtkomst | ingen åtkomst | partiell åtkomst (se den sista punkten före tabellen) | läsa | läs-skriva | Läs-skriv-administrera |
Aviseringar | ingen åtkomst | Fullständig | Fullständig | Läsa | läs-skriva | read-write-admin |
Sök | fullständig | fullständig | fullständig | fullständig | fullständig | fullständig |
Inställningar | Ingen behörighet | Fullständig | Fullständig | Lästa | Läsa | Läs-skriv-administrera |
Förutsättningar
- Du måste ha en organisation i Azure DevOps.
- Du måste vara medlem i gruppen Projektsamlingsadministratörer. Organisationsägare är automatiskt medlemmar i den här gruppen.
- Förstå åtkomstnivåer och otillgängliga funktioner för offentliga projekt.
- Tänk på alternativ för partiell migrering.
- Granska objekt i checklistan för migrering.
Checklista för migrering
De flesta privata projekt innehåller en stor mängd historiska data. Gamla arbetsobjekt, tidiga incheckningar och tidigare byggpipelines kan innehålla information som du inte vill dela offentligt.
Följande checklista anger de objekt som du kanske vill granska innan du gör ett projekt offentligt. Den innehåller också tips för att migrera arbetsobjekt eller filer till ett nytt projekt så att du bara kan exponera aktuellt och framtida innehåll.
Kategori
Vägledning
Organisationsidentiteter och inställningar
Förstå att en användare får åtkomst till följande resurser och information om organisationen:
- Identiteter: Lista över alla medlemmar som lagts till i organisationen och e-postadressen för varje medlem.
- Inställningar: Skrivskyddad vy över alla organisations- och projektinställningar.
- Bearbeta metadata: Alla listvärden i alla projekt i organisationen.
- Versioner och versioner: Namn på personer som utlöste dem, plus identiteter, inklusive e-postadresser som är inbäddade i Git-incheckningar.
- Incheckningar och arbetsobjekt: Inbäddad information, till exempel förnamn, efternamn och e-postadress.
Objektlänkar mellan projekt
Kontrollera om det finns länkar mellan projekt, eftersom information om den länkade artefakten i det privata projektet visas i det offentliga projektet. Du kan använda följande länktyper: branch, build, changeset, commit, found in build, integrated in build, pull request och versionshanterat objekt. Rubriker och namn visas i följande länktyper: versionsobjekt, gren, wiki-sida, pull-begäran och arbetsobjekt.
Agila verktyg och arbetsobjekt
Bekräfta att dina arbetsobjekt, även stängda, inte innehåller känslig information: hemliga säkerhetsbrister, autentiseringsuppgifter och kunddata. Arbetsobjekt behåller sin historik när de migreras från ett privat till offentligt projekt. Alla diskussioner och beskrivningar är tillgängliga. Kontrollera att ingen innehåller problematiskt tal.
Bekräfta att ingen av dina områdessökvägar har särskilda, låsta säkerhetsinställningar. Nekade behörigheter tillämpas inte i ett offentligt projekt, så sökvägar för begränsade områden blir offentliga.
Code
Bekräfta att du inte har någon känslig information i lagringsplatsernas historik: okopplade säkerhetsbuggar, autentiseringsuppgifter och kod som du inte har rätt att distribuera.
Alla filinnehåll och incheckningsmeddelanden är tillgängliga. Kontrollera att ingen innehåller problematiskt tal. Om du inte är bekväm med att exponera en hel lagringsplats kan du migrera tipset till ett annat projekt. Mer information finns i Instruktioner för en tipsmigrering.
Skapa och släppa
Bekräfta att ingen av dina pipelines exponerar känsliga data: autentiseringsuppgifter/hemligheter, dolda URL:er och privata miljönamn.
Bekräfta att icke-medlemmar inte behöver åtkomst till dina privata feeds. Versioner kan fortfarande komma åt feeds, men icke-medlemmar kan inte. Om du behöver migrera byggpipelines till ett nytt projekt kan du importera och exportera dem med YAML.
Testa
Förstå att funktionerna för manuell belastningstestning och molnbelastning inte är tillgängliga för icke-medlemmar i ett offentligt projekt.
Analys och instrumentpaneler
Överväg att skapa en instrumentpanel avsedd för allmänheten. Vissa widgetar är inte tillgängliga för icke-medlemmar.
Artefakter
Bekräfta att inget av paketen i någon av feeds som är begränsade till projektet har sekretessproblem. Alla paket i feeds som är begränsade till projektet blir offentliga. Alla befintliga överordnade inställningar för feeds som är begränsade till projektet inaktiveras när projektet blir offentligt.
Tillägg
Bekräfta om det finns några tillägg som är viktiga för projektets upplevelse. Har du till exempel en kontroll över arbetsobjektsformuläret som återger data på ett visst sätt? Finns det anpassade tillägg som visar viktig information?
Bekräfta att varje tilläggsförfattare gjorde det tillgängligt för icke-medlemmar genom att testa det. Om inte ber du tilläggsförfattaren att lägga till stöd för icke-medlemmar.
1. Aktivera anonym åtkomst till projekt
Innan du kan ändra ett privat projekt till ett offentligt projekt måste du aktivera anonym åtkomst för din organisation.
Logga in på din organisation (
https://dev.azure.com/{yourorganization}
).Välj Organisationsinställningar.
Välj Principer och sedan På säkerhetsprincipen Tillåt offentliga projekt .
2. Ange projektsynlighet
Logga in på projektet (
https://dev.azure.com/{YourOganization}{YourProject}
).Välj Projektinställningar>Översikt> listrutan Synlighet, välj Offentlig eller Privat och sedan Spara.
Åtkomstnivåer och otillgängliga funktioner för offentliga projekt
En projektmedlem har åtkomst till funktioner baserat på den tilldelade åtkomstnivån. Icke-medlemmar/offentliga användare beviljas begränsad åtkomst automatiskt. Om du vill bidra till ett offentligt projekt måste du läggas till som medlem i projektet och tilldelas åtkomst till antingen Intressent, Grundläggande eller Grundläggande + Testplaner. Åtkomstnivåer avgör vilka användargränssnitt du kan komma åt. Säkerhetsgruppen som du har tilldelats avgör vilka funktioner du kan använda. Mer information finns i Om åtkomstnivåer.
Du lägger till projektmedlemmar på samma sätt som för privata projekt. Se till att du förstår vad det innebär att bjuda in en extern användare att ha åtkomst till projektet. Om du har skapat projektet tilldelas du automatiskt till gruppen Projektadministratörer.
Följande användargränssnittselement är dolda för icke-medlemmar.
Tjänst
Dolda gränssnittselement
Anslagstavlor
Arbetsobjekt är tillgängliga, men kvarvarande uppgifter, tavlor, sprintar, frågor och planer är dolda.
Repos
Lagringsplatserna för Team Foundation Version Control (TFVC) är dolda.
Pipelines
Versioner och versioner är tillgängliga, men bibliotek, aktivitetsgrupper, distributionsgrupper, paket och XAML-byggsystem är dolda. Pipeline- och uppgiftsredigerare för bygg- och versionspipelines är inte tillgängliga. Endast den nya sidan Versioner, som finns i offentlig förhandsversion, är tillgänglig.
Test Plans
Testplaner och tillhörande funktioner för manuell och molnbaserad belastningstestning är dolda.
Rapporter
Analysvyer är dolda och Analytics OData-flödet stöds inte för icke-medlemmar. Power BI-integrering stöds i allmänhet inte.
Inställningar
Inställningar och administrativa sidor är dolda.
Icke-medlemmar kan inte utföra följande uppgifter:
- Redigera eller skapa artefakter, till exempel filer, arbetsobjekt och pipelines
- Favorit och följ befintliga artefakter
- Visa projektmedlemmars e-postadresser och annan kontaktinformation; nonmembers kan bara se namn och bild. Filtrera även listor över artefakter efter identitet
- Växla mellan två offentliga projekt i samma organisation. icke-medlemmar måste gå direkt till ett offentligt projekt med hjälp av en URL
- Utföra kod- eller arbetsobjektsökningar i en organisation
Partiell migrering
Om din organisation innehåller känsligt material bör du inte aktivera principen för offentliga projekt. Vi rekommenderar att du skapar en helt separat organisation som värd för dina offentliga projekt.
Flytta arbetsobjekt till ett privat projekt
Om några arbetsobjekt är känsliga kan du flytta dem till ett separat privat projekt. Länkar mellan projekt fortsätter att fungera för medlemmar, men icke-medlemmar har inte åtkomst till innehållet eftersom det finns i ett privat projekt.
Om du har ett stort antal känsliga arbetsobjekt bör du överväga att hålla det aktuella projektet privat. Skapa i stället ett nytt offentligt projekt i en annan organisation. Du kan migrera arbetsobjekt med hjälp av öppen källkod WiMigrator som underhålls av Microsoft.
Migrera endast Git-tips
Om en lagringsplats inte kan delas på grund av problematisk historik kan du överväga att utföra en migrering med endast tips till en ny lagringsplats i ett annat projekt. Håll projektet som innehåller den problematiska lagringsplatsen privat. Skapa den nya lagringsplatsen i ett projekt som du inte har något emot att offentliggöra.
Varning
- Den nya lagringsplatsen ansluter inte till den gamla.
- Du kan inte enkelt migrera ändringar mellan dem i framtiden.
- Historiken för pull-begäran migreras inte.
- Klona den befintliga lagringsplatsen:
git clone <clone_URL>
. - Kontrollera att du är i roten på lagringsplatsen:
cd <reponame>
. - Se till att du är på toppen av den gren som du vill börja från:
git checkout main
. - Ta bort Git-data:
rmdir /s .git
i Windows,rm -rf .git
i macOS eller Linux. - Initiera en ny Git-lagringsplats:
git init
. - Skapa en ny, tom lagringsplats i ditt offentliga projekt.
- Lägg till den nya lagringsplatsen som din ursprungsfjärr:
git remote add origin <new_clone_URL>
. - Push-överför din nya lagringsplats:
git push --set-upstream origin main
.