Краткое руководство. Создание периметра безопасности сети в Azure PowerShell
Начало работы с периметром безопасности сети путем создания периметра безопасности сети для хранилища ключей Azure с помощью Azure PowerShell. Периметр безопасности сети позволяет ресурсам Платформы Azure как услуга (PaaS) взаимодействовать в пределах явной доверенной границы. Вы создаете и обновляете связь ресурса PaaS в профиле периметра безопасности сети. Затем вы создаете и обновляете правила доступа к периметру безопасности сети. По завершении удалите все ресурсы, созданные в этом кратком руководстве.
Внимание
Периметр безопасности сети доступен в общедоступной предварительной версии и доступен во всех регионах общедоступного облака Azure. Эта предварительная версия предоставляется без соглашения об уровне обслуживания и не рекомендована для использования рабочей среде. Некоторые функции могут не поддерживаться или их возможности могут быть ограничены. Дополнительные сведения см. в статье Дополнительные условия использования Предварительных версий Microsoft Azure.
Необходимые компоненты
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
Требуется регистрация общедоступной предварительной версии периметра безопасности сети Azure. Чтобы зарегистрировать, добавьте
AllowNSPInPublicPreview
флаг компонента в подписку.Дополнительные сведения о добавлении флагов функций см. в статье "Настройка предварительных версий функций" в подписке Azure.
После добавления флага компонента необходимо повторно зарегистрировать
Microsoft.Network
поставщика ресурсов в подписке.Чтобы повторно зарегистрировать
Microsoft.Network
поставщика ресурсов в портал Azure, выберите подписку и выберите поставщиков ресурсов.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 локально:
- Установите последнюю версию модуля Az PowerShell.
- Подключитесь к учетной записи Azure с помощью командлета Connect-AzAccount.
Если вы используете Azure Cloud Shell:
- Дополнительные сведения о Azure Cloud Shell см. в статье "Обзор Azure Cloud Shell".
Чтобы получить справку по командлетам PowerShell, используйте
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
Создание группы ресурсов и хранилища ключей
Прежде чем создать периметр безопасности сети, необходимо создать группу ресурсов и ресурс хранилища ключей.
В этом примере создается группа ресурсов с именем test-rg
в расположении WestCentralUS и хранилище ключей с именем 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 с новым профилем
На этом шаге вы создадите новый профиль и свяжите ресурс PaaS, Azure Key Vault с профилем с помощью New-AzNetworkSecurityPerimeterProfile
команд и New-AzNetworkSecurityPerimeterAssociation
команд.
Создайте новый профиль для периметра безопасности сети с помощью следующей команды:
# Create a new profile $nspProfile = @{ Name = 'nsp-profile' ResourceGroupName = $rgParams.name SecurityPerimeterName = $nsp.name } $demoProfileNSP=New-AzNetworkSecurityPerimeterProfile @nspprofile
Свяжите azure Key Vault (ресурс 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 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.