Condividi tramite


Gestire gli elenchi di controllo di accesso degli endpoint usando PowerShell nel modello di distribuzione classica

È possibile creare e gestire elenchi di controllo di accesso di rete (ACL) per gli endpoint usando Azure PowerShell o nel portale di gestione. In questo argomento sono disponibili procedure per le attività comuni ACL che è possibile completare usando PowerShell. Per l'elenco dei cmdlet di Azure PowerShell, vedere Azure Management cmdlets. Per altre informazioni sugli elenchi di controllo di accesso, vedere Che cos'è un elenco di controllo di accesso di rete (ACL)?. Per gestire gli elenchi di controllo di accesso tramite il portale di gestione, vedere Come configurare gli endpoint in una macchina virtuale.

Gestire gli ACL di rete usando Azure PowerShell

È possibile usare i cmdlet di Azure PowerShell per creare, rimuovere e configurare (set) elenchi di controllo di accesso di rete (ACL). Sono stati inclusi alcuni esempi di alcuni dei modi in cui è possibile configurare un elenco di controllo di accesso tramite PowerShell.

Per recuperare un elenco completo dei cmdlet di PowerShell ACL, è possibile usare una delle opzioni seguenti:

Get-Help *AzureACL*
Get-Command -Noun AzureACLConfig

Creare un ACL di rete con regole che consentano l'accesso da una subnet remota

L'esempio seguente illustra come creare un nuovo elenco di controllo di accesso che contiene regole. Questa ACL viene quindi applicata a un endpoint di macchina virtuale. Le regole ACL nell'esempio seguente consentiranno l'accesso da una subnet remota. Per creare un nuovo ACL di rete con regole di autorizzazione per una subnet remota, aprire un'istanza di Azure PowerShell ISE. Copiare e incollare lo script seguente, configurare lo script con valori personalizzati e quindi eseguire lo script.

  1. Creare il nuovo oggetto ACL di rete.

     $acl1 = New-AzureAclConfig
    
  2. Impostare una regola che consenta l'accesso da una subnet remota. Nell'esempio seguente si imposta la regola 100 (con priorità rispetto alla regola 200 e versioni successive) per consentire alla subnet remota 10.0.0.0/8 l'accesso all'endpoint della macchina virtuale. Sostituire i valori con i propri requisiti di configurazione. Il nome "Configurazione ACL di SharePoint" deve essere sostituito con il nome descrittivo che si desidera chiamare questa regola.

     Set-AzureAclConfig –AddRule –ACL $acl1 –Order 100 `
         –Action permit –RemoteSubnet "10.0.0.0/8" `
         –Description "SharePoint ACL config"
    
  3. Per altre regole, ripetere il cmdlet, sostituendo i valori con i propri requisiti di configurazione. Assicurati di modificare il numero della regola "Order" per riflettere l'ordine in cui desideri applicare le regole. Il numero di regola inferiore ha la precedenza sul numero più alto.

     Set-AzureAclConfig –AddRule –ACL $acl1 –Order 200 `
         –Action permit –RemoteSubnet "157.0.0.0/8" `
         –Description "web frontend ACL config"
    
  4. Successivamente, è possibile creare un nuovo endpoint (Aggiungi) o impostare l'ACL per un endpoint esistente (Set). In questo esempio si aggiungerà un nuovo endpoint macchina virtuale denominato "Web" e si aggiornerà l'endpoint della macchina virtuale con le impostazioni ACL.

     Get-AzureVM –ServiceName $serviceName –Name $vmName `
     | Add-AzureEndpoint –Name "web" –Protocol tcp –Localport 80 - PublicPort 80 –ACL $acl1 `
     | Update-AzureVM
    
  5. Combinare quindi i cmdlet ed eseguire lo script. Per questo esempio, i cmdlet combinati hanno un aspetto simile al seguente:

     $acl1 = New-AzureAclConfig
     Set-AzureAclConfig –AddRule –ACL $acl1 –Order 100 `
         –Action permit –RemoteSubnet "10.0.0.0/8" `
         –Description "SharePoint ACL config"
     Set-AzureAclConfig –AddRule –ACL $acl1 –Order 200 `
         –Action permit –RemoteSubnet "157.0.0.0/8" `
         –Description "web frontend ACL config"
     Get-AzureVM –ServiceName $serviceName –Name $vmName `
     |Add-AzureEndpoint –Name "web" –Protocol tcp –Localport 80 - PublicPort 80 –ACL $acl1 `
     |Update-AzureVM
    

Rimuovere una regola ACL di rete che consenta l'accesso da una subnet remota

L'esempio seguente illustra un modo per rimuovere una regola ACL di rete. Per rimuovere una regola ACL di rete con regole di autorizzazione per una subnet remota, aprire un'istanza di Azure PowerShell ISE. Copiare e incollare lo script seguente, configurare lo script con valori personalizzati e quindi eseguire lo script.

  1. Il primo passaggio consiste nel ottenere l'oggetto ACL di rete per l'endpoint della macchina virtuale. Rimuoverai quindi la regola ACL. In questo caso, la rimozione viene eseguita in base all'ID regola. In questo modo verrà rimosso solo l'ID regola 0 dall'ACL. Non rimuove l'oggetto ACL dall'endpoint della macchina virtuale.

     Get-AzureVM –ServiceName $serviceName –Name $vmName `
     | Get-AzureAclConfig –EndpointName "web" `
     | Set-AzureAclConfig –RemoveRule –ID 0 –ACL $acl1
    
  2. Successivamente, è necessario applicare l'oggetto ACL di rete all'endpoint della macchina virtuale e aggiornare la macchina virtuale.

     Get-AzureVM –ServiceName $serviceName –Name $vmName `
     | Set-AzureEndpoint –ACL $acl1 –Name "web" `
     | Update-AzureVM
    

Rimuovere un ACL di rete da un endpoint di macchina virtuale

In alcuni scenari, potrebbe essere necessario rimuovere un oggetto ACL di rete da un endpoint di macchina virtuale. A tale scopo, aprire un'istanza di Azure PowerShell ISE. Copiare e incollare lo script seguente, configurare lo script con valori personalizzati e quindi eseguire lo script.

    Get-AzureVM –ServiceName $serviceName –Name $vmName `
    | Remove-AzureAclConfig –EndpointName "web" `
    | Update-AzureVM

Passaggi successivi

Che cos'è un elenco di controllo di accesso di rete (ACL)?