共用方式為


快速入門:建立網路安全性周邊 - Azure PowerShell

使用 Azure PowerShell 建立 Azure 金鑰保存庫的網路安全性周邊,以開始使用網路安全性周邊。 網路安全性周邊可讓 Azure 平臺即服務 (PaaS) 資源在明確信任的界限內通訊。 您會在網路安全周邊配置檔中建立及更新 PaaS 資源的關聯。 然後,您會建立及更新網路安全性周邊存取規則。 完成時,您會刪除在本快速入門中建立的所有資源。

重要

網路安全性周邊處於公開預覽狀態,且適用於所有 Azure 公用雲端區域。 此預覽版本是在沒有服務等級協定的情況下提供,不建議用於生產工作負載。 可能不支援特定功能,或可能已經限制功能。 如需詳細資訊,請參閱 Microsoft Azure 預覽版增補使用條款

必要條件

  • 需要註冊 Azure 網路安全周邊公開預覽。 若要註冊,請將 AllowNSPInPublicPreview 功能旗標新增至您的訂用帳戶。 將網路安全性周邊功能旗標新增至 Azure 訂用帳戶的螢幕快照。

    如需新增功能旗標的詳細資訊,請參閱 在 Azure 訂用帳戶中設定預覽功能。

  • 新增功能旗標之後,您必須在訂用帳戶中重新註冊 Microsoft.Network 資源提供者。

    • 若要在 Azure 入口網站 中重新註冊Microsoft.Network資源提供者,請選取您的訂用帳戶,然後選取 [資源提供者]。 搜尋 Microsoft.Network 並選取 [重新註冊]。

      在訂用帳戶中重新註冊 Microsoft.Network 資源提供者的螢幕快照。

    • 若要重新註冊 Microsoft.Network 資源提供者,請使用下列 Azure PowerShell 命令:

    # Register the Microsoft.Network resource provider
    Register-AzResourceProvider -ProviderNamespace Microsoft.Network
    
    • 若要重新註冊 Microsoft.Network 資源提供者,請使用下列 Azure CLI 命令:

      # Register the Microsoft.Network resource provider
      az provider register --namespace Microsoft.Network
      

    如需重新註冊資源提供者的詳細資訊,請參閱 Azure 資源提供者和類型

  • 最新版的 Azure PowerShell 模組,具有網路安全性周邊工具。

    # Install the Az.Tools.Installer module    
    Install-Module -Name Az.Tools.Installer -Repository PSGallery
    
  • 使用 Az.Tools.Installer 來安裝 的 Az.Network預覽組建:

    # Install the preview build of the Az.Network module
    Install-Module -Name Az.Tools.Installer -Repository PSGallery -allowprerelease -force
    
    # List the current versions of the Az.Network module available in the PowerShell Gallery
    Find-Module -Name Az.Network -Allversions -AllowPrerelease
    
    # Install the preview build of the Az.Network module using the 
    
    Install-AzModule -Name Az.Network -AllowPrerelease -Force
    Install-AzModule -Path <previewVersionNumber>
    

    注意

    需要 Az.Network 模組的預覽版本,才能使用網路安全性周邊功能。 最新版的 Az.Network 模組可在 PowerShell 資源庫 中使用。 尋找以 結尾 -preview的最新版本。

  • 如果您選擇在本機使用 Azure PowerShell:

  • 如果您選擇使用 Azure Cloud Shell:

  • 若要取得 PowerShell Cmdlet 的說明,請使用 Get-Help 命令:

    
    # Get help for a specific command
    get-help -Name <powershell-command> - full
    
    # Example
    get-help -Name New-AzNetworkSecurityPerimeter - full
    

登入您的 Azure 帳戶並且選取您的訂用帳戶

若要開始您的設定,請登入您的 Azure 帳戶:

# Sign in to your Azure account
Connect-AzAccount

然後,連線到您的訂用帳戶:

# List all subscriptions
Set-AzContext -Subscription <subscriptionId>

# Register the Microsoft.Network resource provider
Register-AzResourceProvider -ProviderNamespace Microsoft.Network

建立資源群組和金鑰保存庫

您必須先建立資源群組和密鑰保存庫資源,才能建立網路安全性周邊。
此範例會在 WestCentralUS 位置建立名為 test-rg 的資源群組,並使用下列命令在資源群組中建立名為 demo-keyvault-<RandomValue> 的金鑰保存庫:

# Create a resource group
$rgParams = @{
    Name = "test-rg"
    Location = "westcentralus"
}
New-AzResourceGroup @rgParams

# Create a key vault
$keyVaultName = "demo-keyvault-$(Get-Random)"
$keyVaultParams = @{
    Name = $keyVaultName
    ResourceGroupName = $rgParams.Name
    Location = $rgParams.Location
}
$keyVault = New-AzKeyVault @keyVaultParams

建立網路安全性周邊

