Definire l'appartenenza dinamica a gruppi di rete in Gestione rete virtuale di Azure con Criteri di Azure
Questo articolo illustra come usare istruzioni condizionali di Criteri di Azure per creare gruppi di rete con appartenenza dinamica. Queste istruzioni condizionali vengono create usando l'editor di base selezionando parametri e operatori da un menu a discesa. Si apprenderà anche come usare l'editor avanzato per aggiornare le istruzioni condizionali di un gruppo di rete esistente.
Criteri di Azure è un servizio che consente di applicare la governance per ogni risorsa su larga scala. Può essere usato per specificare espressioni condizionali che definiscono l'appartenenza a un gruppo, anziché elenchi espliciti di reti virtuali. Questa condizione continua ad alimentare i gruppi di rete in modo dinamico, consentendo alle reti virtuali di unirsi e abbandonare automaticamente il gruppo man mano che il loro adempimento della condizione subisce modifiche, senza che sia necessaria alcuna operazione di Gestione rete.
Prerequisiti
- Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
- Per modificare gruppi di rete dinamici, è necessario disporre di accesso con controllo degli accessi in base al ruolo. L'autorizzazione di amministratore/legacy classica non è supportata.
Parametri e operatori
Le reti virtuali con appartenenze dinamiche vengono selezionate usando istruzioni condizionali. È possibile definire più istruzioni condizionali usando operatori logici come AND e OR per scenari in cui si necessita di restringere ulteriormente le reti virtuali selezionate.
Elenco dei parametri supportati:
Parametri | Campo Editor avanzato |
---|---|
Nome | Name |
ID | Id |
Tag | tag['tagName'] |
Nome sottoscrizione | [subscription().Name] |
ID sottoscrizione | [subscription().Id] |
Tag di sottoscrizione | [subscription().tags['tagName']] |
Nome gruppo di risorse | [resourceGroup().Name] |
ID gruppo di risorse | [resourceGroup().Id] |
Tag del gruppo di risorse | [resourceGroup().tags['tagName']] |
Elenco degli operatori supportati:
Operatori | Editor avanzato |
---|---|
Contiene | "contains": <> |
Non contiene | "notcontains": <> |
In | "in": <> |
Non incluso in | "notin": <> |
Equals | "equals": <> |
Non è uguale a | "notequals": <> |
Contiene qualsiasi dei | "contains": <> |
Contiene tutti i | "contains": <> |
Non contiene alcun | "notcontains": <> |
Exists | "exists": true |
Non esiste | "exists": false |
Nota
Gli operatori Esiste e Non esiste vengono usati solo con il parametro Tags.
Editor di base
Si supponga di avere le seguenti reti virtuali nella sottoscrizione. Ogni rete virtuale ha un tag denominato ambiente con il rispettivo valore di produzione o test.
Rete virtuale | Nome tag | Valore tag |
---|---|---|
myVNet01-EastUS | dell'ambiente di | produzione |
myVNet01-WestUS | dell'ambiente di | produzione |
myVNet02-WestUS | dell'ambiente di | test |
myVNet03-WestUS | dell'ambiente di | test |
Selezionare solo reti virtuali il cui tag ha una coppia chiave valore di ambiente equivalente a produzione. Per iniziare a usare l'editor di base per creare l'istruzione condizionale, è necessario creare un nuovo gruppo di rete.
Passare all'istanza di gestione rete virtuale di Azure e selezionare Gruppi di rete in Impostazioni. Quindi, selezionare + Crea per creare un nuovo gruppo di rete.
Immettere un Nome e una Descrizione facoltativa per il gruppo di rete e selezionare Aggiungi.
Selezionare il gruppo di rete dall'elenco e selezionare Crea criterio di Azure.
Immettere un Nome criterio e lasciare le selezioni Ambito invariati, a meno che non siano necessarie modifiche.
In Criteri, selezionare Tag dall'elenco a discesa in Parametro e quindi selezionare Coppia chiave-valore nell'elenco a discesa in Operatore.
Immettere ambiente e produzione in Condizione e selezionare Anteprima risorse. Nell'elenco verranno visualizzati myVNet01-EastUS e myVNet01-WestUS.
Selezionare Chiudi e Salva.
Dopo alcuni minuti, selezionare il gruppo di rete e selezionare Membri del gruppo in Impostazioni. Dovrebbero essere visualizzati solo myVNet01-WestUS e myVNet01-WestUS.
Importante
L'editor di base è disponibile solo durante la creazione di criteri di Azure. Dopo aver creato un criterio, tutte le modifiche verranno eseguite usando JSON nella sezione Criteri di Gestione rete virtuale o tramite Criteri di Azure.
Editor avanzato
L'editor avanzato può essere usato per selezionare reti virtuali durante la creazione di un gruppo di rete o quando si aggiorna un gruppo di rete esistente. Basato su JSON, l'editor avanzato è utile per la creazione e l'aggiornamento di istruzioni condizionali complesse di Criteri di Azure da parte di utenti esperti.
Creare un nuovo criterio con l'editor avanzato
Passare all'istanza di gestione rete virtuale di Azure e selezionare Gruppi di rete in Impostazioni. Quindi, selezionare + Crea per creare un nuovo gruppo di rete.
Immettere un Nome e una Descrizione facoltativa per il gruppo di rete e selezionare Aggiungi.
Selezionare il gruppo di rete dall'elenco e selezionare Crea criterio di Azure.
Immettere un Nome criterio e lasciare le selezioni Ambito invariati, a meno che non siano necessarie modifiche.
In Criteri, selezionare Editor avanzato (JSON) per aprire l'editor.
Immettere il codice JSON seguente nella casella di testo e selezionare Salva:
{ "field": "Name", "contains": "myVNet01" }
Dopo alcuni minuti, selezionare il gruppo di rete e selezionare Membri del gruppo in Impostazioni. Dovrebbero essere visualizzati solo myVNet01-WestUS e myVNet01-EastUS.
Importante
Tutti i criteri di Azure creati con gestione rete virtuale saranno disponibili nell'area servizi di Criteri di Azure. Non verranno rimossi dalle assegnazioni e dalle definizioni di Criteri di Azure all’eliminazione di un'istanza di gestione rete virtuale. Ciò richiede la rimozione manuale dei criteri. Informazioni su come rimuovere criteri di Azure
Modificare un criterio esistente
Selezionare il gruppo di rete creato nella sezione precedente. Quindi, selezionare la scheda Criteri.
Selezionare i criteri creati nella sezione precedente.
Nella vista dell'editor avanzato, vengono visualizzate le istruzioni condizionali per il gruppo di rete come indicato di seguito:
[ { "field": "Name", "contains": "myVNet01" } ]
Per aggiungere un'altra istruzione condizionale per un campo Nome che non contiene WestUS, immettere quanto segue nell'editor avanzato:
{ "allOf": [ { "field": "Name", "contains": "VNet01" }, { "field": "Name", "notcontains": "WestUS" } ] }
Il parametro
"allOf"
contiene entrambe le istruzioni condizionali separate dall'operatore logico AND.Seleziona Salva.
Dopo alcuni minuti, selezionare il gruppo di rete e selezionare Membri del gruppo in Impostazioni. Verrà visualizzato solo myVNet01-EastUS.
Vedere Parametri e operatori per l'elenco completo di parametri e operatori che possono essere usati con l'editor avanzato.
Altri esempi
Di seguito sono riportati altri esempi di istruzioni condizionali nell'editor avanzato.
Esempio 1: solo operatore OR
In questo esempio viene usato l'operatore logico OR per separare due istruzioni condizionali.
Editor di base:
Operatore avanzato:
{ "anyOf": [ { "field": "Name", "contains": "myVNet01" }, { "field": "Name", "contains": "myVNet02" } ] }
Il parametro "anyOf"
contiene entrambe le istruzioni condizionali separate dall'operatore logico OR.
Esempio 2: Sia operatore AND che OR
Editor di base:
Editor avanzato:
{
"allOf": [
{
"anyOf": [
{
"field": "Name",
"contains": "myVNet01"
},
{
"field": "Name",
"contains": "myVNet02"
}
]
},
{
"field": "Name",
"notcontains": "West"
}
]
}
Sia "allOf"
che "anyOf"
vengono usati nel codice. Poiché l'operatore AND è l'ultimo nell'elenco, si trova nella parte esterna del codice contenente le due istruzioni condizionali con l'operatore OR.
Esempio 3: Uso di valori di tag personalizzati con editor avanzato
In questo esempio viene creata un'istruzione condizionale che trova reti virtuali in cui il nome include myVNet E il tag di ambiente equivale a produzione.
Editor avanzato:
{ "allOf": [ { "field": "Name", "contains": "myVNet" }, { "field": "tags['environment']", "equals": "production" } ] }
Nota
Le condizionali devono filtrare in base al tipo di risorsa Microsoft.Network/virtualNetwork per ottimizzare l'efficienza. Questa condizione viene anteposta in qualsiasi condizionale specificata tramite il portale.
Passaggi successivi
- Informazioni sui Gruppi di rete.
- Creare un'istanza di gestione rete virtuale di Azure.
- Creare e gestire i criteri per applicare la conformità