Share via


Policy Set Definitions - Create Or Update

Mit diesem Vorgang wird eine Richtliniensatzdefinition im angegebenen Abonnement mit dem angegebenen Namen erstellt oder aktualisiert.

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

URI-Parameter

Name In Erforderlich Typ Beschreibung
policySetDefinitionName
path True

string

Der Name der zu erstellenden Richtliniensatzdefinition.

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

subscriptionId
path True

string

uuid

Hierbei handelt es sich um die ID des Zielabonnements. Der Wert muss eine UUID sein.

api-version
query True

string

Hierbei handelt es sich um die für diesen Vorgang zu verwendende API-Version.

Anforderungstext

Name Erforderlich Typ Beschreibung
properties.policyDefinitions True

PolicyDefinitionReference[]

Ein Array von Richtliniendefinitionsverweisen.

properties.description

string

Die Beschreibung der Richtliniensatzdefinition.

properties.displayName

string

Der Anzeigename der Richtliniensatzdefinition.

properties.metadata

object

Die Metadaten der Richtliniensatzdefinition. Metadaten sind ein offenes Endobjekt und in der Regel eine Sammlung von Schlüsselwertpaaren.

properties.parameters

<string,  ParameterDefinitionsValue>

Die Richtliniensatzdefinitionsparameter, die in Richtliniendefinitionsverweisen verwendet werden können.

properties.policyDefinitionGroups

PolicyDefinitionGroup[]

Die Metadaten, die Gruppen von Richtliniendefinitionsverweisen innerhalb der Richtliniensatzdefinition beschreiben.

properties.policyType

policyType

Der Typ der Richtliniensatzdefinition. Mögliche Werte sind NotSpecified, BuiltIn, Custom und Static.

properties.version

string

Die Definitionsversion des Richtliniensatzes im #.#.#.#-Format.

properties.versions

string[]

Eine Liste der verfügbaren Versionen für diese Richtliniensatzdefinition.

Antworten

Name Typ Beschreibung
200 OK

PolicySetDefinition

OK: Gibt Informationen zur Richtliniensatzdefinition zurück.

201 Created

PolicySetDefinition

Erstellt: Gibt Informationen zur Richtliniensatzdefinition zurück.

Other Status Codes

CloudError

Fehlerantwort mit Beschreibung des Grunds für den Fehler.

Sicherheit

azure_auth

Azure Active Directory OAuth2-Flow.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Beschreibung
user_impersonation Identitätswechsel Ihres Benutzerkontos

Beispiele

Create or update a policy set definition
Create or update a policy set definition with groups

Create or update a policy set definition

Sample Request

PUT https://management.azure.com/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/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"
    },
    "parameters": {
      "namePrefix": {
        "type": "String",
        "defaultValue": "myPrefix",
        "metadata": {
          "displayName": "Prefix to enforce on resource names"
        }
      }
    },
    "policyDefinitions": [
      {
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
        "policyDefinitionReferenceId": "Limit_Skus",
        "parameters": {
          "listOfAllowedSKUs": {
            "value": [
              "Standard_GRS",
              "Standard_LRS"
            ]
          }
        }
      },
      {
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
        "policyDefinitionReferenceId": "Resource_Naming",
        "parameters": {
          "prefix": {
            "value": "[parameters('namePrefix')]"
          },
          "suffix": {
            "value": "-LC"
          }
        }
      }
    ]
  }
}

Sample Response

{
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/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"
    ],
    "parameters": {
      "namePrefix": {
        "type": "String",
        "defaultValue": "myPrefix",
        "metadata": {
          "displayName": "Prefix to enforce on resource names"
        }
      }
    },
    "policyDefinitions": [
      {
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
        "policyDefinitionReferenceId": "Limit_Skus",
        "parameters": {
          "listOfAllowedSKUs": {
            "value": [
              "Standard_GRS",
              "Standard_LRS"
            ]
          }
        }
      },
      {
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
        "policyDefinitionReferenceId": "Resource_Naming",
        "parameters": {
          "prefix": {
            "value": "[parameters('namePrefix')]"
          },
          "suffix": {
            "value": "-LC"
          }
        }
      }
    ]
  }
}
{
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/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"
    },
    "parameters": {
      "namePrefix": {
        "type": "String",
        "defaultValue": "myPrefix",
        "metadata": {
          "displayName": "Prefix to enforce on resource names"
        }
      }
    },
    "policyDefinitions": [
      {
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
        "policyDefinitionReferenceId": "Limit_Skus",
        "parameters": {
          "listOfAllowedSKUs": {
            "value": [
              "Standard_GRS",
              "Standard_LRS"
            ]
          }
        }
      },
      {
        "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
        "policyDefinitionReferenceId": "Resource_Naming",
        "parameters": {
          "prefix": {
            "value": "[parameters('namePrefix')]"
          },
          "suffix": {
            "value": "-LC"
          }
        }
      }
    ]
  }
}

