Policy Definitions - Create Or Update
Cria ou atualiza uma definição de política em uma assinatura.
Esta operação cria ou atualiza uma definição de política na assinatura fornecida com o nome fornecido.
PUT https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/policyDefinitions/{policyDefinitionName}?api-version=2023-04-01
Parâmetros do URI
| Name | Em | Necessário | Tipo | Description |
|---|---|---|---|---|
|
policy
|
path | True |
string pattern: ^[^<>*%&:\?.+/]*[^<>*%&:\?.+/ ]+$ |
O nome da definição de política a ser criada. |
|
subscription
|
path | True |
string (uuid) |
A ID da assinatura de destino. O valor deve ser um UUID. |
|
api-version
|
query | True |
string minLength: 1 |
A versão da API a ser usada para esta operação. |
Corpo do Pedido
| Name | Tipo | Description |
|---|---|---|
| properties.description |
string |
A descrição da definição da política. |
| properties.displayName |
string |
O nome para exibição da definição de política. |
| properties.metadata |
object |
Os metadados de definição de política. Os metadados são um objeto aberto e normalmente são uma coleção de pares de valores de chave. |
| properties.mode |
string |
O modo de definição de política. Alguns exemplos são All, Indexed, Microsoft.KeyVault.Data. |
| properties.parameters |
<string,
Parameter |
As definições de parâmetros para parâmetros usados na regra de política. As chaves são os nomes dos parâmetros. |
| properties.policyRule |
object |
A regra política. |
| properties.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 #.#.#. |
| properties.versions |
string[] |
Uma lista de versões disponíveis para esta definição de política. |
Respostas
| Name | Tipo | Description |
|---|---|---|
| 201 Created |
Criado - Retorna informações sobre a definição da política. |
|
| Other Status Codes |
Resposta de erro descrevendo por que a operação falhou. |
Segurança
azure_auth
Fluxo OAuth2 do Azure Ative Directory.
Tipo:
oauth2
Fluxo:
implicit
URL de Autorização:
https://login.microsoftonline.com/common/oauth2/authorize
Âmbitos
| Name | Description |
|---|---|
| user_impersonation | personificar a sua conta de utilizador |
Exemplos
| Create or update a policy definition |
| Create or update a policy definition with advanced parameters |
Create or update a policy definition
Pedido de amostra
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"
}
}
}
}
}
Resposta da amostra
{
"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
Pedido de amostra
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"
}
}
}
}
}
Resposta da amostra
{
"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"
}
}
}
}
}
Definições
| Name | Description |
|---|---|
|
Cloud |
Uma resposta de erro de uma operação de política. |
|
created |
O tipo de identidade que criou o recurso. |
|
Error |
O erro de gerenciamento de recursos informações adicionais. |
|
Error |
Resposta de erro |
| Metadata |
Metadados gerais para o parâmetro. |
|
Parameter |
A definição de um parâmetro que pode ser fornecido à política. |
|
parameter |
O tipo de dados do parâmetro. |
|
Policy |
A definição da política. |
|
policy |
O tipo de definição de política. Os valores possíveis são NotSpecified, BuiltIn, Custom e Static. |
|
system |
Metadados referentes à criação e última modificação do recurso. |
CloudError
Uma resposta de erro de uma operação de política.
| Name | Tipo | Description |
|---|---|---|
| error |
Resposta de erro |
createdByType
O tipo de identidade que criou o recurso.
| Valor | Description |
|---|---|
| User | |
| Application | |
| ManagedIdentity | |
| Key |
ErrorAdditionalInfo
O erro de gerenciamento de recursos informações adicionais.
| Name | Tipo | Description |
|---|---|---|
| info |
object |
As informações adicionais. |
| type |
string |
O tipo de informação adicional. |
ErrorResponse
Resposta de erro
| Name | Tipo | Description |
|---|---|---|
| additionalInfo |
O erro informações adicionais. |
|
| code |
string |
O código de erro. |
| details |
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 true para que o portal do Azure crie atribuições de função na ID do recurso ou no valor do escopo do recurso desse parâmetro durante a atribuição de política. Essa propriedade é útil caso você deseje atribuir permissões fora do escopo da atribuição. |
| description |
string |
A descrição do parâmetro. |
| displayName |
string |
O nome para exibição do parâmetro. |
| strongType |
string |
Usado ao atribuir a definição de política através do portal. Fornece uma lista sensível ao contexto de valores para o usuário 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 padrão para o parâmetro se nenhum valor for fornecido. |
| metadata |
Metadados gerais para o parâmetro. |
|
| schema |
object |
Fornece validação de entradas de parâmetros durante a atribuição usando um esquema JSON autodefinido. Esta propriedade só é suportada para parâmetros de tipo objeto e segue a implementação do Json.NET Schema 2019-09. Você pode aprender mais sobre como usar esquemas em https://json-schema.org/ e testar esquemas de rascunho em https://www.jsonschemavalidator.net/. |
| type |
O tipo de dados do parâmetro. |
parameterType
O tipo de dados do parâmetro.
| Valor | Description |
|---|---|
| String | |
| Array | |
| Object | |
| Boolean | |
| Integer | |
| Float | |
| DateTime |
PolicyDefinition
A definição da política.
| Name | Tipo | Default value | Description |
|---|---|---|---|
| id |
string |
A ID da definição de política. |
|
| name |
string |
O nome da definição de política. |
|
| properties.description |
string |
A descrição da definição da política. |
|
| properties.displayName |
string |
O nome para exibição da definição de política. |
|
| properties.metadata |
object |
Os metadados de definição de política. Os metadados são um objeto aberto e normalmente são uma coleção de pares de valores de 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,
Parameter |
As definições de parâmetros para parâmetros usados na regra de política. As chaves são os nomes dos parâmetros. |
|
| properties.policyRule |
object |
A regra política. |
|
| properties.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 #.#.#. |
|
| properties.versions |
string[] |
Uma lista de versões disponíveis para esta definição de política. |
|
| systemData |
Os metadados do sistema relativos a este recurso. |
||
| type |
string |
O tipo do recurso (Microsoft.Authorization/policyDefinitions). |
policyType
O tipo de definição de política. Os valores possíveis são NotSpecified, BuiltIn, Custom e Static.
| Valor | Description |
|---|---|
| NotSpecified | |
| BuiltIn | |
| Custom | |
| Static |
systemData
Metadados referentes à criação e última modificação do recurso.
| Name | Tipo | Description |
|---|---|---|
| createdAt |
string (date-time) |
O carimbo de data/hora da criação de recursos (UTC). |
| createdBy |
string |
A identidade que criou o recurso. |
| createdByType |
O tipo de identidade que criou o recurso. |
|
| lastModifiedAt |
string (date-time) |
O carimbo de data/hora da última modificação do recurso (UTC) |
| lastModifiedBy |
string |
A identidade que modificou o recurso pela última vez. |
| lastModifiedByType |
O tipo de identidade que modificou o recurso pela última vez. |