Share via


Policy Definitions - Create Or Update

Szabályzatdefiníciót hoz létre vagy frissít egy előfizetésben.
Ez a művelet létrehoz vagy frissít egy szabályzatdefiníciót az adott előfizetésben a megadott névvel.

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

URI-paraméterek

Name In Kötelező Típus Description
policyDefinitionName
path True

string

A létrehozandó szabályzatdefiníció neve.

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

subscriptionId
path True

string

uuid

A cél-előfizetés azonosítója. Az értéknek UUID-nak kell lennie.

api-version
query True

string

A művelethez használandó API-verzió.

Kérelem törzse

Name Típus Description
properties.description

string

A szabályzatdefiníció leírása.

properties.displayName

string

A szabályzatdefiníció megjelenítendő neve.

properties.metadata

object

A szabályzatdefiníció metaadatai. A metaadatok egy nyitott befejezett objektum, amely általában kulcsértékpárok gyűjteménye.

properties.mode

string

A szabályzatdefiníciós mód. Néhány példa: Mind, Indexelt, Microsoft.KeyVault.Data.

properties.parameters

<string,  ParameterDefinitionsValue>

A szabályzatszabályban használt paraméterek paraméterdefiníciói. A kulcsok a paraméternevek.

properties.policyRule

object

A szabályzatszabály.

properties.policyType

policyType

A szabályzatdefiníció típusa. Lehetséges értékek: NotSpecified, BuiltIn, Custom és Static.

properties.version

string

A szabályzatdefiníció verziója #.#.# formátumban.

properties.versions

string[]

A szabályzatdefiníció elérhető verzióinak listája.

Válaszok

Name Típus Description
201 Created

PolicyDefinition

Létrehozva – A szabályzatdefinícióval kapcsolatos információkat adja vissza.

Other Status Codes

CloudError

Hibaválasz, amely leírja, hogy a művelet miért hiúsult meg.

Biztonság

azure_auth

Azure Active Directory OAuth2 Flow.

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

Scopes

Name Description
user_impersonation felhasználói fiók megszemélyesítése

Példák

Create or update a policy definition
Create or update a policy definition with advanced parameters

Create or update a policy definition

Sample Request

PUT https://management.azure.com/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming?api-version=2023-04-01

{
  "properties": {
    "mode": "All",
    "displayName": "Enforce resource naming convention",
    "description": "Force resource names to begin with given 'prefix' and/or end with given 'suffix'",
    "metadata": {
      "category": "Naming"
    },
    "policyRule": {
      "if": {
        "not": {
          "field": "name",
          "like": "[concat(parameters('prefix'), '*', parameters('suffix'))]"
        }
      },
      "then": {
        "effect": "deny"
      }
    },
    "parameters": {
      "prefix": {
        "type": "String",
        "metadata": {
          "displayName": "Prefix",
          "description": "Resource name prefix"
        }
      },
      "suffix": {
        "type": "String",
        "metadata": {
          "displayName": "Suffix",
          "description": "Resource name suffix"
        }
      }
    }
  }
}

Sample Response

{
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
  "type": "Microsoft.Authorization/policyDefinitions",
  "name": "ResourceNaming",
  "properties": {
    "mode": "All",
    "displayName": "Naming Convention",
    "description": "Force resource names to begin with 'prefix' and end with 'suffix'",
    "metadata": {
      "category": "Naming"
    },
    "version": "1.2.1",
    "versions": [
      "1.2.1",
      "1.0.0"
    ],
    "policyRule": {
      "if": {
        "not": {
          "field": "name",
          "like": "[concat(parameters('prefix'), '*', parameters('suffix'))]"
        }
      },
      "then": {
        "effect": "deny"
      }
    },
    "parameters": {
      "prefix": {
        "type": "String",
        "metadata": {
          "displayName": "Prefix",
          "description": "Resource name prefix"
        }
      },
      "suffix": {
        "type": "String",
        "metadata": {
          "displayName": "Suffix",
          "description": "Resource name suffix"
        }
      }
    },
    "policyType": "Custom"
  }
}

Create or update a policy definition with advanced parameters

Sample Request

PUT https://management.azure.com/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/EventHubDiagnosticLogs?api-version=2023-04-01

