Compartilhar via


Policy Restrictions - Check At Subscription Scope

Verifica quais restrições o Azure Policy impõe a um recurso dentro de uma assinatura.

POST https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/checkPolicyRestrictions?api-version=2024-10-01

Parâmetros de URI

Nome Em Obrigatório Tipo Description
subscriptionId
path True

string

minLength: 1

A ID da assinatura de destino.

api-version
query True

string

minLength: 1

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

Corpo da solicitação

Nome Obrigatório Tipo Description
resourceDetails True

CheckRestrictionsResourceDetails

As informações sobre o recurso que serão avaliadas.

includeAuditEffect

boolean

Se as políticas devem ser incluídas com o efeito de "auditoria" nos resultados. O padrão é false.

pendingFields

PendingField[]

A lista de campos e valores que devem ser avaliados para possíveis restrições.

Respostas

Nome Tipo Description
200 OK

CheckRestrictionsResult

As restrições que serão impostas ao recurso pelo Azure Policy.

Other Status Codes

ErrorResponse

Resposta de erro que descreve por que a operação falhou.

Segurança

azure_auth

Azure Active Directory OAuth2 Flow

Tipo: oauth2
Flow: implicit
URL de Autorização: https://login.microsoftonline.com/common/oauth2/authorize

Escopos

Nome Description
user_impersonation representar sua conta de usuário

Exemplos

Check policy restrictions at subscription scope
Check policy restrictions at subscription scope including audit effect

Check policy restrictions at subscription scope

Solicitação de exemplo

POST https://management.azure.com/subscriptions/35ee058e-5fa0-414c-8145-3ebb8d09b6e2/providers/Microsoft.PolicyInsights/checkPolicyRestrictions?api-version=2024-10-01

{
  "resourceDetails": {
    "resourceContent": {
      "type": "Microsoft.Compute/virtualMachines",
      "properties": {
        "priority": "Spot"
      }
    },
    "apiVersion": "2019-12-01"
  },
  "pendingFields": [
    {
      "field": "name",
      "values": [
        "myVMName"
      ]
    },
    {
      "field": "location",
      "values": [
        "eastus",
        "westus",
        "westus2",
        "westeurope"
      ]
    },
    {
      "field": "tags"
    }
  ]
}

Resposta de exemplo

{
  "fieldRestrictions": [
    {
      "field": "tags.newtag",
      "restrictions": [
        {
          "result": "Required",
          "defaultValue": "defaultVal",
          "policy": {
            "policyDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyDefinitions/1D0906C3",
            "policyAssignmentId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyAssignments/57DAC8A0",
            "policySetDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policySetDefinitions/05D92080",
            "policyDefinitionReferenceId": "DefRef"
          },
          "policyEffect": "Deny",
          "reason": "tags.newtag is required"
        }
      ]
    },
    {
      "field": "tags.environment",
      "restrictions": [
        {
          "result": "Required",
          "values": [
            "Prod",
            "Int",
            "Test"
          ],
          "policy": {
            "policyDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyDefinitions/30BD79F6",
            "policyAssignmentId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyAssignments/7EB1508A",
            "policySetDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policySetDefinitions/735551F1",
            "policyDefinitionReferenceId": "DefRef"
          },
          "policyEffect": "Deny",
          "reason": "tags.environment is required"
        }
      ]
    },
    {
      "field": "location",
      "restrictions": [
        {
          "result": "Deny",
          "values": [
            "west europe"
          ],
          "policy": {
            "policyDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyDefinitions/0711CCC1",
            "policyAssignmentId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyAssignments/1563EBD3",
            "policySetDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policySetDefinitions/1E17783A",
            "policyDefinitionReferenceId": "DefRef"
          },
          "policyEffect": "Deny",
          "reason": "location must be one of the following: eastus, westus, westus2"
        },
        {
          "result": "Deny",
          "values": [
            "eastus",
            "westus"
          ],
          "policy": {
            "policyDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyDefinitions/25C9F66B",
            "policyAssignmentId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyAssignments/5382A69D",
            "policySetDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policySetDefinitions/392D107B",
            "policyDefinitionReferenceId": "DefRef"
          },
          "policyEffect": "Deny",
          "reason": "location must be one of the following: westus2"
        }
      ]
    }
  ],
  "contentEvaluationResult": {
    "policyEvaluations": [
      {
        "policyInfo": {
          "policyDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyDefinitions/435CAE41",
          "policySetDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policySetDefinitions/2162358E",
          "policyDefinitionReferenceId": "defref222",
          "policyAssignmentId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyAssignments/2FF66C37"
        },
        "evaluationResult": "NonCompliant",
        "evaluationDetails": {
          "evaluatedExpressions": [
            {
              "result": "True",
              "expressionKind": "field",
              "expression": "type",
              "path": "type",
              "expressionValue": "microsoft.compute/virtualmachines",
              "targetValue": "microsoft.compute/virtualmachines",
              "operator": "equals"
            }
          ]
        },
        "effectDetails": {
          "policyEffect": "Deny"
        }
      }
    ]
  }
}