Create or update a policy set definition with groups

Sample Request

PUT https://management.azure.com/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/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"
          }
        }
      }
    ]
  }
}

Sample Response

{
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/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",
        "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"
          }
        }
      }
    ]
  }
}
{
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/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",
        "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"
          }
        }
      }
    ]
  }
}

Definitionen

Name Beschreibung
CloudError

Eine Fehlerantwort eines Richtlinienvorgangs.

createdByType

Der Identitätstyp, der die Ressource erstellt hat.

ErrorAdditionalInfo

Zusätzliche Informationen zum Ressourcenverwaltungsfehler.

ErrorResponse

Fehlerantwort

Metadata

Allgemeine Metadaten für den Parameter.

ParameterDefinitionsValue

Die Definition eines Parameters, der für die Richtlinie bereitgestellt werden kann.

parameterType

Der Datentyp des Parameters.

ParameterValuesValue

Der Wert eines Parameters.

PolicyDefinitionGroup

Die Richtliniendefinitionsgruppe.

PolicyDefinitionReference

Der Richtliniendefinitionsverweis.

PolicySetDefinition

Die Richtliniensatzdefinition.

policyType

Der Typ der Richtliniensatzdefinition. Mögliche Werte sind NotSpecified, BuiltIn, Custom und Static.

systemData

Metadaten, die sich auf die Erstellung und letzte Änderung der Ressource beziehen.

CloudError

Eine Fehlerantwort eines Richtlinienvorgangs.

Name Typ Beschreibung
error

ErrorResponse

Fehlerantwort
Allgemeine Fehlerantwort für alle Azure Resource Manager-APIs, zur Rückgabe von Fehlerdetails für fehlgeschlagene Vorgänge. (Dies folgt auch dem OData-Fehlerantwortformat.)

createdByType

Der Identitätstyp, der die Ressource erstellt hat.

Name Typ Beschreibung
Application

string

Key

string

ManagedIdentity

string

User

string

ErrorAdditionalInfo

Zusätzliche Informationen zum Ressourcenverwaltungsfehler.

Name Typ Beschreibung
info

object

Zusätzliche Informationen.

type

string

Typ der zusätzlichen Informationen.

ErrorResponse

Fehlerantwort

Name Typ Beschreibung
additionalInfo

ErrorAdditionalInfo[]

Die zusätzlichen Fehlerinformationen.

code

string

Der Fehlercode.

details

ErrorResponse[]

Die Fehlerdetails.

message

string

Die Fehlermeldung.

target

string

Das Fehlerziel.

Metadata

Allgemeine Metadaten für den Parameter.

Name Typ Beschreibung
assignPermissions

boolean

Legen Sie diesen Wert auf true fest, damit Azure-Portal während der Richtlinienzuweisung Rollenzuweisungen für die Ressourcen-ID oder den Ressourcenbereichswert dieses Parameters erstellen. Diese Eigenschaft ist hilfreich, wenn Sie Berechtigungen außerhalb des Zuweisungsbereichs zuweisen möchten.

description

string

Die Beschreibung des Parameters.

displayName

string

Der Anzeigename für den Parameter.

strongType

string

Wird beim Zuweisen der Richtliniendefinition über das Portal verwendet. Stellt eine kontextbezogene Liste von Werten bereit, aus der der Benutzer auswählen kann.

ParameterDefinitionsValue

Die Definition eines Parameters, der für die Richtlinie bereitgestellt werden kann.

Name Typ Beschreibung
allowedValues

object[]

Die zulässigen Werte für den Parameter.

defaultValue

object

Der Standardwert für den Parameter, wenn kein Wert angegeben wird.

metadata

Metadata

Allgemeine Metadaten für den Parameter.

schema

object