{
  "properties": {
    "mode": "Indexed",
    "displayName": "Event Hubs should have diagnostic logging enabled",
    "description": "Audit enabling of logs and retain them up to a year. This enables recreation of activity trails for investigation purposes when a security incident occurs or your network is compromised",
    "metadata": {
      "category": "Event Hub"
    },
    "policyRule": {
      "if": {
        "field": "type",
        "equals": "Microsoft.EventHub/namespaces"
      },
      "then": {
        "effect": "AuditIfNotExists",
        "details": {
          "type": "Microsoft.Insights/diagnosticSettings",
          "existenceCondition": {
            "allOf": [
              {
                "field": "Microsoft.Insights/diagnosticSettings/logs[*].retentionPolicy.enabled",
                "equals": "true"
              },
              {
                "field": "Microsoft.Insights/diagnosticSettings/logs[*].retentionPolicy.days",
                "equals": "[parameters('requiredRetentionDays')]"
              }
            ]
          }
        }
      }
    },
    "parameters": {
      "requiredRetentionDays": {
        "type": "Integer",
        "defaultValue": 365,
        "allowedValues": [
          0,
          30,
          90,
          180,
          365
        ],
        "metadata": {
          "displayName": "Required retention (days)",
          "description": "The required diagnostic logs retention in days"
        }
      }
    }
  }
}

Sample Response

{
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
  "type": "Microsoft.Authorization/policyDefinitions",
  "name": "ResourceNaming",
  "properties": {
    "mode": "Indexed",
    "displayName": "Event Hubs should have diagnostic logging enabled",
    "description": "Audit enabling of logs and retain them up to a year. This enables recreation of activity trails for investigation purposes when a security incident occurs or your network is compromised",
    "metadata": {
      "category": "Event Hub"
    },
    "version": "1.2.1",
    "versions": [
      "1.2.1",
      "1.0.0"
    ],
    "policyRule": {
      "if": {
        "field": "type",
        "equals": "Microsoft.EventHub/namespaces"
      },
      "then": {
        "effect": "AuditIfNotExists",
        "details": {
          "type": "Microsoft.Insights/diagnosticSettings",
          "existenceCondition": {
            "allOf": [
              {
                "field": "Microsoft.Insights/diagnosticSettings/logs[*].retentionPolicy.enabled",
                "equals": "true"
              },
              {
                "field": "Microsoft.Insights/diagnosticSettings/logs[*].retentionPolicy.days",
                "equals": "[parameters('requiredRetentionDays')]"
              }
            ]
          }
        }
      }
    },
    "parameters": {
      "requiredRetentionDays": {
        "type": "Integer",
        "defaultValue": 365,
        "allowedValues": [
          0,
          30,
          90,
          180,
          365
        ],
        "metadata": {
          "displayName": "Required retention (days)",
          "description": "The required diagnostic logs retention in days"
        }
      }
    }
  }
}

Definíciók

Name Description
CloudError

Egy szabályzatművelet hibaválasza.

createdByType

Az erőforrást létrehozó identitás típusa.

ErrorAdditionalInfo

Az erőforrás-kezelési hiba további információi.

ErrorResponse

Hibaválasz

Metadata

A paraméter általános metaadatai.

ParameterDefinitionsValue

A szabályzathoz megadható paraméter definíciója.

parameterType

A paraméter adattípusa.

PolicyDefinition

A szabályzatdefiníció.

policyType

A szabályzatdefiníció típusa. Lehetséges értékek: NotSpecified, BuiltIn, Custom és Static.

systemData

Az erőforrás létrehozásával és utolsó módosításával kapcsolatos metaadatok.

CloudError

Egy szabályzatművelet hibaválasza.

Name Típus Description
error

ErrorResponse

Hibaválasz
Az összes Azure Resource Manager API gyakori hibaválasza a sikertelen műveletek hibaadatainak visszaadásához. (Ez az OData hibaválasz formátumát is követi.)

createdByType

Az erőforrást létrehozó identitás típusa.

Name Típus Description
Application

string

Key

string

ManagedIdentity

string

User

string

ErrorAdditionalInfo

Az erőforrás-kezelési hiba további információi.

Name Típus Description
info

object

A további információk.

type

string

