다음을 통해 공유


일반적인 Azure Policy 예제

Azure Policy는 클라우드 리소스에 거버넌스를 적용하는 데 도움이 될 수 있습니다. 이 서비스는 거버넌스 정책 요구 사항에 대한 전사적 규정 준수를 보장하는 가드레일을 만드는 데 도움이 될 수 있습니다. 정책을 만들려면 Azure Portal 또는 PowerShell cmdlet을 사용합니다. 이 문서에서는 PowerShell cmdlet 예제를 제공합니다.

참고

Azure Policy를 사용하면 적용 정책(DeployIfNotExists)이 기존 VM에 자동으로 배포되지 않습니다. VM을 규정 준수 상태로 유지하려면 수정이 필요합니다. 자세한 내용은 Azure Policy로 비준수 리소스 수정을 참조하세요.

일반적인 정책 예시

다음 섹션에서는 일반적으로 사용되는 몇 가지 정책에 대해 설명합니다.

리소스 지역 제한

규정 및 정책 준수는 리소스가 배포되는 실제 위치의 제어에 따라 좌우되는 경우가 많습니다. 기본 제공 정책을 사용하여 사용자가 허용된 특정 Azure 지역에서만 리소스를 만들도록 허용할 수 있습니다.

포털에서 이 정책을 찾으려면 정책 정의 페이지에서 "위치"를 검색합니다. 또는 이 cmdlet을 실행하여 정책을 찾습니다.

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

다음 스크립트는 정책을 할당하는 방법을 보여 줍니다. 정책을 할당할 구독을 가리키도록 $SubscriptionID 값을 변경합니다. 스크립트를 실행하기 전에 Connect-AzAccount cmdlet을 사용하여 로그인합니다.


# 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

이 스크립트를 사용하여 이 문서에서 설명하는 다른 정책을 적용할 수도 있습니다. $AllowedLocationPolicy를 설정하는 줄의 GUID를 적용하려는 정책의 GUID로 바꾸기만 하면 됩니다.

특정 리소스 종류 차단

비용을 제어하는 데 사용되는 또 다른 기본 제공 정책을 사용하여 특정 리소스 종류를 차단할 수도 있습니다.

포털에서 이 정책을 찾으려면 정책 정의 페이지에서 "허용된 리소스 종류"을 검색합니다. 또는 이 cmdlet을 실행하여 정책을 찾습니다.

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

사용하려는 정책을 식별한 후 리소스 지역 제한 섹션에서 PowerShell 샘플을 수정하여 정책을 할당할 수 있습니다.

VM 크기 제한

Azure는 다양한 워크로드를 지원하기 위해 다양한 VM 크기를 제공합니다. 예산을 제어하기 위해 구독에서 VM 크기의 하위 집합만 허용하는 정책을 만들 수 있습니다.

맬웨어 방지 배포

이 정책을 사용하여 맬웨어 방지로 보호되지 않는 VM에 기본 구성으로 Microsoft Antimalware 확장을 배포할 수 있습니다.

정책 GUID는 2835b622-407b-4114-9198-6f7064cbe0dc입니다.

다음 스크립트는 정책을 할당하는 방법을 보여 줍니다. 스크립트를 사용하려면 정책을 할당할 구독을 가리키도록 $SubscriptionID 값을 변경합니다. 스크립트를 실행하기 전에 Connect-AzAccount cmdlet을 사용하여 로그인합니다.


# 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

다음 단계

사용 가능한 다른 서버 관리 도구 및 서비스에 대해 알아봅니다.