다음을 통해 공유


Policy Set Definition Versions - Create Or Update

이 작업은 주어진 구독 내에서 이름과 버전으로 정책 세트 정의 버전을 생성하거나 업데이트합니다.

PUT https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/policySetDefinitions/{policySetDefinitionName}/versions/{policyDefinitionVersion}?api-version=2025-11-01

URI 매개 변수

Name In(다음 안에) 필수 형식 Description
policyDefinitionVersion
path True

string

pattern: ^\d+\.\d+\.\d+$

정책 집합 정의 버전입니다. 형식은 x.y.z이며, 여기서 x는 주요 버전 번호, y는 부(minor version number), z는 패치 번호입니다

policySetDefinitionName
path True

string

pattern: ^[^<>*%&:\?.+/]*[^<>*%&:\?.+/ ]+$

정책 집합 정의의 이름입니다.

subscriptionId
path True

string (uuid)

대상 구독의 ID입니다. 값은 UUID여야 합니다.

api-version
query True

string

minLength: 1

이 작업에 사용할 API 버전입니다.

요청 본문

Name 필수 형식 Description
properties.policyDefinitions True

PolicyDefinitionReference[]

정책 정의 참조의 배열입니다.

properties.description

string

정책 집합 정의 설명입니다.

properties.displayName

string

정책 집합 정의의 표시 이름입니다.

properties.metadata

정책 집합 정의 메타데이터입니다. 메타데이터는 열려 있는 종료된 개체이며 일반적으로 키 값 쌍의 컬렉션입니다.

properties.parameters

<string,  ParameterDefinitionsValue>

정책 정의 참조에 사용할 수 있는 정책 집합 정의 매개 변수입니다.

properties.policyDefinitionGroups

PolicyDefinitionGroup[]

정책 집합 정의 내의 정책 정의 참조 그룹을 설명하는 메타데이터입니다.

properties.policyType

PolicyType

정책 정의의 형식입니다. 가능한 값은 NotSpecified, BuiltIn, Custom 및 Static입니다.

properties.version

string

#.#.# 형식의 정책 집합 정의 버전입니다.

응답

Name 형식 Description
200 OK

PolicySetDefinitionVersion

리소스 'PolicySetDefinitionVersion' 업데이트 작업이 성공했습니다

201 Created

PolicySetDefinitionVersion

리소스 'PolicySetDefinitionVersion' create 작업이 성공했습니다

Other Status Codes

ErrorResponse

예기치 않은 오류 응답입니다.

보안

azure_auth

Azure Active Directory OAuth2 Flow.

형식: oauth2
Flow: implicit
권한 부여 URL: https://login.microsoftonline.com/common/oauth2/authorize

범위

Name Description
user_impersonation 사용자 계정 가장

예제

Create or update a policy set definition version

샘플 요청

PUT https://management.azure.com/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policySetDefinitions/CostManagement/versions/1.2.1?api-version=2025-11-01

{
  "properties": {
    "description": "Policies to enforce low cost storage SKUs",
    "displayName": "Cost Management",
    "metadata": {
      "category": "Cost Management"
    },
    "parameters": {
      "namePrefix": {
        "type": "String",
        "defaultValue": "myPrefix",
        "metadata": {
          "displayName": "Prefix to enforce on resource names"
        }
      }
    },
    "policyDefinitions": [
      {
        "parameters": {
          "listOfAllowedSKUs": {
            "value": [
              "Standard_GRS",
              "Standard_LRS"
            ]
          }
        },
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
        "policyDefinitionReferenceId": "Limit_Skus"
      },
      {
        "parameters": {
          "prefix": {
            "value": "[parameters('namePrefix')]"
          },
          "suffix": {
            "value": "-LC"
          }
        },
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
        "policyDefinitionReferenceId": "Resource_Naming"
      }
    ],
    "version": "1.2.1"
  }
}

샘플 응답