Check policy restrictions at subscription scope including audit effect

Solicitação de exemplo

POST https://management.azure.com/subscriptions/35ee058e-5fa0-414c-8145-3ebb8d09b6e2/providers/Microsoft.PolicyInsights/checkPolicyRestrictions?api-version=2024-10-01

{
  "resourceDetails": {
    "resourceContent": {
      "type": "Microsoft.Compute/virtualMachines",
      "properties": {
        "priority": "Spot"
      }
    },
    "apiVersion": "2019-12-01"
  },
  "pendingFields": [
    {
      "field": "name",
      "values": [
        "myVMName"
      ]
    },
    {
      "field": "location",
      "values": [
        "eastus",
        "westus",
        "westus2",
        "westeurope"
      ]
    },
    {
      "field": "tags"
    }
  ],
  "includeAuditEffect": true
}

Resposta de exemplo

{
  "fieldRestrictions": [
    {
      "field": "tags.newtag",
      "restrictions": [
        {
          "result": "Required",
          "defaultValue": "defaultVal",
          "policy": {
            "policyDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyDefinitions/1D0906C3",
            "policyAssignmentId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyAssignments/57DAC8A0",
            "policySetDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policySetDefinitions/05D92080",
            "policyDefinitionReferenceId": "DefRef"
          },
          "policyEffect": "Deny",
          "reason": "tags.newtag is required"
        }
      ]
    },
    {
      "field": "tags.environment",
      "restrictions": [
        {
          "result": "Required",
          "values": [
            "Prod",
            "Int",
            "Test"
          ],
          "policy": {
            "policyDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyDefinitions/30BD79F6",
            "policyAssignmentId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyAssignments/7EB1508A",
            "policySetDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policySetDefinitions/735551F1",
            "policyDefinitionReferenceId": "DefRef"
          },
          "policyEffect": "Audit",
          "reason": "tags.environment is required"
        }
      ]
    },
    {
      "field": "location",
      "restrictions": [
        {
          "result": "Deny",
          "values": [
            "west europe"
          ],
          "policy": {
            "policyDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyDefinitions/0711CCC1",
            "policyAssignmentId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyAssignments/1563EBD3",
            "policySetDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policySetDefinitions/1E17783A",
            "policyDefinitionReferenceId": "DefRef"
          },
          "policyEffect": "Deny",
          "reason": "The selected location is not allowed"
        },
        {
          "result": "Audit",
          "values": [
            "eastus",
            "westus"
          ],
          "policy": {
            "policyDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyDefinitions/25C9F66B",
            "policyAssignmentId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyAssignments/5382A69D",
            "policySetDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policySetDefinitions/392D107B",
            "policyDefinitionReferenceId": "DefRef"
          },
          "policyEffect": "Audit",
          "reason": "The selected location is not allowed"
        }
      ]
    }
  ],
  "contentEvaluationResult": {
    "policyEvaluations": [
      {
        "policyInfo": {
          "policyDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyDefinitions/435CAE41",
          "policySetDefinitionId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policySetDefinitions/2162358E",
          "policyDefinitionReferenceId": "defref222",
          "policyAssignmentId": "/subscriptions/d8db6de6-2b96-46af-b825-07aef2033c0b/providers/microsoft.authorization/policyAssignments/2FF66C37"
        },
        "evaluationResult": "NonCompliant",
        "evaluationDetails": {
          "evaluatedExpressions": [
            {
              "result": "True",
              "expressionKind": "field",
              "expression": "type",
              "path": "type",
              "expressionValue": "microsoft.compute/virtualmachines",
              "targetValue": "microsoft.compute/virtualmachines",
              "operator": "equals"
            }
          ],
          "reason": "Resource creation of the selected type is not allowed"
        },
        "effectDetails": {
          "policyEffect": "Audit"
        }
      }
    ]
  }
}

