Dowiedz się, jak skonfigurować ustawienia zabezpieczeń dla zarządzanych pul DevOps. Istnieją dwa sposoby konfigurowania ustawień zabezpieczeń:
- Podczas tworzenia puli za pomocą karty Zabezpieczenia
- Po utworzeniu puli przy użyciu okienka Ustawienia zabezpieczeń
Domyślnie pule tworzone za pomocą zarządzanych pul DevOps są konfigurowane dla wszystkich projektów w jednej organizacji. Opcjonalnie możesz ograniczyć dostęp do określonych projektów w organizacji, a także udzielić dostępu innym organizacjom.
Jeśli skonfigurujesz pulę i przyznasz dostęp do wszystkich projektów, pula zostanie dodana do projektów, dla których masz odpowiednie uprawnienia. Jeśli skonfigurujesz pulę i przyznasz dostęp do określonych projektów, konieczne jest posiadanie uprawnień do dodania puli we wszystkich wyznaczonych projektach, w przeciwnym razie tworzenie puli się nie powiedzie.
Aby wyświetlić uprawnienia wymagane do skonfigurowania zarządzanych pul DevOps w organizacji i projektach, zobacz Wymagania wstępne: Weryfikowanie uprawnień usługi Azure DevOps.
Użyj puli z jedną organizacją
Domyślnie zarządzane pule DevOps są konfigurowane przy użyciu jednej organizacji usługi Azure DevOps określonej podczas tworzenia puli. Po skonfigurowaniu puli dla jednej organizacji nazwa organizacji jest wyświetlana i konfigurowana w ustawieniach puli .
Domyślnie ustawienie Dodaj pulę do wszystkich projektów ma wartość Tak, a dostęp do zarządzanej puli DevOps jest udzielany wszystkim projektom w organizacji. Aby ograniczyć, które projekty w organizacji mogą używać puli, wybierz pozycję Nie, a następnie określ, które projekty powinny mieć dostęp.
Organizacje można skonfigurować we właściwości organizationProfile zasobu Zarządzane pule DevOps.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"organizationProfile": {
"organizations": [
{
"url": "https://dev.azure.com/fabrikam-tailspin",
"projects": [],
"parallelism": 4
}
],
"permissionProfile": {
"kind": "CreatorOnly"
},
"kind": "AzureDevOps"
}
}
]
}
Sekcja organizationProfile zawiera następujące właściwości.
| Nieruchomość |
opis |
organizations |
Lista organizacji, które mogą korzystać z twojej puli. Właściwość url określa adres URL organizacji. Właściwość projects jest listą nazw projektów, które mogą używać puli (pusta lista obsługuje wszystkie projekty w organizacji). Właściwość parallelism określa liczbę agentów, których organizacja może używać. Suma równoległości dla organizacji musi odpowiadać maksymalnej liczbie agentów w puli. |
permissionProfile |
Ta wartość określa uprawnienie, które przyznajesz puli usługi Azure DevOps podczas jej tworzenia. Tę wartość można ustawić tylko podczas tworzenia puli. Dozwolone wartości to Inherit, CreatorOnlyi SpecificAccounts. Jeśli określisz wartość specificAccounts, podaj pojedynczy adres e-mail lub listę adresów e-mail dla właściwości users. W przeciwnym razie pomiń element users. Aby uzyskać więcej informacji, przeczytaj Uprawnienia administracyjne puli. |
kind |
Ta wartość określa typ organizacji dla puli i musi być ustawiona na Azure DevOps. |
Organizacje można skonfigurować w parametrze organization-profile podczas tworzenia lub aktualizowania puli.
az mdp pool create \
--organization-profile organization-profile.json
# other parameters omitted for space
Na poniższym przykładzie przedstawiono obiekt organization-profile skonfigurowany dla wszystkich projektów w organizacji fabrikam-tailspin z wartością parallelism ustawioną na 1.
{
"AzureDevOps":
{
"organizations": [
{
"url": "https://dev.azure.com/fabrikam-tailspin",
"projects": [],
"parallelism": 1
}
]
}
}
Sekcja organizationProfile zawiera następujące właściwości.
| Nieruchomość |
opis |
AzureDevOps |
Ta wartość jest nazwą obiektu zdefiniowanego w organization-profile i musi być ustawiona na Azure DevOps wartość. |
organizations |
Lista organizacji, które mogą korzystać z twojej puli.
openAccess Określa, czy zarządzane pule DevOps konfigurują otwarty dostęp dla danej puli podczas jej tworzenia. Właściwość url określa adres URL organizacji. Właściwość projects jest listą nazw projektów, które mogą używać puli (pusta lista obsługuje wszystkie projekty w organizacji). Właściwość parallelism określa liczbę agentów, których może używać ta organizacja. Suma równoległości dla organizacji musi odpowiadać maksymalnej liczbie agentów w puli. |
permissionProfile |
Ta właściwość określa uprawnienia, które przyznajesz zasobowi puli Azure DevOps podczas jego tworzenia. Tę wartość można ustawić tylko podczas tworzenia puli. Dozwolone wartości to Inherit, CreatorOnlyi SpecificAccounts. Jeśli określisz wartość specificAccounts, podaj pojedynczy adres e-mail lub listę adresów e-mail dla właściwości users. W przeciwnym razie pomiń element users. Aby uzyskać więcej informacji, przeczytaj Uprawnienia administracyjne puli. |
Organizacje można skonfigurować we właściwości organizationProfile zasobu Zarządzane pule DevOps.
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
organizationProfile: {
organizations: [
{
url: 'https://dev.azure.com/fabrikam-tailspin'
projects: []
parallelism: 4
}
]
permissionProfile: {
kind: 'CreatorOnly'
}
kind: 'AzureDevOps'
}
}
}
Sekcja organizationProfile zawiera następujące właściwości.
| Nieruchomość |
opis |
organizations |
Lista organizacji, które mogą korzystać z twojej puli. Właściwość url określa adres URL organizacji. Właściwość projects jest listą nazw projektów, które mogą używać puli (pusta lista obsługuje wszystkie projekty w organizacji). Właściwość parallelism określa liczbę agentów, których może używać ta organizacja. Suma równoległości dla organizacji musi odpowiadać maksymalnej liczbie agentów w puli. |
permissionProfile |
Ta właściwość określa uprawnienia, które przyznajesz zasobowi puli Azure DevOps podczas jego tworzenia. Tę wartość można ustawić tylko podczas tworzenia puli. Dozwolone wartości to Inherit, CreatorOnlyi SpecificAccounts. Jeśli specificAccounts zostanie określony, podaj pojedynczy adres e-mail lub listę adresów e-mail dla users właściwości. W przeciwnym razie pomiń element users. Aby uzyskać więcej informacji, przeczytaj Uprawnienia administracyjne puli. |
kind |
Ta wartość określa typ organizacji dla puli i musi być ustawiona na Azure DevOps. |
Korzystanie z puli w wielu organizacjach
Aby używać puli z wieloma organizacjami usługi Azure DevOps, włącz opcję Użyj puli w wielu organizacjach. Dla każdej organizacji określ projekty, które mogą korzystać z puli, lub pozostaw to pole puste, aby zezwolić na wszystkie projekty. Skonfiguruj konkurencję dla każdej organizacji, określając, jaka część współbieżności, zgodnie z maksymalną liczbą agentów dla puli, ma być przydzielona każdej organizacji. Suma równoległości dla wszystkich organizacji musi być równa maksymalnej współbieżności puli. Jeśli na przykład maksymalna liczba agentów jest ustawiona na pięć, suma równoległości dla określonych organizacji musi wynosić pięć. Jeśli wartość Maksymalna liczba agentów jest ustawiona na jedną, możesz użyć puli tylko z jedną organizacją.
W poniższym przykładzie pula jest skonfigurowana tak, aby była dostępna dla projektów FabrikamResearch i FabrikamTest w organizacji fabrikam-tailspin, oraz dla wszystkich projektów w organizacji fabrikam-blue.
Jeśli wystąpi błąd, taki jak The sum of parallelism for all organizations must equal the max concurrency, upewnij się, że maksymalna liczba agentów dla puli jest zgodna z sumą kolumny Równoległość .
Aby skonfigurować pulę tak, aby wiele organizacji mogła z niej korzystać, dodaj więcej organizacji do listy organizacji. W poniższym przykładzie skonfigurowano dwie organizacje. Pierwsza organizacja jest skonfigurowana do używania zarządzanych pul DevOps dla wszystkich projektów, a druga organizacja może jej używać tylko z dwoma projektami. W tym przykładzie maksymalna liczba agentów dla puli wynosi cztery, a każda organizacja może używać dwóch z tych czterech agentów.
"organizationProfile": {
"organizations": [
{
"url": "https://dev.azure.com/fabrikam-tailspin",
"projects": [],
"parallelism": 2
},
{
"url": "https://dev.azure.com/fabrikam-prime",
"projects": [ "fabrikam-dev", "fabrikam-test" ],
"parallelism": 2
}
],
"permissionProfile": {
"kind": "CreatorOnly"
},
"kind": "AzureDevOps"
}
Organizacje można skonfigurować w parametrze organization-profile podczas tworzenia lub aktualizowania puli.
az mdp pool create \
--organization-profile organization-profile.json
# other parameters omitted for space
Aby skonfigurować pulę tak, aby wiele organizacji mogła z niej korzystać, dodaj więcej organizacji do listy organizacji. W poniższym przykładzie skonfigurowano dwie organizacje. Pierwsza organizacja jest skonfigurowana do używania zarządzanych pul DevOps dla wszystkich projektów, a druga organizacja może jej używać tylko z dwoma projektami. W tym przykładzie maksymalna liczba agentów dla puli wynosi cztery, a każda organizacja może używać dwóch z tych czterech agentów.
{
"AzureDevOps":
{
"organizations": [
{
"url": "https://dev.azure.com/fabrikam-tailspin",
"projects": [],
"parallelism": 2
},
{
"url": "https://dev.azure.com/fabrikam-prime",
"projects": [ "fabrikam-dev", "fabrikam-test" ],
"parallelism": 2
}
]
}
}
Aby skonfigurować pulę tak, aby wiele organizacji mogła z niej korzystać, dodaj więcej organizacji do listy organizacji. W poniższym przykładzie skonfigurowano dwie organizacje. Pierwsza organizacja jest skonfigurowana do używania zarządzanych pul DevOps dla wszystkich projektów, a druga organizacja może jej używać tylko z dwoma projektami. W tym przykładzie maksymalna liczba agentów dla puli wynosi cztery, a każda organizacja może używać dwóch z tych czterech agentów.
organizationProfile: {
organizations: [
{
url: 'https://dev.azure.com/fabrikam-tailspin'
projects: []
parallelism: 2
}
{
url: 'https://dev.azure.com/fabrikam-prime'
projects: ['fabrikam-dev', 'fabrikam-test']
parallelism: 2
}
]
permissionProfile: {
kind: 'CreatorOnly'
}
kind: 'AzureDevOps'
}
Aby skonfigurować otwarty dostęp dla potoków, musisz mieć następujące uprawnienia oprócz uprawnień opisanych w temacie Wymagania wstępne — Weryfikowanie uprawnień usługi Azure DevOps:
Domyślnie należy jawnie autoryzować każdą definicję potoku do uruchomienia w samodzielnie hostowanej puli agentów (takiej jak pula utworzona przy użyciu Zarządzanych Pul DevOps), zanim zostanie uruchomiona po raz pierwszy w tej puli.
Usługa Azure DevOps udostępnia następujące tryby autoryzacyjne dla potoków uruchamianych w puli agentów.
-
Autoryzowanie określonych potoków (wartość domyślna): Indywidualnie autoryzuj określone potoki z projektu usługi Azure DevOps do uruchamiania w puli.
-
Dostęp otwarty: Skonfiguruj pulę agentów na poziomie projektu, aby była dostępna dla wszystkich potoków w tym projekcie.
Włącz opcję Zezwalaj wszystkim potokom na uruchamianie w puli bez zatwierdzenia (Otwarty dostęp), aby skonfigurować ustawienie Otwartego dostępu w puli agentów w usłudze Azure DevOps podczas tworzenia puli.
Możesz skonfigurować ustawienie Zezwalaj wszystkim potokom na uruchamianie w puli bez zatwierdzenia (otwarty dostęp) w zarządzanych pulach DevOps tylko podczas tworzenia puli. Po utworzeniu puli można wyświetlić i skonfigurować otwarty dostęp w odpowiedniej puli agentów w usłudze Azure DevOps dla każdego projektu korzystającego z puli.
Aby skonfigurować dostęp do puli ze wszystkich potoków w wyznaczonych projektach, włącz opcję Pozwól wszystkim potokom uruchamiać się w puli bez zatwierdzenia (otwarty dostęp).
- Jeśli opcja Dodaj pulę do wszystkich projektów jest ustawiona na Tak, Zarządzane pule DevOps konfigurują Otwarty dostęp dla wszystkich potoków we wszystkich projektach.
- Jeśli opcja Dodaj pulę do wszystkich projektów ma wartość Nie, zarządzane pule DevOps konfiguruje otwarty dostęp dla wszystkich potoków tylko w wymienionych projektach.
Jeśli włączysz opcję Użyj puli w wielu organizacjach, możesz określić opcję Otwórz dostęp indywidualnie dla każdej organizacji.
Uwaga
Ustawienie Otwórz dostęp jest obecne w przypadku użycia api-version 2025-01-21 i wyższych wersji.
Organizacje można skonfigurować we właściwości organizationProfile zasobu Zarządzane pule DevOps. W poniższym przykładzie skonfigurowano dwie organizacje:
- Organizacja
fabrikam-tailspin jest skonfigurowana przy użyciu opcji Otwórz dostęp we wszystkich projektach.
- Organizacja
fabrikam-prime jest skonfigurowana w celu zapewnienia dostępności z dwoma projektami, z włączoną opcją Otwartego dostępu tylko w tych dwóch projektach.
"organizationProfile": {
"organizations": [
{
"url": "https://dev.azure.com/fabrikam-tailspin",
"projects": [],
"openAccess": true,
"parallelism": 2
},
{
"url": "https://dev.azure.com/fabrikam-prime",
"projects": [ "fabrikam-dev", "fabrikam-test" ],
"openAccess": true,
"parallelism": 2
}
],
"permissionProfile": {
"kind": "CreatorOnly"
},
"kind": "AzureDevOps"
}
Dostęp otwarty można skonfigurować tylko podczas tworzenia puli. Aby zmienić ustawienie Otwórz dostęp po utworzeniu puli (w tym dodawaniu lub usuwaniu projektów z konfiguracji zarządzanych pul DevOps), należy ręcznie skonfigurować opcję Otwórz dostęp w odpowiedniej puli agentów w usłudze Azure DevOps dla każdego projektu korzystającego z puli.
Możesz skonfigurować ustawienie openAccess w parametrze organization-profile podczas tworzenia puli.
az mdp pool create \
--organization-profile organization-profile.json
# other parameters omitted for space
W poniższym orgaization-profile przykładzie skonfigurowano dwie organizacje:
- Organizacja
fabrikam-tailspin jest skonfigurowana przy użyciu opcji Otwórz dostęp we wszystkich projektach.
- Organizacja
fabrikam-prime jest skonfigurowana w celu zapewnienia dostępności z dwoma projektami, z włączoną opcją Otwartego dostępu tylko w tych dwóch projektach.
{
"AzureDevOps":
{
"organizations": [
{
"url": "https://dev.azure.com/fabrikam-tailspin",
"projects": [],
"parallelism": 2
},
{
"url": "https://dev.azure.com/fabrikam-prime",
"projects": [ "fabrikam-dev", "fabrikam-test" ],
"parallelism": 2
}
]
}
}
Dostęp otwarty można skonfigurować tylko podczas tworzenia puli. Aby zmienić ustawienie Otwórz dostęp po utworzeniu puli (w tym dodawaniu lub usuwaniu projektów z konfiguracji zarządzanych pul DevOps), należy ręcznie skonfigurować opcję Otwórz dostęp w odpowiedniej puli agentów w usłudze Azure DevOps dla każdego projektu korzystającego z puli.
Uwaga
Ustawienie Otwarcie dostępu jest obecne, kiedy korzystasz z api-version 2025-01-21 i wyższych.
Organizacje można skonfigurować we właściwości organizationProfile zasobu Zarządzane pule DevOps. W poniższym przykładzie skonfigurowano dwie organizacje:
- Organizacja
fabrikam-tailspin jest skonfigurowana przy użyciu opcji Otwórz dostęp we wszystkich projektach.
- Organizacja
fabrikam-prime jest skonfigurowana w celu zapewnienia dostępności z dwoma projektami, z włączoną opcją Otwartego dostępu tylko w tych dwóch projektach.
organizationProfile: {
organizations: [
{
url: 'https://dev.azure.com/fabrikam-tailspin'
projects: []
openAccess: true
parallelism: 2
}
{
url: 'https://dev.azure.com/fabrikam-prime'
projects: ['fabrikam-dev', 'fabrikam-test']
openAccess: true
parallelism: 2
}
]
permissionProfile: {
kind: 'CreatorOnly'
}
kind: 'AzureDevOps'
}
Dostęp otwarty można skonfigurować tylko podczas tworzenia puli. Aby zmienić ustawienie Otwórz dostęp po utworzeniu puli (w tym dodawaniu lub usuwaniu projektów z konfiguracji zarządzanych pul DevOps), należy ręcznie skonfigurować opcję Otwórz dostęp w odpowiedniej puli agentów w usłudze Azure DevOps dla każdego projektu korzystającego z puli.
Jeśli spróbujesz uruchomić potok, który nie jest autoryzowany do uzyskiwania dostępu do puli agentów, zostanie wyświetlony błąd, taki jak "Ten potok musi mieć uprawnienia dostępu do zasobu, zanim będzie można kontynuować ten przebieg". Ten problem można rozwiązać, konfigurując otwarty dostęp zgodnie z opisem w poprzedniej sekcji lub jawnie autoryzując potok do uruchomienia w puli agentów.
Jeśli testy wymagają interaktywnego logowania do testowania interfejsu użytkownika, włącz logowanie interakcyjne, włączając ustawienie EnableInteractiveMode .
Tryb interaktywny można skonfigurować w sekcji osProfile właściwości fabricProfile. Ustaw logonType na Interactive, aby włączyć tryb interaktywny, lub na Service, aby wyłączyć tryb interaktywny.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"fabricProfile": {
"sku": {...},
"images": [...],
"osProfile": {
"secretsManagementSettings": {...},
"logonType": "Interactive"
},
"storageProfile": {...},
"kind": "Vmss"
}
}
]
}
Tryb interaktywny można skonfigurować przy użyciu logonType właściwości w osProfile sekcji w parametrze fabric-profile podczas tworzenia lub aktualizowania puli.
az mdp pool create \
--fabric-profile fabric-profile.json
# other parameters omitted for space
Poniższy przykład przedstawia sekcję osProfile pliku fabric-profile.json z włączonym trybem Interactive .
{
"vmss": {
"sku": {...},
"images": [...],
"osProfile": {
"secretsManagementSettings": {...},
"logonType": "Interactive"
},
"storageProfile": {...}
}
}
Tryb interaktywny jest konfigurowany w sekcji osProfile właściwości fabricProfile. Ustaw logonType na Interactive, aby włączyć tryb interaktywny, lub na Service, aby wyłączyć tryb interaktywny.
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
fabricProfile: {
sku: {...}
images: [...]
osProfile: {
secretsManagementSettings: {...}
logonType: 'Interactive'
}
storageProfile: {...}
kind: 'Vmss'
}
}
}
W ramach procesu tworzenia zarządzanej puli DevOps pula agentów jest tworzona na poziomie organizacji usługi Azure DevOps, a pula agentów na poziomie projektu jest tworzona w każdym wyznaczonym projekcie. Ustawienie Uprawnienia administracyjne puli określa, którzy użytkownicy mają przyznane uprawnienia administratora do nowo utworzonych pul agentów w usłudze Azure DevOps. Aby wyświetlić uprawnienia puli agentów usługi Azure DevOps i zarządzać nimi po utworzeniu zarządzanej puli DevOps, zobacz Tworzenie pul agentów i zarządzanie nimi: Zabezpieczenia pul agentów.
-
Tylko twórca: to ustawienie dodaje użytkownika, który utworzył zarządzaną pulę DevOps jako administrator puli agentów usługi Azure DevOps, i ustawia wartość Dziedziczenie na Wyłączone w ustawieniach zabezpieczeń puli agentów.
Tylko twórca jest ustawieniem domyślnym.
-
Dziedzicz uprawnienia po projekcie: to ustawienie dodaje użytkownika, który utworzył Zarządzaną pulę DevOps jako administratora puli agentów Azure DevOps, i ustawia Dziedziczenie na Wł w ustawieniach zabezpieczeń puli agentów.
-
Określone konta: to ustawienie umożliwia określenie kont, które chcesz dodać jako administratorów puli agentów w usłudze Azure DevOps. Domyślnie twórca puli jest uwzględniany.
Ustawienie Uprawnienia administracyjne puli można skonfigurować na karcie Zabezpieczenia podczas tworzenia puli. Nie jest on wyświetlany w ustawieniach zabezpieczeń po utworzeniu puli. Aby wyświetlić uprawnienia puli agentów usługi Azure DevOps i zarządzać nimi po utworzeniu puli, zobacz Tworzenie pul agentów i zarządzanie nimi — zabezpieczenia pul agentów.
Uprawnienia administracyjne puli można skonfigurować w właściwości permissionsProfile w sekcji organizationProfile zasobu Zarządzane pule DevOps.
{
"organizationProfile": {
"organizations": [...],
"permissionProfile": {
"kind": "CreatorOnly"
},
"kind": "AzureDevOps"
}
Właściwość permissionProfile można ustawić tylko podczas tworzenia puli. Dozwolone wartości to Inherit, CreatorOnlyi SpecificAccounts.
-
CreatorOnly: to ustawienie dodaje użytkownika, który utworzył zarządzaną pulę DevOps jako administrator puli agentów usługi Azure DevOps, i ustawia wartość Dziedziczenie na Wyłączone w ustawieniach zabezpieczeń puli agentów.
Tylko twórca jest ustawieniem domyślnym.
-
Inherit: to ustawienie dodaje użytkownika, który utworzył zarządzaną pulę DevOps jako administrator puli agentów usługi Azure DevOps, i ustawia wartość Dziedziczenie na Wł . w ustawieniach zabezpieczeń puli agentów.
-
SpecificAccounts: To ustawienie służy do określania kont, które chcesz dodać jako administratorów puli agentów w usłudze Azure DevOps. Domyślnie twórca puli jest uwzględniany.
"organizationProfile": {
"organizations": [...],
"permissionProfile": {
"kind": "SpecificAccounts",
"users" : ["User1@fabrikam.com", "User2@fabrikam.com" ]
},
"kind": "AzureDevOps"
}
Uprawnienia administracyjne puli można skonfigurować w parametrze organization-profile podczas tworzenia puli.
az mdp pool create \
--organization-profile organization-profile.json
# other parameters omitted for space
{
"AzureDevOps":
{
"organizations": [...],
"permissionProfile": {
"kind": "CreatorOnly"
}
}
}
Właściwość permissionProfile można ustawić tylko podczas tworzenia puli. Dozwolone wartości to Inherit, CreatorOnlyi SpecificAccounts.
-
CreatorOnly: to ustawienie dodaje użytkownika, który utworzył zarządzaną pulę DevOps jako administrator puli agentów usługi Azure DevOps, i ustawia wartość Dziedziczenie na Wyłączone w ustawieniach zabezpieczeń puli agentów.
Tylko twórca jest ustawieniem domyślnym.
-
Inherit: to ustawienie dodaje użytkownika, który utworzył zarządzaną pulę DevOps jako administrator puli agentów usługi Azure DevOps, i ustawia wartość Dziedziczenie na Wł . w ustawieniach zabezpieczeń puli agentów.
-
SpecificAccounts: To ustawienie służy do określania kont, które chcesz dodać jako administratorów puli agentów w usłudze Azure DevOps. Domyślnie twórca puli jest uwzględniany. Podaj pojedynczy adres e-mail lub listę adresów e-mail dla users właściwości. W przeciwnym razie pomiń element users.
{
"AzureDevOps" : {
"organizationProfile": {
"organizations": [...],
"permissionProfile": {
"kind": "SpecificAccounts",
"users" : ["User1@fabrikam.com", "User2@fabrikam.com" ]
}
}
}
}
Uprawnienia administracyjne puli można skonfigurować w właściwości permissionsProfile w sekcji organizationProfile zasobu Zarządzane pule DevOps.
organizationProfile: {
organizations: [...]
permissionProfile: {
kind: 'CreatorOnly'
}
kind: 'AzureDevOps'
}
Właściwość permissionProfile można ustawić tylko podczas tworzenia puli. Dozwolone wartości to Inherit, CreatorOnlyi SpecificAccounts.
-
CreatorOnly: to ustawienie dodaje użytkownika, który utworzył zarządzaną pulę DevOps jako administrator puli agentów usługi Azure DevOps, i ustawia wartość Dziedziczenie na Wyłączone w ustawieniach zabezpieczeń puli agentów.
Tylko twórca jest ustawieniem domyślnym.
-
Inherit: to ustawienie dodaje użytkownika, który utworzył zarządzaną pulę DevOps jako administrator puli agentów usługi Azure DevOps, i ustawia wartość Dziedziczenie na Wł . w ustawieniach zabezpieczeń puli agentów.
-
SpecificAccounts: To ustawienie służy do określania kont, które chcesz dodać jako administratorów puli agentów w usłudze Azure DevOps. Domyślnie twórca puli jest uwzględniany. Podaj pojedynczy adres e-mail lub listę adresów e-mail dla users właściwości. W przeciwnym razie pomiń element users.
organizationProfile: {
organizations: [...]
permissionProfile: {
kind: 'SpecificAccounts'
users: ['User1@fabrikam.com', 'User2@fabrikam.com']
}
kind: 'AzureDevOps'
}
Zarządzane pule DevOps umożliwiają pobieranie certyfikatów z magazynu kluczy platformy Azure podczas aprowizacji. Certyfikaty już istnieją na maszynie w momencie uruchamiania potoków.
Aby użyć tej funkcji, musisz:
Skonfiguruj tożsamość dla swojej puli. Musisz przyznać tej tożsamości uprawnienie Key Vault Secrets User, aby pobrać sekret z magazynu kluczy. Aby przypisać swoją tożsamość do roli Użytkownik Sekretów w Key Vault, zobacz Jak zapewnić dostęp do kluczy, certyfikatów i sekretów w Azure Key Vault za pomocą roli opartej na kontroli dostępu platformy Azure.
Podmiot, który konfiguruje ustawienia integracji magazynu kluczy (przypisanie do konta, jeśli konfigurujesz ustawienia magazynu kluczy), musi mieć przypisanie roli Key Vault Certificate User w magazynie kluczy, w którym są przechowywane certyfikaty.
Aby wymusić izolację sieci dla wystąpienia usługi Azure Key Vault w celu zezwolenia tylko na autoryzowany dostęp do zasobów, należy dodać następujące adresy IP do listy dozwolonych usługi Azure Key Vault. Następujące zakresy adresów IP znajdują się w tagu usługi platformy Azure o nazwie DevOpsInfrastructure.
| Lokalizacja |
Zakres adresów IP |
| australiaeast |
4.198.194.192/28 |
| brazilsouth |
74.163.143.32/28 |
| canadacentral |
130.107.66.0/28 |
| centralindia |
98.70.255.112/28 |
| centralus |
72.152.33.16/28 |
| eastus2 |
72.153.21.192/28 |
| germanywestcentral |
131.189.121.128/28 |
| northeurope |
72.145.24.48/28 |
| południowo-wschodniazja |
135.171.33.48/28 |
| szwajcarianorth |
74.161.82.192/28 |
| uksouth |
131.145.107.64/28 |
| westus3 |
57.154.125.208/28 |
Uwaga
api-version 2025-01-21Od tego momentu, jeśli korzystasz z tej funkcji, możesz używać tylko jednej tożsamości w puli.
Do pobierania tajemnic z magazynu kluczy można użyć tylko jednej tożsamości.
Ustawienia certyfikatów zarządzanych pul DevOps można ustawić na poziomie puli, a niektóre ustawienia są specyficzne dla systemu Windows lub Linux. Jeśli przepływ pracy wymaga obrazów systemu Linux i Windows, może być konieczne podzielenie ich na wiele pul, jeśli nie możesz znaleźć wspólnego zestawu ustawień certyfikatów, które działają zarówno dla systemów Windows, jak i Linux.
Następujące ustawienia umożliwiają skonfigurowanie certyfikatów pobranych z magazynu kluczy:
-
Certyfikaty (
observedCertificates): to ustawienie określa certyfikaty, które mają być pobierane z magazynu kluczy i instalowane na wszystkich komputerach w puli.
-
Lokalizacja magazynu certyfikatów (
certificateStoreLocation): to ustawienie określa lokalizację instalowania certyfikatów na agencie.
-
Agenci systemu Windows: określ
LocalMachine lub CurrentUser.
-
Agenci systemu Linux: ustawienie Lokalizacja magazynu certyfikatów jest obsługiwane tylko w dystrybucjach systemu Ubuntu. Określ ścieżkę dysku do przechowywania certyfikatów (na przykład
/var/lib/waagent/Microsoft.Azure.KeyVault/app1).
W przypadku dystrybucji systemu Ubuntu, jeśli określisz lokalizację zaufanego magazynu (na przykład /usr/local/share/ca-certificates), certyfikat zostanie dodany do tego magazynu jako root. Aby uzyskać dodatkowe informacje, zobacz artykuł Instalowanie certyfikatu głównego urzędu certyfikacji w magazynie zaufania.
-
Nazwa magazynu certyfikatów (
certificateStoreName)
-
Agenci systemu Windows: to ustawienie określa nazwę magazynu certyfikatów. Jest to albo
My (lokalny magazyn certyfikatów, który jest domyślny, jeśli nie określono nazwy) lub Root (zaufana lokalizacja główna).
-
Agenci systemu Linux: to ustawienie nie jest używane w agentach systemu Linux.
-
Eksportowalne klucze prywatne (
keyExportable): to ustawienie określa, czy klucz certyfikatów można eksportować. Wartość domyślna to false.
Integrację magazynu kluczy można skonfigurować w obszarze Ustawienia>Zabezpieczenia.
Ustawienia integracji skarbca kluczy można skonfigurować dopiero po utworzeniu puli. Podczas tworzenia puli nie można skonfigurować ustawień integracji skarbca kluczy. Nie są one wyświetlane na karcie Zabezpieczenia podczas tworzenia puli.
Usługę Azure Key Vault można skonfigurować we osProfile sekcji właściwości fabricProfile. Ustaw secretManagementSettings opcję , aby mieć dostęp do żądanego certyfikatu.
Uwaga
Właściwość osProfile.certificateStoreName jest dostępna tylko w systemach apiVersion 2025-01-21 i nowszych.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"fabricProfile": {
"sku": {...},
"images": [...],
"osProfile": {
"secretsManagementSettings": {
"certificateStoreLocation": "LocalMachine",
"certificateStoreName": "Root",
"observedCertificates": [
"https://<keyvault-uri>/secrets/<certificate-name>"
],
"keyExportable": false
}
},
"storageProfile": {...},
"kind": "Vmss"
}
}
]
}
Usługę Azure Key Vault można skonfigurować w osProfile sekcji fabricProfile właściwości podczas tworzenia lub aktualizowania puli. Ustaw parametr secretManagementSettings , aby mieć dostęp do żądanego certyfikatu.
az mdp pool create \
--fabric-profile fabric-profile.json
# other parameters omitted for space
Poniższy przykład przedstawia sekcję osProfile pliku fabric-profile.json z ustawieniem secretsManagementSettings.
{
"vmss": {
"sku": {...},
"images": [...],
"osProfile": {
"secretsManagementSettings": {
"certificateStoreLocation": "LocalMachine",
"observedCertificates": [
"https://<keyvault-uri>/secrets/<certificate-name>"
],
"keyExportable": false
},
"logonType": "Interactive"
},
"storageProfile": {...}
}
}
Usługę Azure Key Vault można skonfigurować we osProfile sekcji właściwości fabricProfile. Ustaw secretManagementSettings opcję , aby mieć dostęp do żądanego certyfikatu.
Uwaga
Właściwość osProfile.certificateStoreName jest dostępna tylko w systemach apiVersion 2025-01-21 i nowszych.
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
fabricProfile: {
sku: {...}
images: [...]
osProfile: {
secretsManagementSettings: {
certificateStoreLocation: 'LocalMachine'
certificateStoreName: 'Root'
observedCertificates: 'https://<keyvault-uri>/secrets/<certificate-name>'
keyExportable: false
}
}
kind: 'Vmss'
}
}
}
Certyfikaty pobierane za pomocą SecretManagementSettings w ramach puli są automatycznie synchronizowane z najnowszymi wersjami opublikowanymi w repozytorium kluczy. Te sekrety są już na maszynie, zanim uruchomi swój pierwszy pipeline, co oznacza, że można zaoszczędzić czas i wyeliminować zadania związane z pobieraniem certyfikatów.
Ważne
Aprowizowanie maszyn wirtualnych agenta kończy się niepowodzeniem, jeśli nie można pobrać sekretu z usługi Key Vault z powodu problemu z uprawnieniami lub siecią.
W systemie Windows można ustawić wartość Lokalizacja magazynu certyfikatów na LocalMachine lub CurrentUser. To ustawienie zapewnia, że tajny klucz jest zainstalowany pod wskazaną lokalizacją na maszynie. Aby dowiedzieć się o szczegółach działania pobierania wpisów tajnych, zobacz Rozszerzenie usługi Azure Key Vault dla systemu Windows.
W przypadku systemu Linux można ustawić wartość Lokalizacja magazynu certyfikatów na dowolny katalog na maszynie, a certyfikaty są pobierane i synchronizowane z tej lokalizacji. Aby uzyskać szczegółowe informacje na temat domyślnych ustawień i zachowania sekretów, zobacz rozszerzenie maszyny wirtualnej Azure Key Vault dla systemu Linux.
Treści powiązane