{
  "name": "1.2.1",
  "type": "Microsoft.Authorization/policySetDefinitions/versions",
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policySetDefinitions/CostManagement/versions/1.2.1",
  "properties": {
    "description": "Policies to enforce low cost storage SKUs",
    "displayName": "Cost Management",
    "metadata": {
      "category": "Cost Management"
    },
    "parameters": {
      "namePrefix": {
        "type": "String",
        "defaultValue": "myPrefix",
        "metadata": {
          "displayName": "Prefix to enforce on resource names"
        }
      }
    },
    "policyDefinitions": [
      {
        "definitionVersion": "1.*.*",
        "parameters": {
          "listOfAllowedSKUs": {
            "value": [
              "Standard_GRS",
              "Standard_LRS"
            ]
          }
        },
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
        "policyDefinitionReferenceId": "Limit_Skus"
      },
      {
        "definitionVersion": "1.*.*",
        "parameters": {
          "prefix": {
            "value": "[parameters('namePrefix')]"
          },
          "suffix": {
            "value": "-LC"
          }
        },
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
        "policyDefinitionReferenceId": "Resource_Naming"
      }
    ],
    "version": "1.2.1"
  }
}
{
  "name": "1.2.1",
  "type": "Microsoft.Authorization/policySetDefinitions/versions",
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policySetDefinitions/CostManagement/versions/1.2.1",
  "properties": {
    "description": "Policies to enforce low cost storage SKUs",
    "displayName": "Cost Management",
    "metadata": {
      "category": "Cost Management"
    },
    "parameters": {
      "namePrefix": {
        "type": "String",
        "defaultValue": "myPrefix",
        "metadata": {
          "displayName": "Prefix to enforce on resource names"
        }
      }
    },
    "policyDefinitions": [
      {
        "definitionVersion": "1.*.*",
        "parameters": {
          "listOfAllowedSKUs": {
            "value": [
              "Standard_GRS",
              "Standard_LRS"
            ]
          }
        },
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
        "policyDefinitionReferenceId": "Limit_Skus"
      },
      {
        "definitionVersion": "1.*.*",
        "parameters": {
          "prefix": {
            "value": "[parameters('namePrefix')]"
          },
          "suffix": {
            "value": "-LC"
          }
        },
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
        "policyDefinitionReferenceId": "Resource_Naming"
      }
    ],
    "version": "1.2.1"
  }
}

정의

Name Description
createdByType

리소스를 만든 ID의 형식입니다.

ErrorAdditionalInfo

리소스 관리 오류 추가 정보입니다.

ErrorDetail

오류 세부 정보입니다.

ErrorResponse

오류 응답

ParameterDefinitionsValue

정책에 제공할 수 있는 매개변수의 정의.

ParameterDefinitionsValueMetadata

매개 변수에 대한 일반 메타데이터입니다.

ParameterType

매개 변수의 데이터 형식입니다.

ParameterValuesValue

매개변수의 값입니다.

PolicyDefinitionGroup

정책 정의 그룹입니다.

PolicyDefinitionReference

정책 정의 참조.

PolicySetDefinitionVersion

정책 집합 정의 버전입니다.

PolicyType

정책 정의의 형식입니다. 가능한 값은 NotSpecified, BuiltIn, Custom 및 Static입니다.

systemData

리소스의 생성 및 마지막 수정과 관련된 메타데이터입니다.

createdByType

리소스를 만든 ID의 형식입니다.

Description
User
Application
ManagedIdentity
Key

ErrorAdditionalInfo

리소스 관리 오류 추가 정보입니다.

Name 형식 Description
info

object

추가 정보입니다.

type

string

추가 정보 유형입니다.

ErrorDetail

오류 세부 정보입니다.

Name 형식 Description
additionalInfo

ErrorAdditionalInfo[]

오류 추가 정보입니다.

code

string

오류 코드입니다.

details

ErrorDetail[]

오류 세부 정보입니다.

message

string

오류 메시지입니다.

target

string

오류 대상입니다.

ErrorResponse

오류 응답

Name 형식 Description
error

ErrorDetail

오류 개체입니다.

ParameterDefinitionsValue

정책에 제공할 수 있는 매개변수의 정의.

Name 형식 Description
allowedValues

AllowedValues[]

매개 변수에 허용되는 값입니다.

defaultValue

값이 제공되지 않은 경우 매개 변수의 기본값입니다.

metadata

ParameterDefinitionsValueMetadata

매개 변수에 대한 일반 메타데이터입니다.

schema

자체 정의 JSON 스키마를 사용하여 할당하는 동안 매개 변수 입력의 유효성을 검사합니다. 이 속성은 객체 타입 매개변수에만 지원되며, Json.NET 스키마 2019-09 구현을 따릅니다. 스키마 사용법은 https://json-schema.org/에서, 초안 스키마는 https://www.jsonschemavalidator.net/에서 테스트할 수 있습니다.

type

ParameterType

매개 변수의 데이터 형식입니다.

ParameterDefinitionsValueMetadata

매개 변수에 대한 일반 메타데이터입니다.

Name 형식 Description
assignPermissions

boolean

정책 할당 중 이 매개변수의 자원 ID 또는 자원 범위 값에 대해 Azure 포털이 역할 할당을 생성하도록 true로 설정하세요. 이 속성은 할당 범위 외부에서 권한을 할당하려는 경우에 유용합니다.

description

