Udostępnij za pośrednictwem


Policy Set Definitions - Create Or Update At Management Group

Ta operacja tworzy lub aktualizuje definicję zestawu zasad w danej grupie zarządzania o podanej nazwie.

PUT https://management.azure.com/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Authorization/policySetDefinitions/{policySetDefinitionName}?api-version=2023-04-01

Parametry identyfikatora URI

Nazwa W Wymagane Typ Opis
managementGroupId
path True

string

Identyfikator grupy zarządzania.

policySetDefinitionName
path True

string

Nazwa definicji zestawu zasad do utworzenia.

Wzorzec wyrażenia regularnego: ^[^<>*%&:\?.+/]*[^<>*%&:\?.+/ ]+$

api-version
query True

string

Wersja interfejsu API do użycia dla tej operacji.

Treść żądania

Nazwa Wymagane Typ Opis
properties.policyDefinitions True

PolicyDefinitionReference[]

Tablica odwołań definicji zasad.

properties.description

string

Opis definicji zestawu zasad.

properties.displayName

string

Nazwa wyświetlana definicji zestawu zasad.

properties.metadata

object

Metadane definicji zestawu zasad. Metadane są otwartym obiektem końcowym i zazwyczaj jest kolekcją par klucz-wartość.

properties.parameters

<string,  ParameterDefinitionsValue>

Parametry definicji zestawu zasad, które mogą być używane w odwołaniach definicji zasad.

properties.policyDefinitionGroups

PolicyDefinitionGroup[]

Metadane opisujące grupy odwołań definicji zasad w definicji zestawu zasad.

properties.policyType

policyType

Typ definicji zestawu zasad. Możliwe wartości to NotSpecified, BuiltIn, Custom i Static.

properties.version

string

Wersja definicji zestawu zasad w formacie #.#.#

properties.versions

string[]

Lista dostępnych wersji dla tej definicji zestawu zasad.

Odpowiedzi

Nazwa Typ Opis
200 OK

PolicySetDefinition

OK — zwraca informacje o definicji zestawu zasad.

201 Created

PolicySetDefinition

Utworzono — zwraca informacje o definicji zestawu zasad.

Other Status Codes

CloudError

Odpowiedź na błąd opisująca, dlaczego operacja nie powiodła się.

Zabezpieczenia

azure_auth

Przepływ protokołu OAuth2 usługi Azure Active Directory.

Typ: oauth2
Flow: implicit
Adres URL autoryzacji: https://login.microsoftonline.com/common/oauth2/authorize

Zakresy

Nazwa Opis
user_impersonation personifikacja konta użytkownika

Przykłady

Create or update a policy set definition at management group level
Create or update a policy set definition with groups at management group level

Create or update a policy set definition at management group level

Przykładowe żądanie

PUT https://management.azure.com/providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/CostManagement?api-version=2023-04-01

{
  "properties": {
    "displayName": "Cost Management",
    "description": "Policies to enforce low cost storage SKUs",
    "metadata": {
      "category": "Cost Management"
    },
    "policyDefinitions": [
      {
        "policyDefinitionId": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
        "policyDefinitionReferenceId": "Limit_Skus",
        "parameters": {
          "listOfAllowedSKUs": {
            "value": [
              "Standard_GRS",
              "Standard_LRS"
            ]
          }
        }
      },
      {
        "policyDefinitionId": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
        "policyDefinitionReferenceId": "Resource_Naming",
        "parameters": {
          "prefix": {
            "value": "DeptA"
          },
          "suffix": {
            "value": "-LC"
          }
        }
      }
    ]
  }
}

Przykładowa odpowiedź