在此步驟中,使用下列 New-AzNetworkSecurityPerimeter 命令建立網路安全性周邊:

注意

請勿將任何個人可識別或敏感數據放入網路安全性周邊規則或其他網路安全性周邊設定中。


# Create a network security perimeter
$nsp = @{ 
        Name = 'demo-nsp' 
        location = 'westcentralus' 
        ResourceGroupName = $rgParams.name  
        } 

$demoNSP=New-AzNetworkSecurityPerimeter @nsp
$nspId = $demoNSP.Id
  

建立及更新 PaaS 資源與新配置檔的關聯

在此步驟中,您會建立新的配置檔,並使用 和 New-AzNetworkSecurityPerimeterAssociation 命令,將 PaaS 資源、Azure 金鑰保存庫 與配置檔New-AzNetworkSecurityPerimeterProfile產生關聯。

  1. 使用下列命令為您的網路安全性周邊建立新的設定檔:

        # Create a new profile
    
        $nspProfile = @{ 
            Name = 'nsp-profile' 
            ResourceGroupName = $rgParams.name 
            SecurityPerimeterName = $nsp.name 
            }
    
        $demoProfileNSP=New-AzNetworkSecurityPerimeterProfile @nspprofile
    
  2. 將 Azure 金鑰保存庫 (PaaS 資源) 與網路安全周邊設定檔與下列命令產生關聯:

        # Associate the PaaS resource with the above created profile
    
        $nspAssociation = @{ 
            AssociationName = 'nsp-association' 
            ResourceGroupName = $rgParams.name 
            SecurityPerimeterName = $nsp.name 
            AccessMode = 'Learning'  
            ProfileId = $demoProfileNSP.Id 
            PrivateLinkResourceId = $keyVault.ResourceID
            }
    
        New-AzNetworkSecurityPerimeterAssociation @nspassociation | format-list
    
  3. 使用 命令將存取模式變更為 enforced Update-AzNetworkSecurityPerimeterAssociation ,以更新關聯,如下所示:

        # Update the association to enforce the access mode
        $updateAssociation = @{ 
            AssociationName = $nspassociation.AssociationName 
            ResourceGroupName = $rgParams.name 
            SecurityPerimeterName = $nsp.name 
            AccessMode = 'Enforced'
            }
        Update-AzNetworkSecurityPerimeterAssociation @updateAssociation | format-list
    

管理網路安全性周邊存取規則

在此步驟中,您會使用公用IP位址前綴來建立、更新和刪除網路安全性周邊存取規則。

    # Create an inbound access rule for a public IP address prefix
    $inboundRule = @{ 
        Name = 'nsp-inboundRule' 
        ProfileName = $nspprofile.Name  
        ResourceGroupName = $rgParams.Name  
        SecurityPerimeterName = $nsp.Name  
        Direction = 'Inbound'  
        AddressPrefix = '192.0.2.0/24' 
        } 

    New-AzNetworkSecurityPerimeterAccessRule @inboundrule | format-list

    # Update the inbound access rule to add more public IP address prefixes
    $updateInboundRule = @{ 
        Name = $inboundrule.Name 
        ProfileName = $nspprofile.Name  
        ResourceGroupName = $rgParams.Name  
        SecurityPerimeterName = $nsp.Name  
        AddressPrefix = @('192.0.2.0/24','198.51.100.0/24')
        }
    Update-AzNetworkSecurityPerimeterAccessRule @updateInboundRule | format-list

注意

如果未將受控識別指派給支援它的資源,則會拒絕對相同周邊內其他資源的輸出存取。 訂用帳戶型輸入規則,旨在允許從此資源存取不會生效。

刪除所有資源

當您不再需要網路安全性周邊時,請移除與網路安全周邊相關聯的所有資源、移除周邊,然後移除資源群組。


    # Retrieve the network security perimeter and place it in a variable
    $nsp= Get-AzNetworkSecurityPerimeter -Name demo-nsp -ResourceGroupName $rg.Params.Name

    # Delete the network security perimeter and all associated resources
    $removeNsp = @{ 
        Name = 'nsp-association'
        ResourceGroupName = $rgParams.Name
        SecurityPerimeterName = $nsp.Name
        }
    Remove-AzNetworkSecurityPerimeterAssociation @removeNsp
    
    Remove-AzNetworkSecurityPerimeter -Name $nsp.Name -ResourceGroupName $rgParams.Name
    
    # Remove the resource group
    Remove-AzResourceGroup -Name $rgParams.Name -Force

注意

從網路安全性周邊移除您的資源關聯會導致訪問控制回復到現有的資源防火牆設定。 這可能會導致根據資源防火牆組態允許/拒絕存取。 如果 PublicNetworkAccess 設定為 SecuredByPerimeter 且已刪除關聯,則資源會進入鎖定狀態。 如需詳細資訊,請參閱 轉換至 Azure 中的網路安全性周邊。

下一步