Configurare le impostazioni di protezione dei pool di DevOps gestiti
Articolo
È possibile configurare l'impostazione di sicurezza per i pool DevOps gestiti durante la creazione del pool usando la scheda Sicurezza e dopo la creazione del pool usando il riquadro Impostazioni di sicurezza .
Configurare l'accesso all'organizzazione
Per impostazione predefinita, i pool di DevOps gestiti sono configurati per una singola organizzazione, con accesso al pool concesso a tutti i progetti dell'organizzazione. Facoltativamente, è possibile limitare l'accesso a progetti specifici nell'organizzazione ed è possibile concedere l'accesso ad altre organizzazioni, se necessario.
Per impostazione predefinita, i pool di DevOps gestiti vengono configurati per l'uso con una singola organizzazione Azure DevOps specificata durante la creazione del pool. Quando il pool è configurato per una singola organizzazione, il nome dell'organizzazione viene visualizzato e configurato in Impostazioni pool
Per impostazione predefinita, l'opzione Aggiungi pool a tutti i progetti è impostata su Sì e l'accesso al pool DevOps gestito viene concesso a tutti i progetti dell'organizzazione. Scegliere No per specificare un elenco di progetti per limitare i progetti che possono essere usati dall'organizzazione.
Le organizzazioni vengono configurate nella organizationProfile proprietà della risorsa Pool DevOps gestiti.
La organizationProfile sezione presenta le proprietà seguenti.
Proprietà
Descrizione
organizations
Elenco delle organizzazioni che possono usare il pool. url specifica l'URL dell'organizzazione, projects è un elenco di nomi di progetto che possono usare il pool (un elenco vuoto supporta tutti i progetti nell'organizzazione) e parallelism specifica il numero di agenti che possono essere usati dall'organizzazione. La somma del parallelismo per le organizzazioni deve corrispondere all'impostazione massima degli agenti per il pool.
permissionProfile
Specificare l'autorizzazione concessa al pool di Azure DevOps al momento della creazione. Questo valore può essere impostato solo durante la creazione del pool. I valori consentiti sono Inherit, CreatorOnly e SpecificAccounts. Se specificAccounts viene specificato, specificare un singolo indirizzo di posta elettronica o un elenco di indirizzi di posta elettronica per la users proprietà; in caso contrario, omettere users. Per altre informazioni, vedere Autorizzazioni di amministrazione del pool.
kind
Questo valore specifica il tipo di organizzazione per il pool e deve essere impostato su Azure DevOps.
az mdp pool create \
--organization-profile organization-profile.json
# other parameters omitted for space
Nell'esempio seguente viene illustrato un organization-profile oggetto configurato per tutti i progetti dell'organizzazione fabrikam-tailspin con parallelism impostato su 1.
La organizationProfile sezione presenta le proprietà seguenti.
Proprietà
Descrizione
AzureDevOps
Questo valore è il nome dell'oggetto definito in organization-profile e deve essere impostato su Azure DevOps.
organizations
Elenco delle organizzazioni che possono usare il pool. url specifica l'URL dell'organizzazione, projects è un elenco di nomi di progetto che possono usare il pool (un elenco vuoto supporta tutti i progetti nell'organizzazione) e parallelism specifica il numero di agenti che possono essere usati dall'organizzazione. La somma del parallelismo per le organizzazioni deve corrispondere all'impostazione massima degli agenti per il pool.
permissionProfile
Specificare l'autorizzazione concessa al pool di Azure DevOps al momento della creazione. Questo valore può essere impostato solo durante la creazione del pool. I valori consentiti sono Inherit, CreatorOnly e SpecificAccounts. Se specificAccounts viene specificato, specificare un singolo indirizzo di posta elettronica o un elenco di indirizzi di posta elettronica per la users proprietà; in caso contrario, omettere users. Per altre informazioni, vedere Autorizzazioni di amministrazione del pool.
Abilitare Use pool in multiple organizations to use your pool with multiple Azure DevOps organizations (Usare il pool in più organizzazioni) per usare il pool con più organizzazioni Di Azure DevOps. Per ogni organizzazione, specificare i progetti autorizzati a usare il pool o lasciare vuoto per consentire tutti i progetti. Configurare il parallelismo per ogni organizzazione specificando le parti della concorrenza, come specificato da Numero massimo di agenti per il pool, da allocare a ogni organizzazione. La somma del parallelismo per tutte le organizzazioni deve corrispondere alla concorrenza massima del pool. Ad esempio, se l'opzione Massimo agenti è impostata su cinque, la somma del parallelismo per le organizzazioni specificate deve essere cinque. Se l'opzione Numero massimo agenti è impostata su uno, è possibile usare solo il pool con un'organizzazione.
Nell'esempio seguente il pool è configurato per essere disponibile per i progetti FabrikamResearch e FabrikamTest nell'organizzazione fabrikam-tailspin e per tutti i progetti nell'organizzazione fabrikam-blue .
Se viene visualizzato un errore simile The sum of parallelism for all organizations must equal the max concurrency.a , verificare che il numero massimo di agenti per il pool corrisponda alla somma della colonna Parallelism .
Aggiungere altre organizzazioni all'elenco delle organizzazioni per configurare il pool da usare con più organizzazioni. Nell'esempio seguente sono configurate due organizzazioni. La prima organizzazione è configurata per l'uso di pool DevOps gestiti per tutti i progetti e la seconda organizzazione è limitata a due progetti. In questo esempio, l'impostazione massima degli agenti per il pool è quattro e ogni organizzazione può usare due di questi quattro agenti.
az mdp pool create \
--organization-profile organization-profile.json
# other parameters omitted for space
Aggiungere altre organizzazioni all'elenco delle organizzazioni per configurare il pool da usare con più organizzazioni. Nell'esempio seguente sono configurate due organizzazioni. La prima organizzazione è configurata per l'uso di pool DevOps gestiti per tutti i progetti e la seconda organizzazione è limitata a due progetti. In questo esempio, l'impostazione massima degli agenti per il pool è quattro e ogni organizzazione può usare due di questi quattro agenti.
Se i test richiedono un account di accesso interattivo per i test dell'interfaccia utente, abilitare l'accesso interattivo abilitando l'impostazione EnableInteractiveMode .
La modalità interattiva è configurata nella osProfile sezione della fabricProfile proprietà . Impostare logonType su Interactive per abilitare la modalità interattiva o Service per disabilitare la modalità interattiva.
Come parte del processo di creazione del pool devOps gestito, viene creato un pool di agenti a livello di organizzazione in Azure DevOps. L'impostazione Autorizzazioni di amministrazione pool specifica gli utenti a cui viene concesso il ruolo di amministratore del pool di Azure DevOps appena creato. Per visualizzare e gestire le autorizzazioni del pool di agenti di Azure DevOps dopo la creazione del pool di devOps gestiti, vedere Creare e gestire pool di agenti - Sicurezza dei pool di agenti.
Solo creatore: l'utente che ha creato il pool di DevOps gestiti viene aggiunto come amministratore del pool di agenti di Azure DevOps e l'ereditarietà è impostata su Disattivato nelle impostazioni di sicurezza del pool di agenti. Creator è solo l'impostazione predefinita.
Eredita le autorizzazioni dal progetto : l'utente che ha creato il pool devOps gestito viene aggiunto come amministratore del pool di agenti di Azure DevOps e l'ereditarietà è impostata su Sì nelle impostazioni di sicurezza del pool di agenti.
Account specifici: specificare gli account da aggiungere come amministratori del pool di agenti creato in Azure DevOps. Per impostazione predefinita, l'autore del pool DevOps gestito viene aggiunto all'elenco.
Nota
L'impostazione Autorizzazioni di amministrazione pool è configurata nella scheda Sicurezza al momento della creazione del pool e non viene visualizzata nelle impostazioni di sicurezza dopo la creazione del pool. Per visualizzare e gestire le autorizzazioni del pool di agenti di Azure DevOps dopo la creazione del pool di devOps gestiti, vedere Creare e gestire pool di agenti - Sicurezza dei pool di agenti.
Le autorizzazioni di amministrazione del pool vengono configurate nella permissionsProfile proprietà della organizationProfile sezione della risorsa Pool devOps gestiti.
La permissionProfile proprietà può essere impostata solo durante la creazione del pool. I valori consentiti sono Inherit, CreatorOnly e SpecificAccounts.
CreatorOnly - L'utente che ha creato il pool devOps gestito viene aggiunto come amministratore del pool di agenti di Azure DevOps e l'ereditarietà è impostata su Disattivato nelle impostazioni di sicurezza del pool di agenti. Creator è solo l'impostazione predefinita.
Inherit - L'utente che ha creato il pool devOps gestito viene aggiunto come amministratore del pool di agenti di Azure DevOps e l'ereditarietà è impostata su Sì nelle impostazioni di sicurezza del pool di agenti.
SpecificAccounts - Specificare gli account da aggiungere come amministratori del pool di agenti creato in Azure DevOps. Per impostazione predefinita, l'autore del pool DevOps gestito viene aggiunto all'elenco. Specificare un singolo indirizzo di posta elettronica o un elenco di indirizzi di posta elettronica per la users proprietà; in caso contrario, omettere users.
La permissionProfile proprietà può essere impostata solo durante la creazione del pool. I valori consentiti sono Inherit, CreatorOnly e SpecificAccounts.
CreatorOnly - L'utente che ha creato il pool devOps gestito viene aggiunto come amministratore del pool di agenti di Azure DevOps e l'ereditarietà è impostata su Disattivato nelle impostazioni di sicurezza del pool di agenti. Creator è solo l'impostazione predefinita.
Inherit - L'utente che ha creato il pool devOps gestito viene aggiunto come amministratore del pool di agenti di Azure DevOps e l'ereditarietà è impostata su Sì nelle impostazioni di sicurezza del pool di agenti.
SpecificAccounts - Specificare gli account da aggiungere come amministratori del pool di agenti creato in Azure DevOps. Per impostazione predefinita, l'autore del pool DevOps gestito viene aggiunto all'elenco. Specificare un singolo indirizzo di posta elettronica o un elenco di indirizzi di posta elettronica per la users proprietà; in caso contrario, omettere users.
I pool DevOps gestiti offrono la possibilità di recuperare i certificati da un'istanza di Azure Key Vault durante il provisioning, il che significa che i certificati saranno già presenti nel computer quando esegue le pipeline di Azure DevOps. Per usare questa funzionalità, è necessario configurare un'identità nel pool e questa identità deve disporre delle autorizzazioni utente dei segreti dell'insieme di credenziali delle chiavi per recuperare il segreto dall'insieme di credenziali delle chiavi. Per assegnare l'identità al ruolo utente dei segreti di Key Vault, vedere Fornire l'accesso a chiavi, certificati e segreti di Key Vault con un controllo degli accessi in base al ruolo di Azure.
Nota
A partire da api-version 2024-10-19, se si usa questa funzionalità, è possibile usare solo una singola identità nel pool. Presto verrà aggiunto il supporto per più identità.
È possibile usare una sola identità per recuperare i segreti dall'insieme di credenziali delle chiavi.
L'integrazione di Key Vault è configurata in Sicurezza delle impostazioni>.
Nota
Le impostazioni di integrazione di Key Vault possono essere configurate solo dopo la creazione del pool. Le impostazioni di integrazione di Key Vault non possono essere configurate durante la creazione del pool e non vengono visualizzate nella scheda Sicurezza durante la creazione del pool.
Azure Key Vault è configurato nella osProfile sezione della fabricProfile proprietà . Impostare per secretManagementSettings poter accedere al certificato desiderato.
Azure Key Vault viene configurato nella osProfile sezione della proprietà durante la creazione o l'aggiornamento fabricProfile di un pool. Impostare per secretManagementSettings poter accedere al certificato desiderato.
az mdp pool create \
--fabric-profile fabric-profile.json
# other parameters omitted for space
Nell'esempio seguente viene illustrata la osProfile sezione del file fabric-profile.json con secretsManagementSettingsconfigurato.
I certificati recuperati usando nel SecretManagementSettings pool verranno sincronizzati automaticamente con le versioni più recenti pubblicate nell'insieme di credenziali delle chiavi. Questi segreti si troveranno nel computer al momento dell'esecuzione di qualsiasi pipeline di Azure DevOps, ovvero è possibile risparmiare tempo e rimuovere le attività per il recupero dei certificati.
Importante
Il provisioning delle macchine virtuali dell'agente avrà esito negativo se il segreto non può essere recuperato dall'insieme di credenziali delle chiavi a causa di un problema di rete o autorizzazioni.
Per Windows, il percorso dell'archivio certificati può essere impostato su LocalMachine o CurrentUser. Questa impostazione garantisce che il segreto sia installato in tale posizione nel computer. Per un comportamento specifico del funzionamento del recupero dei segreti, vedere la documentazione relativa all'estensione Azure VMSS Key Vault per Windows.
Per Linux, il percorso dell'archivio certificati può essere qualsiasi directory nel computer e i certificati verranno scaricati e sincronizzati con tale percorso. Per informazioni specifiche sulle impostazioni predefinite e sul comportamento dei segreti, vedere la documentazione relativa all'estensione Azure VMSS Key Vault per Linux.