정책 이해

완료됨

Azure Policy를 사용하여 리소스에 정책을 적용하려면 다음과 같은 개략적인 단계를 수행해야 합니다.

  • 정책 정의 정책 정의를 만듭니다.
  • 정책 할당 리소스 범위에 정의 할당
  • 수정. 정책 평가 결과 검토 및 비준수 사항 처리

정책 정의

정책 정의는 평가할 리소스와 리소스에 대해 수행할 작업을 지정합니다. 예를 들어 VM이 공용 IP 주소에 노출된 경우 배포되지 않도록 할 수 있습니다. VM을 배포하여 비용을 제어하기 위해 특정 하드 디스크를 포함할 수도 있습니다. 정책은 JSON(JavaScript Object Notation) 형식으로 정의됩니다.

다음 예에서는 리소스를 배포할 수 있는 위치를 제한하는 정책을 정의합니다.

{
    "properties": {
        "mode": "all",
        "parameters": {
            "allowedLocations": {
                "type": "array",
                "metadata": {
                    "description": "The list of locations that can be specified when deploying resources",
                    "strongType": "location",
                    "displayName": "Allowed locations"
                }
            }
        },
        "displayName": "Allowed locations",
        "description": "This policy enables you to restrict the locations your organization can specify when deploying resources.",
        "policyRule": {
            "if": {
                "not": {
                    "field": "location",
                    "in": "[parameters('allowedLocations')]"
                }
            },
            "then": {
                "effect": "deny"
            }
        }
    }
}

다음 목록은 정책 정의의 예입니다.

  • 허용되는 스토리지 계정 SKU(거부): 배포 중인 스토리지 계정이 SKU 크기 세트 내에 있는지 여부를 확인합니다. 정의된 SKU 크기 세트를 준수하지 않는 모든 스토리지 계정을 거부하게 됩니다.
  • 허용되는 리소스 종류(거부): 배포할 수 있는 리소스 유형을 정의합니다. 이 정의된 목록에 속하지 않는 모든 리소스를 거부하게 됩니다.
  • 허용되는 위치(거부): 새 리소스를 사용할 수 있는 위치를 제한합니다. 해당 효과는 지역 규정 준수 요구 사항을 적용하는 데 사용됩니다.
  • 허용되는 가상 머신 SKU(거부): 배포할 수 있는 가상 머신 SKU 세트를 지정합니다.
  • 리소스에 태그 추가(수정): 배포 요청에 의해 지정되지 않은 경우 필수 태그 및 해당 기본값을 적용합니다.
  • 허용되지 않는 리소스 종류(거부): 리소스 종류 목록이 배포되지 않도록 합니다.

정책 할당

정책 정의(사용자 지정이든 기본 제공이든)를 할당해야 합니다.

정책 할당은 특정 범위에 할당된 정책 정의입니다. 범위는 관리 그룹에서 리소스 그룹까지 다양합니다.

자식 리소스는 부모 리소스에 적용된 정책 할당을 상속합니다.

즉, 리소스 그룹에 적용된 정책은 해당 리소스 그룹 내의 모든 리소스에 사용됩니다.

하지만, 정책 할당에서 리소스를 제외하기 위한 하위 범위를 정의할 수 있습니다.

다음을 통해 정책을 할당할 수 있습니다.

  • Azure Portal
  • Azure CLI
  • PowerShell을 사용하여 키 백업 파일 복원

수정

deployIfNotExists를 따르지 않거나 정책 조건을 수정하는 것으로 확인된 리소스는 수정을 통해 준수 상태로 전환될 수 있습니다.

수정은 기존 리소스에 대해 deployIfNotExists 효과 또는 정책의 태그 작업을 실행하도록 Azure Policy에 지시합니다.

구성 드리프트를 최소화하기 위해 리소스를 한 번에 하나씩 처리하는 대신 자동화된 일괄 수정을 사용하여 리소스를 준수 상태로 전환할 수 있습니다.

Azure Policy에 대한 자세한 내용은 Azure Policy 웹 페이지에서 확인할 수 있습니다.