Ermöglicht die Validierung von Parametereingaben während der Zuweisung mithilfe eines selbst definierten JSON-Schemas. Diese Eigenschaft wird nur für Objekttypparameter unterstützt und folgt der 2019-09-Implementierung des Json.NET-Schemas. Weitere Informationen zur Verwendung von Schemas finden Sie unter https://json-schema.org/. Das Testen von Schemas ist unter https://www.jsonschemavalidator.net/ möglich.

type

parameterType

Der Datentyp des Parameters.

parameterType

Der Datentyp des Parameters.

Name Typ Beschreibung
Array

string

Boolean

string

DateTime

string

Float

string

Integer

string

Object

string

String

string

ParameterValuesValue

Der Wert eines Parameters.

Name Typ Beschreibung
value

object

Der Wert des Parameters.

PolicyDefinitionGroup

Die Richtliniendefinitionsgruppe.

Name Typ Beschreibung
additionalMetadataId

string

Eine Ressourcen-ID einer Ressource, die zusätzliche Metadaten zu der Gruppe enthält.

category

string

Die Kategorie der Gruppe.

description

string

Die Beschreibung der Gruppe.

displayName

string

Der Anzeigename der Gruppe.

name

string

Der Name der Gruppe.

PolicyDefinitionReference

Der Richtliniendefinitionsverweis.

Name Typ Beschreibung
groupNames

string[]

Der Name der Gruppen, zu denen dieser Richtliniendefinitionsverweis gehört.

parameters

<string,  ParameterValuesValue>

Die Parameterwerte für die Richtlinienregel, auf die verwiesen wird. Die Schlüssel sind die Parameternamen.

policyDefinitionId

string

Die ID der Richtliniendefinition oder Richtliniensatzdefinition.

policyDefinitionReferenceId

string

Eine eindeutige ID (innerhalb der Richtliniensatzdefinition) für diese Richtliniendefinitionsreferenz.

PolicySetDefinition

Die Richtliniensatzdefinition.

Name Typ Beschreibung
id

string

Die ID der Richtliniensatzdefinition.

name

string

Der Name der Richtliniensatzdefinition.

properties.description

string

Die Beschreibung der Richtliniensatzdefinition.

properties.displayName

string

Der Anzeigename der Richtliniensatzdefinition.

properties.metadata

object

Die Metadaten der Richtliniensatzdefinition. Metadaten sind ein offenes Endobjekt und in der Regel eine Sammlung von Schlüsselwertpaaren.

properties.parameters

<string,  ParameterDefinitionsValue>

Die Richtliniensatzdefinitionsparameter, die in Richtliniendefinitionsverweisen verwendet werden können.

properties.policyDefinitionGroups

PolicyDefinitionGroup[]

Die Metadaten, die Gruppen von Richtliniendefinitionsverweisen innerhalb der Richtliniensatzdefinition beschreiben.

properties.policyDefinitions

PolicyDefinitionReference[]

Ein Array von Richtliniendefinitionsverweisen.

properties.policyType

policyType

Der Typ der Richtliniensatzdefinition. Mögliche Werte sind NotSpecified, BuiltIn, Custom und Static.

properties.version

string

Die Definitionsversion des Richtliniensatzes im #.#.#.#-Format.

properties.versions

string[]

Eine Liste der verfügbaren Versionen für diese Richtliniensatzdefinition.

systemData

systemData

Die Systemmetadaten, die sich auf diese Ressource beziehen.

type

string

Der Typ der Ressource (Microsoft.Authorization/policySetDefinitions).

policyType

Der Typ der Richtliniensatzdefinition. Mögliche Werte sind NotSpecified, BuiltIn, Custom und Static.

Name Typ Beschreibung
BuiltIn

string

Custom

string

NotSpecified

string

Static

string

systemData

Metadaten, die sich auf die Erstellung und letzte Änderung der Ressource beziehen.

Name Typ Beschreibung
createdAt

string

Der Zeitstempel der Ressourcenerstellung (UTC).

createdBy

string

Die Identität, die die Ressource erstellt hat.

createdByType

createdByType

Der Identitätstyp, der die Ressource erstellt hat.

lastModifiedAt

string

Der Zeitstempel der letzten Änderung der Ressource (UTC)

lastModifiedBy

string

Die Identität, die die Ressource zuletzt geändert hat.

lastModifiedByType

createdByType

Der Identitätstyp, der die Ressource zuletzt geändert hat.