string

매개 변수에 대한 설명입니다.

displayName

string

매개 변수의 표시 이름입니다.

strongType

string

포털을 통해 정책 정의를 할당할 때 사용됩니다. 사용자가 선택할 수 있는 값의 컨텍스트 인식 목록을 제공합니다.

ParameterType

매개 변수의 데이터 형식입니다.

Description
String

문자열 매개변수 타입.

Array

배열 매개변수 타입.

Object

객체 매개변수 타입.

Boolean

불리언 매개변수 타입.

Integer

정수 매개변수 유형입니다.

Float

float 매개변수 유형입니다.

DateTime

날짜-시간 매개변수 유형입니다.

ParameterValuesValue

매개변수의 값입니다.

Name 형식 Description
value

매개 변수의 값입니다.

PolicyDefinitionGroup

정책 정의 그룹입니다.

Name 형식 Description
additionalMetadataId

string

그룹에 대한 추가 메타데이터를 포함하는 리소스의 리소스 ID입니다.

category

string

그룹의 범주입니다.

description

string

그룹의 설명입니다.

displayName

string

그룹의 표시 이름입니다.

name

string

그룹의 이름입니다.

PolicyDefinitionReference

정책 정의 참조.

Name 형식 Description
definitionVersion

string

사용할 정책 정의의 버전입니다.

effectiveDefinitionVersion

string

사용 중인 정책 정의의 유효한 버전입니다. 이는 $expand 쿼리 매개변수를 통해 요청될 때만 존재합니다.

groupNames

string[]

이 정책 정의 참조가 속한 그룹의 이름입니다.

latestDefinitionVersion

string

최신 정책 정의 버전이 제공됩니다. 이는 $expand 쿼리 매개변수를 통해 요청될 때만 존재합니다.

parameters

<string,  ParameterValuesValue>

참조된 정책 규칙의 매개 변수 값입니다. 키는 매개 변수 이름입니다.

policyDefinitionId

string

정책 정의 또는 정책 집합 정의의 ID입니다.

policyDefinitionReferenceId

string

이 정책 정의 참조에 대한 고유 ID(정책 집합 정의 내)입니다.

PolicySetDefinitionVersion

정책 집합 정의 버전입니다.

Name 형식 Description
id

string (arm-id)

리소스에 대한 정규화된 리소스 ID입니다. 예: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"

name

string

리소스의 이름

properties.description

string

정책 집합 정의 설명입니다.

properties.displayName

string

정책 집합 정의의 표시 이름입니다.

properties.metadata

정책 집합 정의 메타데이터입니다. 메타데이터는 열려 있는 종료된 개체이며 일반적으로 키 값 쌍의 컬렉션입니다.

properties.parameters

<string,  ParameterDefinitionsValue>

정책 정의 참조에 사용할 수 있는 정책 집합 정의 매개 변수입니다.

properties.policyDefinitionGroups

PolicyDefinitionGroup[]

정책 집합 정의 내의 정책 정의 참조 그룹을 설명하는 메타데이터입니다.

properties.policyDefinitions

PolicyDefinitionReference[]

정책 정의 참조의 배열입니다.

properties.policyType

PolicyType

정책 정의의 형식입니다. 가능한 값은 NotSpecified, BuiltIn, Custom 및 Static입니다.

properties.version

string

#.#.# 형식의 정책 집합 정의 버전입니다.

systemData

systemData

Azure Resource Manager 메타데이터에 createdBy 및 modifiedBy 정보가 포함되어 있습니다.

type

string

리소스의 형식입니다. 예: "Microsoft.Compute/virtualMachines" 또는 "Microsoft.Storage/storageAccounts"

PolicyType

정책 정의의 형식입니다. 가능한 값은 NotSpecified, BuiltIn, Custom 및 Static입니다.

Description
NotSpecified

지정되지 않은 정책 정의 유형입니다.

BuiltIn

내장된 정책 정의 유형입니다.

Custom

커스텀 정책 정의 유형입니다.

Static

정적 정책 정의 유형입니다.

systemData

리소스의 생성 및 마지막 수정과 관련된 메타데이터입니다.

Name 형식 Description
createdAt

string (date-time)

리소스 만들기의 타임스탬프(UTC)입니다.

createdBy

string

리소스를 만든 ID입니다.

createdByType

createdByType

리소스를 만든 ID의 형식입니다.

lastModifiedAt

string (date-time)

리소스 마지막 수정의 타임스탬프(UTC)

lastModifiedBy

string

리소스를 마지막으로 수정한 ID입니다.

lastModifiedByType

createdByType

리소스를 마지막으로 수정한 ID의 형식입니다.