Definições

Nome Description
CheckRestrictionEvaluationDetails

Detalhes da avaliação da política.

CheckRestrictionsRequest

Os parâmetros de restrições de política de verificação que descrevem o recurso que está sendo avaliado.

CheckRestrictionsResourceDetails

As informações sobre o recurso que serão avaliadas.

CheckRestrictionsResult

O resultado de uma avaliação de restrições de política de verificação em um recurso.

ContentEvaluationResult

Resultados de avaliação para o conteúdo do recurso parcial fornecido.

ErrorDefinition

Definição de erro.

ErrorResponse

Resposta de erro.

ExpressionEvaluationDetails

Detalhes de avaliação de expressões de linguagem de política.

FieldRestriction

As restrições em um campo imposto por uma política específica.

FieldRestrictionResult

O tipo de restrição que é imposta no campo.

FieldRestrictions

As restrições que serão colocadas em um campo no recurso por política.

IfNotExistsEvaluationDetails

Detalhes de avaliação do efeito IfNotExists.

PendingField

Um campo que deve ser avaliado em relação ao Azure Policy para determinar restrições.

PolicyEffectDetails

Os detalhes do efeito aplicado ao recurso.

PolicyEvaluationResult

O resultado de uma avaliação de política não compatível com o conteúdo do recurso especificado.

PolicyReference

Identificadores de recurso para uma política.

TypedErrorInfo

Detalhes de erro específicos do cenário.

CheckRestrictionEvaluationDetails

Detalhes da avaliação da política.

Nome Tipo Description
evaluatedExpressions

ExpressionEvaluationDetails[]

Detalhes das expressões avaliadas.

ifNotExistsDetails

IfNotExistsEvaluationDetails

Detalhes de avaliação do efeito IfNotExists.

reason

string

O motivo do resultado da avaliação.

CheckRestrictionsRequest

Os parâmetros de restrições de política de verificação que descrevem o recurso que está sendo avaliado.

Nome Tipo Valor padrão Description
includeAuditEffect

boolean

False

Se as políticas devem ser incluídas com o efeito de "auditoria" nos resultados. O padrão é false.

pendingFields

PendingField[]

A lista de campos e valores que devem ser avaliados para possíveis restrições.

resourceDetails

CheckRestrictionsResourceDetails

As informações sobre o recurso que serão avaliadas.

CheckRestrictionsResourceDetails

As informações sobre o recurso que serão avaliadas.

Nome Tipo Description
apiVersion

string

A versão da API do conteúdo do recurso.

resourceContent

object

O conteúdo do recurso. Isso deve incluir todas as propriedades já conhecidas e pode ser um conjunto parcial de todas as propriedades de recurso.

scope

string

O escopo em que o recurso está sendo criado. Por exemplo, se o recurso for um recurso filho, essa será a ID do recurso pai.

CheckRestrictionsResult

O resultado de uma avaliação de restrições de política de verificação em um recurso.

Nome Tipo Description
contentEvaluationResult

ContentEvaluationResult

Resultados de avaliação para o conteúdo do recurso parcial fornecido.

fieldRestrictions

FieldRestrictions[]

As restrições que serão colocadas em vários campos no recurso por política.

ContentEvaluationResult

Resultados de avaliação para o conteúdo do recurso parcial fornecido.

Nome Tipo Description
policyEvaluations

PolicyEvaluationResult[]

Resultados da avaliação da política em relação ao conteúdo do recurso especificado. Isso indicará se o conteúdo parcial fornecido será negado as-is.

ErrorDefinition

Definição de erro.

Nome Tipo Description
additionalInfo

TypedErrorInfo[]

