Policy Definition Versions - Create Or Update

Cria ou atualiza uma definição de política numa subscrição.
Esta operação cria ou atualiza uma definição de política na subscrição especificada com o nome especificado.

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

Parâmetros do URI

Name Em Necessário Tipo Description
policyDefinitionName
path True

string

O nome da definição de política.

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

policyDefinitionVersion
path True

string

A versão de definição de política. O formato é x.y.z, em que x é o número da versão principal, y é o número da versão secundária e z é o número do patch

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

subscriptionId
path True

string

uuid

O ID da subscrição de destino. O valor tem de ser um UUID.

api-version
query True

string

A versão da API a utilizar para esta operação.

Corpo do Pedido

Name Tipo Description
properties.description

string

A descrição da definição de política.

properties.displayName

string

O nome a apresentar da definição de política.

properties.metadata

object

Os metadados de definição de política. Os metadados são um objeto final aberto e, normalmente, são uma coleção de pares de valores chave.

properties.mode

string

O modo de definição de política. Alguns exemplos são All, Indexed, Microsoft.KeyVault.Data.

properties.parameters

<string,  ParameterDefinitionsValue>

As definições de parâmetros para parâmetros utilizados na regra de política. As chaves são os nomes dos parâmetros.

properties.policyRule

object

A regra de política.

properties.policyType

policyType

O tipo de definição de política. Os valores possíveis são NotSpecified, BuiltIn, Custom e Static.

properties.version

string

A versão de definição de política no formato #.#.#.

Respostas

Name Tipo Description
200 OK

PolicyDefinitionVersion

OK – versão de definição de política atualizada com êxito.

201 Created

PolicyDefinitionVersion

Criado – devolve informações sobre a versão de definição de política.

Other Status Codes

CloudError

Resposta de erro que descreve o motivo pela qual a operação falhou.

Segurança

azure_auth

Fluxo OAuth2 do Azure Active Directory.

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

Scopes

Name Description
user_impersonation representar a sua conta de utilizador

Exemplos

Create or update a policy definition version

Sample Request

PUT https://management.azure.com/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming/versions/1.2.1?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"
    },
    "version": "1.2.1",
    "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/versions/1.2.1",
  "type": "Microsoft.Authorization/policyDefinitions/versions",
  "name": "1.2.1",
  "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",
    "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"
  }
}
{
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming/versions/1.2.1",
  "type": "Microsoft.Authorization/policyDefinitions/versions",
  "name": "1.2.1",
  "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",
    "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"
  }
}

Definições

Name Description
CloudError

Uma resposta de erro de uma operação de política.

createdByType

O tipo de identidade que criou o recurso.

ErrorAdditionalInfo

Informações adicionais sobre o erro de gestão de recursos.

ErrorResponse

Resposta a Erros

Metadata

Metadados gerais para o parâmetro .

ParameterDefinitionsValue

A definição de um parâmetro que pode ser fornecido à política.

parameterType

O tipo de dados do parâmetro .

PolicyDefinitionVersion

O ID da versão de definição de política.

policyType

O tipo de definição de política. Os valores possíveis são NotSpecified, BuiltIn, Custom e Static.

systemData

Metadados relativos à criação e última modificação do recurso.

CloudError

Uma resposta de erro de uma operação de política.

Name Tipo Description
error

ErrorResponse

Resposta a Erros
Resposta de erro comum para todas as APIs do Azure Resource Manager para devolver detalhes do erro para operações com falhas. (Isto também segue o formato de resposta de erro OData.)

createdByType

O tipo de identidade que criou o recurso.

Name Tipo Description
Application

string

Key

string

ManagedIdentity

string

User

string

ErrorAdditionalInfo

Informações adicionais sobre o erro de gestão de recursos.

Name Tipo Description
info

object

As informações adicionais.

type

string

O tipo de informações adicionais.

ErrorResponse

Resposta a Erros

Name Tipo Description
additionalInfo

ErrorAdditionalInfo[]

As informações adicionais do erro.

code

string

O código de erro.

details

ErrorResponse[]

Os detalhes do erro.

message

string

A mensagem de erro.

target

string

O destino do erro.

Metadata

Metadados gerais para o parâmetro .

Name Tipo Description
assignPermissions

boolean

Defina como verdadeiro para ter portal do Azure criar atribuições de funções no ID do recurso ou no valor do âmbito do recurso deste parâmetro durante a atribuição de política. Esta propriedade é útil caso pretenda atribuir permissões fora do âmbito de atribuição.

description

string

A descrição do parâmetro .

displayName

string

O nome a apresentar do parâmetro .

strongType

string

Utilizado ao atribuir a definição de política através do portal. Fornece uma lista com deteção de contexto de valores para o utilizador escolher.

ParameterDefinitionsValue

A definição de um parâmetro que pode ser fornecido à política.

Name Tipo Description
allowedValues

object[]

Os valores permitidos para o parâmetro .

defaultValue

object

O valor predefinido para o parâmetro se não for fornecido nenhum valor.

metadata

Metadata

Metadados gerais para o parâmetro .

schema

object

Fornece a validação de entradas de parâmetros durante a atribuição com um esquema JSON autodefinido. Esta propriedade só é suportada para parâmetros de tipo de objeto e segue a implementação Json.NET Schema 2019-09. Pode saber mais sobre como utilizar esquemas em https://json-schema.org/ e testar esquemas de rascunho em https://www.jsonschemavalidator.net/.

type

parameterType

O tipo de dados do parâmetro .

parameterType

O tipo de dados do parâmetro .

Name Tipo Description
Array

string

Boolean

string

DateTime

string

Float

string

Integer

string

Object

string

String

string

PolicyDefinitionVersion

O ID da versão de definição de política.

Name Tipo Valor Predefinido Description
id

string

O ID da versão de definição de política.

name

string

O nome da versão de definição de política.

properties.description

string

A descrição da definição de política.

properties.displayName

string

O nome a apresentar da definição de política.

properties.metadata

object

Os metadados de definição de política. Os metadados são um objeto final aberto e, normalmente, são uma coleção de pares de valores chave.

properties.mode

string

Indexed

O modo de definição de política. Alguns exemplos são All, Indexed, Microsoft.KeyVault.Data.

properties.parameters

<string,  ParameterDefinitionsValue>

As definições de parâmetros para parâmetros utilizados na regra de política. As chaves são os nomes dos parâmetros.

properties.policyRule

object

A regra de política.

properties.policyType

policyType

O tipo de definição de política. Os valores possíveis são NotSpecified, BuiltIn, Custom e Static.

properties.version

string

A versão de definição de política no formato #.#.#.

systemData

systemData

Os metadados do sistema relacionados com este recurso.

type

string

O tipo de recurso (Microsoft.Authorization/policyDefinitions/versions).

policyType

O tipo de definição de política. Os valores possíveis são NotSpecified, BuiltIn, Custom e Static.

Name Tipo Description
BuiltIn

string

Custom

string

NotSpecified

string

Static

string

systemData

Metadados relativos à criação e última modificação do recurso.

Name Tipo Description
createdAt

string

O carimbo de data/hora da criação de recursos (UTC).

createdBy

string

A identidade que criou o recurso.

createdByType

createdByType

O tipo de identidade que criou o recurso.

lastModifiedAt

string

O carimbo de data/hora da última modificação do recurso (UTC)

lastModifiedBy

string

A identidade que modificou o recurso pela última vez.

lastModifiedByType

createdByType

O tipo de identidade que modificou o recurso pela última vez.