A további információtípus.

ErrorResponse

Hibaválasz

Name Típus Description
additionalInfo

ErrorAdditionalInfo[]

A hiba további információi.

code

string

A hibakód.

details

ErrorResponse[]

A hiba részletei.

message

string

A hibaüzenet.

target

string

A hibacél.

Metadata

A paraméter általános metaadatai.

Name Típus Description
assignPermissions

boolean

Állítsa igaz értékre, hogy Azure Portal szerepkör-hozzárendeléseket hozzon létre a paraméter erőforrás-azonosítóján vagy erőforrás-hatókörének értékén a szabályzat-hozzárendelés során. Ez a tulajdonság akkor hasznos, ha a hozzárendelés hatókörén kívül szeretne engedélyeket hozzárendelni.

description

string

A paraméter leírása.

displayName

string

A paraméter megjelenítendő neve.

strongType

string

A szabályzatdefiníció portálon keresztüli hozzárendeléséhez használatos. A felhasználó számára kiválasztandó értékek környezetfüggő listáját tartalmazza.

ParameterDefinitionsValue

A szabályzathoz megadható paraméter definíciója.

Name Típus Description
allowedValues

object[]

A paraméter engedélyezett értékei.

defaultValue

object

A paraméter alapértelmezett értéke, ha nincs megadva érték.

metadata

Metadata

A paraméter általános metaadatai.

schema

object

A paraméterbemenetek ellenőrzését biztosítja a hozzárendelés során egy ön definiált JSON-sémával. Ez a tulajdonság csak objektumtípus-paraméterek esetén támogatott, és a Json.NET Schema 2019-09 implementációt követi. A sémák használatáról és a vázlatsémák https://json-schema.org/ teszteléséről a következő címen tudhat meg többet: https://www.jsonschemavalidator.net/.

type

parameterType

A paraméter adattípusa.

parameterType

A paraméter adattípusa.

Name Típus Description
Array

string

Boolean

string

DateTime

string

Float

string

Integer

string

Object

string

String

string

PolicyDefinition

A szabályzatdefiníció.

Name Típus Alapértelmezett érték Description
id

string

A szabályzatdefiníció azonosítója.

name

string

A szabályzatdefiníció neve.

properties.description

string

A szabályzatdefiníció leírása.

properties.displayName

string

A szabályzatdefiníció megjelenítendő neve.

properties.metadata

object

A szabályzatdefiníció metaadatai. A metaadatok egy nyitott befejezett objektum, amely általában kulcsértékpárok gyűjteménye.

properties.mode

string

Indexed

A szabályzatdefiníciós mód. Néhány példa: Mind, Indexelt, Microsoft.KeyVault.Data.

properties.parameters

<string,  ParameterDefinitionsValue>

A szabályzatszabályban használt paraméterek paraméterdefiníciói. A kulcsok a paraméternevek.

properties.policyRule

object

A szabályzatszabály.

properties.policyType

policyType

A szabályzatdefiníció típusa. Lehetséges értékek: NotSpecified, BuiltIn, Custom és Static.

properties.version

string

A szabályzatdefiníció verziója #.#.# formátumban.

properties.versions

string[]

A szabályzatdefiníció elérhető verzióinak listája.

systemData

systemData

Az erőforráshoz kapcsolódó rendszer metaadatai.

type

string

Az erőforrás típusa (Microsoft.Authorization/policyDefinitions).

policyType

A szabályzatdefiníció típusa. Lehetséges értékek: NotSpecified, BuiltIn, Custom és Static.

Name Típus Description
BuiltIn

string

Custom

string

NotSpecified

string

Static

string

systemData

Az erőforrás létrehozásával és utolsó módosításával kapcsolatos metaadatok.

Name Típus Description
createdAt

string

Az erőforrás-létrehozás időbélyege (UTC).

createdBy

string

Az erőforrást létrehozó identitás.

createdByType

createdByType

Az erőforrást létrehozó identitás típusa.

lastModifiedAt

string

Az erőforrás utolsó módosításának időbélyege (UTC)

lastModifiedBy

string

Az az identitás, amely legutóbb módosította az erőforrást.

lastModifiedByType

createdByType

Az erőforrást legutóbb módosító identitás típusa.