Detalhes de erro específicos do cenário adicional.

code

string

Código de erro específico do serviço que serve como substatus para o código de erro HTTP.

details

ErrorDefinition[]

Detalhes internos do erro.

message

string

Descrição do erro.

target

string

O destino do erro.

ErrorResponse

Resposta de erro.

Nome Tipo Description
error

ErrorDefinition

Os detalhes do erro.

ExpressionEvaluationDetails

Detalhes de avaliação de expressões de linguagem de política.

Nome Tipo Description
expression

string

Expressão avaliada.

expressionKind

string

O tipo de expressão que foi avaliada.

expressionValue

object

Valor da expressão.

operator

string

Operador para comparar o valor da expressão e o valor de destino.

path

string

Caminho da propriedade se a expressão for um campo ou um alias.

result

string

Resultado da avaliação.

targetValue

object

Valor de destino a ser comparado com o valor da expressão.

FieldRestriction

As restrições em um campo imposto por uma política específica.

Nome Tipo Description
defaultValue

string

O valor que a política definirá para o campo se o usuário não fornecer um valor.

policy

PolicyReference

Os detalhes da política que está causando a restrição de campo.

policyEffect

string

O efeito da política que está causando a restrição de campo. http://aka.ms/policyeffects

reason

string

O motivo da restrição.

result

FieldRestrictionResult

O tipo de restrição que é imposta no campo.

values

string[]

Os valores que a política requer ou nega para o campo.

FieldRestrictionResult

O tipo de restrição que é imposta no campo.

Valor Description
Required

O campo e/ou valores são exigidos pela política.

Removed

O campo será removido pela política.

Deny

O campo e/ou valores serão negados pela política.

Audit

O campo e/ou valores serão auditados pela política.

FieldRestrictions

As restrições que serão colocadas em um campo no recurso por política.

Nome Tipo Description
field

string

O nome do campo. Isso pode ser uma propriedade de nível superior como 'nome' ou 'tipo' ou um alias de campo Azure Policy.

restrictions

FieldRestriction[]

As restrições colocadas nesse campo por política.

IfNotExistsEvaluationDetails

Detalhes de avaliação do efeito IfNotExists.

Nome Tipo Description
resourceId

string

ID do último recurso avaliado para efeito IfNotExists.

totalResources

integer

Número total de recursos aos quais a condição de existência é aplicável.

PendingField

Um campo que deve ser avaliado em relação ao Azure Policy para determinar restrições.

Nome Tipo Description
field

string

O nome do campo. Isso pode ser uma propriedade de nível superior como 'nome' ou 'tipo' ou um alias de campo Azure Policy.

values

string[]

A lista de valores potenciais para o campo que devem ser avaliados em relação ao Azure Policy.

PolicyEffectDetails

Os detalhes do efeito aplicado ao recurso.

Nome Tipo Description
policyEffect

string

O efeito que foi aplicado ao recurso. http://aka.ms/policyeffects

PolicyEvaluationResult

O resultado de uma avaliação de política não compatível com o conteúdo do recurso especificado.

Nome Tipo Description
effectDetails

PolicyEffectDetails

Os detalhes do efeito aplicado ao recurso.

evaluationDetails

CheckRestrictionEvaluationDetails

Os resultados detalhados das expressões de política e dos valores que foram avaliados.

evaluationResult

string

O resultado da avaliação da política em relação ao recurso. Normalmente, isso será "NonCompliant", mas poderá conter outros valores se erros forem encontrados.

policyInfo

PolicyReference

Os detalhes da política que foi avaliada.

PolicyReference

Identificadores de recurso para uma política.

Nome Tipo Description
policyAssignmentId

string

O identificador de recurso da atribuição de política.

policyDefinitionId

string

O identificador de recurso da definição de política.

policyDefinitionReferenceId

string

O identificador de referência de uma definição de política específica dentro de uma definição de conjunto de políticas.

policySetDefinitionId

string

O identificador de recurso da definição do conjunto de políticas.

TypedErrorInfo

Detalhes de erro específicos do cenário.

Nome Tipo Description
info

Os detalhes de erro específicos do cenário.

type

string

O tipo de detalhes de erro incluídos.