{
  "id": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/CostManagement",
  "type": "Microsoft.Authorization/policySetDefinitions",
  "name": "CostManagement",
  "properties": {
    "displayName": "Cost Management",
    "description": "Policies to enforce low cost storage SKUs",
    "metadata": {
      "category": "Cost Management"
    },
    "version": "1.2.1",
    "versions": [
      "1.2.1",
      "1.0.0"
    ],
    "policyDefinitions": [
      {
        "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
        "definitionVersion": "1.*.*",
        "policyDefinitionReferenceId": "Limit_Skus",
        "parameters": {
          "listOfAllowedSKUs": {
            "value": [
              "Standard_GRS",
              "Standard_LRS"
            ]
          }
        }
      },
      {
        "policyDefinitionId": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
        "definitionVersion": "1.*.*",
        "policyDefinitionReferenceId": "Resource_Naming",
        "parameters": {
          "prefix": {
            "value": "DeptA"
          },
          "suffix": {
            "value": "-LC"
          }
        }
      }
    ]
  }
}
{
  "id": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/CostManagement",
  "type": "Microsoft.Authorization/policySetDefinitions",
  "name": "CostManagement",
  "properties": {
    "displayName": "Cost Management",
    "description": "Policies to enforce low cost storage SKUs",
    "metadata": {
      "category": "Cost Management"
    },
    "policyDefinitions": [
      {
        "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
        "definitionVersion": "1.*.*",
        "policyDefinitionReferenceId": "Limit_Skus",
        "parameters": {
          "listOfAllowedSKUs": {
            "value": [
              "Standard_GRS",
              "Standard_LRS"
            ]
          }
        }
      },
      {
        "policyDefinitionId": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
        "definitionVersion": "1.*.*",
        "policyDefinitionReferenceId": "Resource_Naming",
        "parameters": {
          "prefix": {
            "value": "DeptA"
          },
          "suffix": {
            "value": "-LC"
          }
        }
      }
    ]
  }
}

Create or update a policy set definition with groups at management group level

Przykładowe żądanie

PUT https://management.azure.com/providers/Microsoft.Management/managementGroups/MyManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/CostManagement?api-version=2023-04-01

{
  "properties": {
    "displayName": "Cost Management",
    "description": "Policies to enforce low cost storage SKUs",
    "metadata": {
      "category": "Cost Management"
    },
    "policyDefinitionGroups": [
      {
        "name": "CostSaving",
        "displayName": "Cost Management Policies",
        "description": "Policies designed to control spend within a subscription."
      },
      {
        "name": "Organizational",
        "displayName": "Organizational Policies",
        "description": "Policies that help enforce resource organization standards within a subscription."
      }
    ],
    "policyDefinitions": [
      {
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
        "policyDefinitionReferenceId": "Limit_Skus",
        "groupNames": [
          "CostSaving"
        ],
        "parameters": {
          "listOfAllowedSKUs": {
            "value": [
              "Standard_GRS",
              "Standard_LRS"
            ]
          }
        }
      },
      {
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
        "policyDefinitionReferenceId": "Resource_Naming",
        "groupNames": [
          "Organizational"
        ],
        "parameters": {
          "prefix": {
            "value": "DeptA"
          },
          "suffix": {
            "value": "-LC"
          }
        }
      }
    ]
  }
}

Przykładowa odpowiedź

{
  "id": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/CostManagement",
  "type": "Microsoft.Authorization/policySetDefinitions",
  "name": "CostManagement",
  "properties": {
    "displayName": "Cost Management",
    "description": "Policies to enforce low cost storage SKUs",
    "metadata": {
      "category": "Cost Management"
    },
    "version": "1.2.1",
    "versions": [
      "1.2.1",
      "1.0.0"
    ],
    "policyDefinitionGroups": [
      {
        "name": "CostSaving",
        "displayName": "Cost Management Policies",
        "description": "Policies designed to control spend within a subscription."
      },
      {
        "name": "Organizational",
        "displayName": "Organizational Policies",
        "description": "Policies that help enforce resource organization standards within a subscription."
      }
    ],
    "policyDefinitions": [
      {
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
        "definitionVersion": "1.*.*",
        "policyDefinitionReferenceId": "Limit_Skus",
        "groupNames": [
          "CostSaving"
        ],
        "parameters": {
          "listOfAllowedSKUs": {
            "value": [
              "Standard_GRS",
              "Standard_LRS"
            ]
          }
        }
      },
      {
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
        "definitionVersion": "1.*.*",
        "policyDefinitionReferenceId": "Resource_Naming",
        "groupNames": [
          "Organizational"
        ],
        "parameters": {
          "prefix": {
            "value": "DeptA"
          },
          "suffix": {
            "value": "-LC"
          }
        }
      }
    ]
  }
}
{
  "id": "/providers/Microsoft.Management/managementgroups/MyManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/CostManagement",
  "type": "Microsoft.Authorization/policySetDefinitions",
  "name": "CostManagement",
  "properties": {
    "displayName": "Cost Management",
    "description": "Policies to enforce low cost storage SKUs",
    "metadata": {
      "category": "Cost Management"
    },
    "version": "1.2.1",
    "versions": [
      "1.2.1",
      "1.0.0"
    ],
    "policyDefinitionGroups": [
      {
        "name": "CostSaving",
        "displayName": "Cost Management Policies",
        "description": "Policies designed to control spend within a subscription."
      },
      {
        "name": "Organizational",
        "displayName": "Organizational Policies",
        "description": "Policies that help enforce resource organization standards within a subscription."
      }
    ],
    "policyDefinitions": [
      {
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
        "definitionVersion": "1.*.*",
        "policyDefinitionReferenceId": "Limit_Skus",
        "groupNames": [
          "CostSaving"
        ],
        "parameters": {
          "listOfAllowedSKUs": {
            "value": [
              "Standard_GRS",
              "Standard_LRS"
            ]
          }
        }
      },
      {
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
        "definitionVersion": "1.*.*",
        "policyDefinitionReferenceId": "Resource_Naming",
        "groupNames": [
          "Organizational"
        ],
        "parameters": {
          "prefix": {
            "value": "DeptA"
          },
          "suffix": {
            "value": "-LC"
          }
        }
      }
    ]
  }
}

