Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
开始使用网络安全外围:通过使用Azure PowerShell为Azure 密钥保管库构建网络安全外围。 网络安全外围允许Azure平台即服务(PaaS)资源在显式受信任的边界内进行通信。 在网络安全外围配置文件中创建和更新 PaaS 资源的关联。 然后,创建和更新网络安全外围访问规则。 完成后,请删除在本快速入门中创建的所有资源。
先决条件
具有活动订阅的Azure帐户。 创建试用版订阅。
Azure PowerShell
Az模块已安装在本地。 网络安全边界 cmdlet 已包含在Az.Network的当前稳定版本中,因此不需要预发布版本。# Install or update the Az PowerShell module Install-Module -Name Az -Repository PSGallery -Scope CurrentUser -Force可以选择在本地使用Azure PowerShell。
若要获取有关 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 -Environment AzureChinaCloud
然后,连接到您的订阅服务。
# Select the subscription to use
Set-AzContext -Subscription <subscriptionId>
# Register the Microsoft.Network resource provider
Register-AzResourceProvider -ProviderNamespace Microsoft.Network
创建资源组和密钥保管库
必须先创建资源组和密钥保管库资源,然后才能创建网络安全外围。
此示例使用以下命令创建一个名为 chinaeast2 位置的资源组 test-rg 和资源组中命名 demo-keyvault-<RandomValue> 的密钥保管库:
# Create a resource group
$rgParams = @{
Name = "test-rg"
Location = "chinaeast2"
}
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 = 'chinaeast2'
ResourceGroupName = $rgParams.name
}
$demoNSP = New-AzNetworkSecurityPerimeter @nsp
创建和更新 PaaS 资源与新配置文件的关联
在此步骤中,你将创建新的配置文件,并使用 New-AzNetworkSecurityPerimeterProfile 和 New-AzNetworkSecurityPerimeterAssociation 命令将 PaaS 资源、Azure 密钥保管库与配置文件相关联。
使用以下命令为网络安全边界创建新的概况:
# Create a new profile $nspProfile = @{ Name = 'nsp-profile' ResourceGroupName = $rgParams.name SecurityPerimeterName = $nsp.name } $demoProfileNSP=New-AzNetworkSecurityPerimeterProfile @nspprofile使用以下命令将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通过使用命令
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 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 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
注释
启用托管标识(MI)是支持资源之间的内部通信所必需的。 尽管某些资源的某些功能(例如,Azure SQL使用平台托管的 SQL 到 SQL 后端通信的功能)可能继续运行而不使用 MI,但强烈建议启用此功能,以确保在同一外围内或跨链接外围进行安全访问。
删除所有资源
如果不再需要网络安全外围,请删除与网络安全外围关联的所有资源,删除外围,然后删除资源组。
# Retrieve the network security perimeter and place it in a variable
$nsp = Get-AzNetworkSecurityPerimeter -Name 'demo-nsp' -ResourceGroupName $rgParams.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 过渡到网络安全外围。