Konfigurera säkerhetsinställningar för hanterade DevOps-pooler
Artikel
Du kan konfigurera säkerhetsinställningen för Hanterade DevOps-pooler när poolen skapas med hjälp av fliken Säkerhet och när poolen har skapats med hjälp av fönstret Säkerhetsinställningar .
Konfigurera organisationsåtkomst
Som standard konfigureras Hanterade DevOps-pooler för en enda organisation, med åtkomst till poolen som beviljats till alla projekt i organisationen. Du kan också begränsa åtkomsten till specifika projekt i organisationen och du kan ge åtkomst till ytterligare organisationer om så önskas.
Som standard konfigureras Hanterade DevOps-pooler för användning med en enda Azure DevOps-organisation som du anger när du skapar poolen. När din pool har konfigurerats för en enskild organisation visas och konfigureras organisationsnamnet i Poolinställningar
Som standard är Lägg till pool i alla projekt inställt på Ja, och åtkomst till den hanterade DevOps-poolen beviljas till alla projekt i organisationen. Välj Nej om du vill ange en lista över projekt för att begränsa vilka projekt i din organisation som kan använda poolen.
Organisationer konfigureras i organizationProfile egenskapen för resursen Hanterade DevOps-pooler.
Avsnittet organizationProfile har följande egenskaper.
Property
beskrivning
organizations
En lista över de organisationer som kan använda din pool. url anger organisationens URL, projects är en lista över projektnamn som kan använda poolen (en tom lista stöder alla projekt i organisationen) och parallelism anger antalet agenter som kan användas av den här organisationen. Summan av parallelliteten för organisationerna måste matcha inställningen för maximala agenter för poolen.
permissionProfile
Ange behörigheten som beviljas till Azure DevOps-poolen när den skapas. Det här värdet kan endast anges när poolen skapas. Tillåtna värden är Inherit, CreatorOnlyoch SpecificAccounts. Om specificAccounts anges anger du en enskild e-postadress eller en lista med e-postadresser för users egenskapen. Annars utelämnar du users. Mer information finns i Behörigheter för pooladministration.
kind
Det här värdet anger typen av organisation för poolen och måste anges till Azure DevOps.
Organisationer konfigureras i parametern organization-profile när du skapar eller uppdaterar en pool.
az mdp pool create \
--organization-profile organization-profile.json
# other parameters omitted for space
I följande exempel visas ett organization-profile objekt som har konfigurerats för alla projekt i fabrikam-tailspin organisationen med parallelism inställt på 1.
Avsnittet organizationProfile har följande egenskaper.
Property
beskrivning
AzureDevOps
Det här värdet är namnet på objektet som definierats i organization-profile och måste anges till Azure DevOps.
organizations
En lista över de organisationer som kan använda din pool. url anger organisationens URL, projects är en lista över projektnamn som kan använda poolen (en tom lista stöder alla projekt i organisationen) och parallelism anger antalet agenter som kan användas av den här organisationen. Summan av parallelliteten för organisationerna måste matcha inställningen för maximala agenter för poolen.
permissionProfile
Ange behörigheten som beviljas till Azure DevOps-poolen när den skapas. Det här värdet kan endast anges när poolen skapas. Tillåtna värden är Inherit, CreatorOnlyoch SpecificAccounts. Om specificAccounts anges anger du en enskild e-postadress eller en lista med e-postadresser för users egenskapen. Annars utelämnar du users. Mer information finns i Behörigheter för pooladministration.
Aktivera Använd pool i flera organisationer för att använda din pool med flera Azure DevOps-organisationer. För varje organisation anger du de projekt som tillåts använda poolen eller lämnar tomma för att tillåta alla projekt. Konfigurera parallelliteten för varje organisation genom att ange vilka delar av samtidigheten som anges av Maximalt antal agenter för poolen för att allokera till varje organisation. Summan av parallelliteten för alla organisationer måste vara lika med poolens maximala samtidighet. Om maximalt antal agenter till exempel är inställt på fem måste summan av parallelliteten för de angivna organisationerna vara fem. Om Maximalt antal agenter är inställt på en kan du bara använda poolen med en organisation.
I följande exempel är poolen konfigurerad för att vara tillgänglig för fabrikamResearch - och FabrikamTest-projekten i fabrikam-tailspin-organisationen och för alla projekt i den fabrikamblå organisationen.
Om du får ett fel som The sum of parallelism for all organizations must equal the max concurrency.kontrollerar du att maximalt antal agenter för poolen matchar summan av kolumnen Parallellitet .
Lägg till ytterligare organisationer i organisationslistan för att konfigurera poolen för användning med flera organisationer. I följande exempel har två organisationer konfigurerats. Den första organisationen är konfigurerad för att använda Hanterade DevOps-pooler för alla projekt, och den andra organisationen är begränsad till två projekt. I det här exemplet är inställningen för maximala agenter för poolen fyra och varje organisation kan använda två av dessa fyra agenter.
Organisationer konfigureras i parametern organization-profile när du skapar eller uppdaterar en pool.
az mdp pool create \
--organization-profile organization-profile.json
# other parameters omitted for space
Lägg till ytterligare organisationer i organisationslistan för att konfigurera poolen för användning med flera organisationer. I följande exempel har två organisationer konfigurerats. Den första organisationen är konfigurerad för att använda Hanterade DevOps-pooler för alla projekt, och den andra organisationen är begränsad till två projekt. I det här exemplet är inställningen för maximala agenter för poolen fyra och varje organisation kan använda två av dessa fyra agenter.
Om dina tester behöver en interaktiv inloggning för gränssnittstestning aktiverar du interaktiv inloggning genom att aktivera inställningen EnableInteractiveMode .
Interaktivt läge konfigureras i osProfile avsnittet i fabricProfile egenskapen. Ange logonType till Interactive för att aktivera interaktivt läge eller Service för att inaktivera interaktivt läge.
Som en del av processen för att skapa en hanterad DevOps-pool skapas en agentpool på organisationsnivå i Azure DevOps. Inställningen Behörigheter för pooladministration anger vilka användare som beviljas administratörsrollen för den nyligen skapade Azure DevOps-poolen. Information om hur du visar och hanterar behörigheter för Azure DevOps-agentpoolen när den hanterade DevOps-poolen har skapats finns i Skapa och hantera agentpooler – Säkerhet för agentpooler.
Endast skapare – Användaren som skapade den hanterade DevOps-poolen läggs till som administratör för Azure DevOps-agentpoolen och Arv är inställt på Av i säkerhetsinställningarna för agentpoolen. Skapare är bara standardinställningen.
Ärv behörigheter från projektet – Användaren som skapade den hanterade DevOps-poolen läggs till som administratör för Azure DevOps-agentpoolen och Arv är inställt på På i säkerhetsinställningarna för agentpoolen.
Specifika konton – Ange vilka konton som ska läggas till som administratörer för den skapade agentpoolen i Azure DevOps. Som standard läggs skaparen av Managed DevOps-poolen till i listan.
Kommentar
Inställningen Behörigheter för pooladministration konfigureras på fliken Säkerhet när poolen skapas och visas inte i säkerhetsinställningarna när poolen har skapats. Information om hur du visar och hanterar behörigheter för Azure DevOps-agentpoolen när den hanterade DevOps-poolen har skapats finns i Skapa och hantera agentpooler – Säkerhet för agentpooler.
Behörigheter för pooladministration konfigureras i egenskapen för permissionsProfile avsnittet för resursen organizationProfile Hanterade DevOps-pooler.
Egenskapen permissionProfile kan endast anges när poolen skapas. Tillåtna värden är Inherit, CreatorOnlyoch SpecificAccounts.
CreatorOnly– Användaren som skapade den hanterade DevOps-poolen läggs till som administratör för Azure DevOps-agentpoolen och Arv är inställt på Av i säkerhetsinställningarna för agentpoolen. Skapare är bara standardinställningen.
Inherit– Användaren som skapade den hanterade DevOps-poolen läggs till som administratör för Azure DevOps-agentpoolen och Arv är inställt på På i säkerhetsinställningarna för agentpoolen.
SpecificAccounts – Ange de konton som ska läggas till som administratörer för den skapade agentpoolen i Azure DevOps. Som standard läggs skaparen av Managed DevOps-poolen till i listan. Ange en enda e-postadress eller en lista med e-postadresser för users egenskapen. Annars utelämnar du users.
Egenskapen permissionProfile kan endast anges när poolen skapas. Tillåtna värden är Inherit, CreatorOnlyoch SpecificAccounts.
CreatorOnly– Användaren som skapade den hanterade DevOps-poolen läggs till som administratör för Azure DevOps-agentpoolen och Arv är inställt på Av i säkerhetsinställningarna för agentpoolen. Skapare är bara standardinställningen.
Inherit– Användaren som skapade den hanterade DevOps-poolen läggs till som administratör för Azure DevOps-agentpoolen och Arv är inställt på På i säkerhetsinställningarna för agentpoolen.
SpecificAccounts – Ange de konton som ska läggas till som administratörer för den skapade agentpoolen i Azure DevOps. Som standard läggs skaparen av Managed DevOps-poolen till i listan. Ange en enda e-postadress eller en lista med e-postadresser för users egenskapen. Annars utelämnar du users.
Hanterade DevOps-pooler ger möjlighet att hämta certifikat från ett Azure Key Vault under etableringen, vilket innebär att certifikaten redan finns på datorn när de kör dina Azure DevOps-pipelines. Om du vill använda den här funktionen måste du konfigurera en identitet i poolen, och den här identiteten måste ha behörighet som Key Vault-hemligheter för att hämta hemligheten från ditt Key Vault. Information om hur du tilldelar din identitet till rollen Key Vault-hemligheter finns i Ge åtkomst till Key Vault-nycklar, certifikat och hemligheter med en rollbaserad åtkomstkontroll i Azure.
Kommentar
api-version 2024-10-19Från och med , om du använder den här funktionen kan du bara använda en enda identitet i poolen. Stöd för flera identiteter kommer snart att läggas till.
Endast en identitet kan användas för att hämta hemligheter från Key Vault.
Key Vault-integrering konfigureras i Inställningar > Säkerhet.
Kommentar
Integreringsinställningar för Key Vault kan bara konfigureras när poolen har skapats. Inställningar för Key Vault-integrering kan inte konfigureras när poolen skapas och visas inte på fliken Säkerhet när poolen skapas.
Azure Key Vault konfigureras i osProfile avsnittet i fabricProfile egenskapen. secretManagementSettings Ange för att kunna komma åt önskat certifikat.
Azure Key Vault konfigureras i osProfile avsnittet i fabricProfile egenskapen när du skapar eller uppdaterar en pool. secretManagementSettings Ange för att kunna komma åt önskat certifikat.
az mdp pool create \
--fabric-profile fabric-profile.json
# other parameters omitted for space
I följande exempel visas avsnittet osProfile i filen fabric-profile.json med secretsManagementSettingskonfigurerad.
Certifikat som hämtas med hjälp av SecretManagementSettings på din pool synkroniseras automatiskt med de senaste versionerna som publicerats i Key Vault. Dessa hemligheter kommer att finnas på datorn när den kör en Azure DevOps-pipeline, vilket innebär att du kan spara tid och ta bort uppgifter för att hämta certifikat.
Viktigt!
Etableringen av dina virtuella agentdatorer misslyckas om hemligheten inte kan hämtas från Key Vault på grund av ett behörighets- eller nätverksproblem.
För Windows tillåts certifikatarkivets plats antingen vara inställd på LocalMachine eller CurrentUser. Den här inställningen säkerställer att hemligheten är installerad på den platsen på datorn. Mer information om hur hemlig hämtning fungerar finns i dokumentationen för Azure VMSS Key Vault-tillägget för Windows.
För Linux kan platsen för certifikatarkivet vara vilken katalog som helst på datorn och certifikaten laddas ned och synkroniseras till den platsen. Information om standardinställningar och hemligt beteende finns i dokumentationen för Azure VMSS Key Vault-tillägget för Linux.