Поделиться через


Примеры стандартных политик Azure

Политика Azure поможет помочь вам применить управление к облачным ресурсам. Эта служба позволяет установить ограничения, обеспечивающие соответствие требованиям политики управления в масштабах всей организации. Чтобы создать политики, используйте портал Azure или командлеты PowerShell. В этой статье приведены примеры командлетов PowerShell.

Примечание

При использовании Политики Azure принудительные политики (DeployIfNotExists) не развертываются автоматически на существующих виртуальных машинах. Для обеспечения соответствия виртуальных машин требуется исправление. Дополнительные сведения см. в статье Исправление несоответствующих ресурсов с помощью Политики Azure.

Примеры стандартных политик

В следующих разделах описываются некоторые распространенные политики.

Ограничение регионов ресурсов

Соблюдение нормативных требований и политик часто зависит от контроля физического расположения, в котором развертываются ресурсы. Вы можете использовать встроенную политику, чтобы разрешить пользователям создавать ресурсы только в определенных регионах Azure.

Чтобы найти эту политику на портале, выполните поиск по слову "расположение" на странице определения политики. Чтобы найти политику, можно также выполнить следующий командлет:

Get-AzPolicyDefinition | Where-Object { ($_.Properties.policyType -eq 'BuiltIn') `
  -and ($_.Properties.displayName -like '*location*') }

Приведенный ниже скрипт демонстрирует назначение политики. Измените значение $SubscriptionID, указав подписку, которой нужно назначить политику. Перед выполнением скрипта используйте командлет Connect-AzAccount, чтобы войти в систему.


# Specify the value for $SubscriptionID.

$SubscriptionID = <subscription ID>
$scope = "/subscriptions/$SubscriptionID"

# Replace the -Name GUID with the policy GUID you want to assign.

$AllowedLocationPolicy = Get-AzPolicyDefinition -Name "e56962a6-4747-49cd-b67b-bf8b01975c4c"

# Replace the locations with the ones you want to specify.

$policyParam = '{ "listOfAllowedLocations":{"value":["eastus","westus"]}}'
New-AzPolicyAssignment -Name "Allowed Location" -DisplayName "Allowed locations for resource creation" -Scope $scope -PolicyDefinition $AllowedLocationPolicy -Location eastus -PolicyParameter $policyParam

Этот скрипт также можно использовать для применения других политик, описанных в данной статье. Просто замените идентификатор GUID в строке, в которой задается $AllowedLocationPolicy, идентификатором GUID политики, которую необходимо применить.

Блокирование определенных типов ресурсов

Еще одна распространенная встроенная политика, используемая для управления затратами, может также применяться для блокировки определенных типов ресурсов.

Чтобы найти эту политику на портале, выполните поиск по запросу "разрешенные типы ресурсов" на странице определения политики. Чтобы найти политику, можно также выполнить следующий командлет:

Get-AzPolicyDefinition | Where-Object { ($_.Properties.policyType -eq "BuiltIn") -and ($_.Properties.displayName -like "*allowed resource types") }

Определив нужную политику, можно изменить пример PowerShell в разделе Ограничение регионов ресурсов, чтобы назначить политику.

Ограничение размера виртуальной машины

В Azure предлагается широкий спектр размеров виртуальных машин для поддержки различных рабочих нагрузок. Для управления бюджетом можно создать политику, которая допускает только подмножество размеров виртуальных машин в ваших подписках.

Развертывание антивредоносной программы

Эту политику можно использовать для развертывания расширения Microsoft Antimalware с конфигурацией по умолчанию на виртуальных машинах, не защищенных с помощью антивредоносной программы.

GUID политики — 2835b622-407b-4114-9198-6f7064cbe0dc.

Приведенный ниже скрипт демонстрирует назначение политики. Чтобы использовать скрипт, измените значение $SubscriptionID, указав подписку, которой нужно назначить политику. Перед выполнением скрипта используйте командлет Connect-AzAccount, чтобы войти в систему.


# Specify the value for $SubscriptionID.

$subscriptionID = <subscription ID>
$scope = "/subscriptions/$subscriptionID"

$antimalwarePolicy = Get-AzPolicyDefinition -Name "2835b622-407b-4114-9198-6f7064cbe0dc"

# Replace location "eastus" with the value that you want to use.

New-AzPolicyAssignment -Name "Deploy Antimalware" -DisplayName "Deploy default Microsoft IaaSAntimalware extension for Windows Server" -Scope $scope -PolicyDefinition $antimalwarePolicy -Location eastus -AssignIdentity

Дальнейшие действия

Узнайте о других доступных средствах и службах управления сервером.