Definicje

Nazwa Opis
CloudError

Odpowiedź na błąd z operacji zasad.

createdByType

Typ tożsamości, która utworzyła zasób.

ErrorAdditionalInfo

Dodatkowe informacje o błędzie zarządzania zasobami.

ErrorResponse

Odpowiedź na błąd

Metadata

Ogólne metadane parametru.

ParameterDefinitionsValue

Definicja parametru, który można podać do zasad.

parameterType

Typ danych parametru.

ParameterValuesValue

Wartość parametru.

PolicyDefinitionGroup

Grupa definicji zasad.

PolicyDefinitionReference

Odwołanie do definicji zasad.

PolicySetDefinition

Definicja zestawu zasad.

policyType

Typ definicji zestawu zasad. Możliwe wartości to NotSpecified, BuiltIn, Custom i Static.

systemData

Metadane dotyczące tworzenia i ostatniej modyfikacji zasobu.

CloudError

Odpowiedź na błąd z operacji zasad.

Nazwa Typ Opis
error

ErrorResponse

Odpowiedź na błąd
Typowa odpowiedź na błędy dla wszystkich interfejsów API usługi Azure Resource Manager w celu zwrócenia szczegółów błędu dla operacji, które zakończyły się niepowodzeniem. (Jest to również zgodne z formatem odpowiedzi na błąd OData).

createdByType

Typ tożsamości, która utworzyła zasób.

Nazwa Typ Opis
Application

string

Key

string

ManagedIdentity

string

User

string

ErrorAdditionalInfo

Dodatkowe informacje o błędzie zarządzania zasobami.

Nazwa Typ Opis
info

object

Dodatkowe informacje.

type

string

Dodatkowy typ informacji.

ErrorResponse

Odpowiedź na błąd

Nazwa Typ Opis
additionalInfo

ErrorAdditionalInfo[]

Dodatkowe informacje o błędzie.

code

string

Kod błędu.

details

ErrorResponse[]

Szczegóły błędu.

message

string

Komunikat o błędzie.

target

string

Element docelowy błędu.

Metadata

Ogólne metadane parametru.

Nazwa Typ Opis
assignPermissions

boolean

Ustaw wartość true, aby witryna Azure Portal utworzyła przypisania ról dla identyfikatora zasobu lub wartości zakresu zasobu tego parametru podczas przypisywania zasad. Ta właściwość jest przydatna w przypadku, gdy chcesz przypisać uprawnienia poza zakresem przypisania.

description

string

Opis parametru.

displayName

string

Nazwa wyświetlana parametru.

strongType

string

Używane podczas przypisywania definicji zasad za pośrednictwem portalu. Udostępnia kontekstową listę wartości do wyboru przez użytkownika.

ParameterDefinitionsValue

Definicja parametru, który można podać do zasad.

Nazwa Typ Opis
allowedValues

object[]

Dozwolone wartości parametru.

defaultValue

object

Wartość domyślna parametru, jeśli nie podano żadnej wartości.

metadata

Metadata

Ogólne metadane parametru.

schema

object

Zapewnia walidację danych wejściowych parametrów podczas przypisywania przy użyciu schematu JSON zdefiniowanego samodzielnie. Ta właściwość jest obsługiwana tylko dla parametrów typu obiektu i jest zgodna z implementacją Json.NET Schema 2019-09. Aby dowiedzieć się więcej na temat używania schematów, zobacz https://json-schema.org/ i testowanie schematów roboczych w witrynie https://www.jsonschemavalidator.net/.

type

parameterType

Typ danych parametru.

parameterType

Typ danych parametru.

Nazwa Typ Opis
Array

string

Boolean

string

DateTime

string

Float

string

Integer

string

Object

string

String

string

ParameterValuesValue

Wartość parametru.

Nazwa Typ Opis
value

object

Wartość parametru.

PolicyDefinitionGroup

Grupa definicji zasad.

Nazwa Typ Opis
additionalMetadataId

string

Identyfikator zasobu, który zawiera dodatkowe metadane dotyczące grupy.

category

string

Kategoria grupy.

description

string

Opis grupy.

displayName

string

Nazwa wyświetlana grupy.

name

string

Nazwa grupy.

PolicyDefinitionReference

Odwołanie do definicji zasad.

Nazwa Typ Opis
definitionVersion

string

Wersja definicji zasad do użycia.

effectiveDefinitionVersion

string

Obowiązująca wersja definicji zasad w użyciu. Jest to obecne tylko w przypadku żądania za pośrednictwem parametru zapytania $expand.

groupNames

string[]

Nazwa grup, do których należy odwołanie do tej definicji zasad.

latestDefinitionVersion

string

Dostępna jest najnowsza wersja definicji zasad. Jest to obecne tylko w przypadku żądania za pośrednictwem parametru zapytania $expand.

parameters

<string,  ParameterValuesValue>

Wartości parametrów dla reguły zasad, do których odwołuje się odwołanie. Klucze są nazwami parametrów.

policyDefinitionId

string

Identyfikator definicji zasad lub definicji zestawu zasad.

policyDefinitionReferenceId

string

Unikatowy identyfikator (w definicji zestawu zasad) dla tej definicji zasad.

PolicySetDefinition

Definicja zestawu zasad.

Nazwa Typ Opis
id

string

Identyfikator definicji zestawu zasad.

name

string

Nazwa definicji zestawu zasad.

properties.description

string

Opis definicji zestawu zasad.

properties.displayName

string

Nazwa wyświetlana definicji zestawu zasad.

properties.metadata

object

Metadane definicji zestawu zasad. Metadane są otwartym obiektem końcowym i zazwyczaj jest kolekcją par klucz-wartość.

properties.parameters

<string,  ParameterDefinitionsValue>

Parametry definicji zestawu zasad, które mogą być używane w odwołaniach definicji zasad.

properties.policyDefinitionGroups

PolicyDefinitionGroup[]

Metadane opisujące grupy odwołań definicji zasad w definicji zestawu zasad.

properties.policyDefinitions

PolicyDefinitionReference[]

Tablica odwołań definicji zasad.

properties.policyType

policyType

Typ definicji zestawu zasad. Możliwe wartości to NotSpecified, BuiltIn, Custom i Static.

properties.version

string

Wersja definicji zestawu zasad w formacie #.#.#

properties.versions

string[]

Lista dostępnych wersji dla tej definicji zestawu zasad.

systemData

systemData

Metadane systemowe odnoszące się do tego zasobu.

type

string

Typ zasobu (Microsoft.Authorization/policySetDefinitions).

policyType

Typ definicji zestawu zasad. Możliwe wartości to NotSpecified, BuiltIn, Custom i Static.

Nazwa Typ Opis
BuiltIn

string

Custom

string

NotSpecified

string

Static

string

systemData

Metadane dotyczące tworzenia i ostatniej modyfikacji zasobu.

Nazwa Typ Opis
createdAt

string

Sygnatura czasowa tworzenia zasobu (UTC).

createdBy

string

Tożsamość, która utworzyła zasób.

createdByType

createdByType

Typ tożsamości, która utworzyła zasób.

lastModifiedAt

string

Znacznik czasu ostatniej modyfikacji zasobu (UTC)

lastModifiedBy

string

Tożsamość, która ostatnio zmodyfikowała zasób.

lastModifiedByType

createdByType

Typ tożsamości, która ostatnio zmodyfikowała zasób.