Policy Restrictions - Check At Subscription Scope
Comprueba qué restricciones Azure Policy colocarán en un recurso dentro de una suscripción.
POST https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/checkPolicyRestrictions?api-version=2023-03-01
Parámetros de identificador URI
Nombre | En | Requerido | Tipo | Description |
---|---|---|---|---|
subscription
|
path | True |
string |
Identificador de la suscripción de destino. |
api-version
|
query | True |
string |
Versión de API que se usará para la operación. |
Cuerpo de la solicitud
Nombre | Requerido | Tipo | Description |
---|---|---|---|
resourceDetails | True |
Información sobre el recurso que se evaluará. |
|
includeAuditEffect |
boolean |
Si se deben incluir directivas con el efecto "audit" en los resultados. El valor predeterminado es "false". |
|
pendingFields |
Lista de campos y valores que se deben evaluar para detectar posibles restricciones. |
Respuestas
Nombre | Tipo | Description |
---|---|---|
200 OK |
Las restricciones que se colocarán en el recurso Azure Policy. |
|
Other Status Codes |
Respuesta de error que describe el motivo del error de la operación. |
Seguridad
azure_auth
Flujo OAuth2 de Azure Active Directory
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Nombre | Description |
---|---|
user_impersonation | suplantación de su cuenta de usuario |
Ejemplos
Check policy restrictions at subscription scope |
Check policy restrictions at subscription scope including audit effect |
Check policy restrictions at subscription scope
Sample Request
POST https://management.azure.com/subscriptions/35ee058e-5fa0-414c-8145-3ebb8d09b6e2/providers/Microsoft.PolicyInsights/checkPolicyRestrictions?api-version=2023-03-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"
}
]
}
Sample Response
{
"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
Sample Request
POST https://management.azure.com/subscriptions/35ee058e-5fa0-414c-8145-3ebb8d09b6e2/providers/Microsoft.PolicyInsights/checkPolicyRestrictions?api-version=2023-03-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
}
Sample Response
{
"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"
}
}
]
}
}
Definiciones
Nombre | Description |
---|---|
Check |
Detalles de evaluación de directivas. |
Check |
Parámetros de restricciones de directiva check que describen el recurso que se está evaluando. |
Check |
Información sobre el recurso que se evaluará. |
Check |
Resultado de una evaluación de restricciones de directiva de comprobación en un recurso. |
Content |
Resultados de evaluación para el contenido de recursos parcial proporcionado. |
Error |
Definición de error. |
Error |
Respuesta de error. |
Expression |
Detalles de evaluación de expresiones de lenguaje de directiva. |
Field |
Restricciones en un campo impuesto por una directiva específica. |
Field |
Tipo de restricción que se impone en el campo. |
Field |
Restricciones que se colocarán en un campo del recurso por directiva. |
If |
Detalles de evaluación del efecto IfNotExists. |
Pending |
Campo que se debe evaluar con respecto a Azure Policy para determinar las restricciones. |
Policy |
Detalles del efecto que se aplicó al recurso. |
Policy |
Resultado de una evaluación de directiva no compatible con el contenido de recursos especificado. |
Policy |
Identificadores de recursos para una directiva. |
Typed |
Detalles de error específicos del escenario. |
CheckRestrictionEvaluationDetails
Detalles de evaluación de directivas.
Nombre | Tipo | Description |
---|---|---|
evaluatedExpressions |
Detalles de las expresiones evaluadas. |
|
ifNotExistsDetails |
Detalles de evaluación del efecto IfNotExists. |
|
reason |
string |
Motivo del resultado de la evaluación. |
CheckRestrictionsRequest
Parámetros de restricciones de directiva check que describen el recurso que se está evaluando.
Nombre | Tipo | Valor predeterminado | Description |
---|---|---|---|
includeAuditEffect |
boolean |
False |
Si se deben incluir directivas con el efecto "audit" en los resultados. El valor predeterminado es "false". |
pendingFields |
Lista de campos y valores que se deben evaluar para detectar posibles restricciones. |
||
resourceDetails |
Información sobre el recurso que se evaluará. |
CheckRestrictionsResourceDetails
Información sobre el recurso que se evaluará.
Nombre | Tipo | Description |
---|---|---|
apiVersion |
string |
Versión de api del contenido del recurso. |
resourceContent |
object |
Contenido del recurso. Esto debe incluir las propiedades que ya se conocen y puede ser un conjunto parcial de todas las propiedades de recursos. |
scope |
string |
Ámbito en el que se crea el recurso. Por ejemplo, si el recurso es un recurso secundario, este sería el identificador de recurso del recurso primario. |
CheckRestrictionsResult
Resultado de una evaluación de restricciones de directiva de comprobación en un recurso.
Nombre | Tipo | Description |
---|---|---|
contentEvaluationResult |
Resultados de evaluación para el contenido de recursos parcial proporcionado. |
|
fieldRestrictions |
Restricciones que se colocarán en varios campos del recurso por directiva. |
ContentEvaluationResult
Resultados de evaluación para el contenido de recursos parcial proporcionado.
Nombre | Tipo | Description |
---|---|---|
policyEvaluations |
Resultados de evaluación de directivas con el contenido de recursos especificado. Esto indicará si el contenido parcial proporcionado se denegará tal cual. |
ErrorDefinition
Definición de error.
Nombre | Tipo | Description |
---|---|---|
additionalInfo |
Detalles adicionales del error específico del escenario. |
|
code |
string |
Código de error específico del servicio que actúa como subestado para el código de error HTTP. |
details |
Detalles internos del error. |
|
message |
string |
Descripción del error. |
target |
string |
Destino del error. |
ErrorResponse
Respuesta de error.
Nombre | Tipo | Description |
---|---|---|
error |
Los detalles del error. |
ExpressionEvaluationDetails
Detalles de evaluación de expresiones de lenguaje de directiva.
Nombre | Tipo | Description |
---|---|---|
expression |
string |
Expresión evaluada. |
expressionKind |
string |
El tipo de expresión que se evaluó. |
expressionValue |
object |
Valor de la expresión. |
operator |
string |
Operador para comparar el valor de expresión y el valor de destino. |
path |
string |
Ruta de acceso de propiedad si la expresión es un campo o un alias. |
result |
string |
Resultado de la evaluación. |
targetValue |
object |
Valor de destino que se va a comparar con el valor de expresión. |
FieldRestriction
Restricciones en un campo impuesto por una directiva específica.
Nombre | Tipo | Description |
---|---|---|
defaultValue |
string |
Valor que la directiva establecerá para el campo si el usuario no proporciona un valor. |
policy |
Detalles de la directiva que está causando la restricción de campo. |
|
policyEffect |
string |
Efecto de la directiva que está causando la restricción de campo. http://aka.ms/policyeffects |
reason |
string |
Motivo de la restricción. |
result |
Tipo de restricción que se impone en el campo. |
|
values |
string[] |
Los valores que la directiva requiere o deniega para el campo. |
FieldRestrictionResult
Tipo de restricción que se impone en el campo.
Nombre | Tipo | Description |
---|---|---|
Audit |
string |
La directiva auditará el campo o los valores. |
Deny |
string |
La directiva denegará el campo o los valores. |
Removed |
string |
La directiva quitará el campo. |
Required |
string |
La directiva requiere el campo o los valores. |
FieldRestrictions
Restricciones que se colocarán en un campo del recurso por directiva.
Nombre | Tipo | Description |
---|---|---|
field |
string |
Nombre del campo. Puede ser una propiedad de nivel superior como "name" o "type" o un alias de campo Azure Policy. |
restrictions |
Restricciones colocadas en ese campo por directiva. |
IfNotExistsEvaluationDetails
Detalles de evaluación del efecto IfNotExists.
Nombre | Tipo | Description |
---|---|---|
resourceId |
string |
Identificador del último recurso evaluado para el efecto IfNotExists. |
totalResources |
integer |
Número total de recursos a los que se aplica la condición de existencia. |
PendingField
Campo que se debe evaluar con respecto a Azure Policy para determinar las restricciones.
Nombre | Tipo | Description |
---|---|---|
field |
string |
Nombre del campo. Puede ser una propiedad de nivel superior como "name" o "type" o un alias de campo Azure Policy. |
values |
string[] |
Lista de valores potenciales para el campo que se debe evaluar con Azure Policy. |
PolicyEffectDetails
Detalles del efecto que se aplicó al recurso.
Nombre | Tipo | Description |
---|---|---|
policyEffect |
string |
Efecto que se aplicó al recurso. http://aka.ms/policyeffects |
PolicyEvaluationResult
Resultado de una evaluación de directiva no compatible con el contenido de recursos especificado.
Nombre | Tipo | Description |
---|---|---|
effectDetails |
Detalles del efecto que se aplicó al recurso. |
|
evaluationDetails |
Resultados detallados de las expresiones de directiva y los valores que se han evaluado. |
|
evaluationResult |
string |
Resultado de la evaluación de directivas en el recurso. Normalmente, será "No conforme", pero puede contener otros valores si se encontraron errores. |
policyInfo |
Detalles de la directiva que se evaluó. |
PolicyReference
Identificadores de recursos para una directiva.
Nombre | Tipo | Description |
---|---|---|
policyAssignmentId |
string |
Identificador de recurso de la asignación de directiva. |
policyDefinitionId |
string |
Identificador de recurso de la definición de directiva. |
policyDefinitionReferenceId |
string |
Identificador de referencia de una definición de directiva específica dentro de una definición de conjunto de directivas. |
policySetDefinitionId |
string |
Identificador de recurso de la definición del conjunto de directivas. |
TypedErrorInfo
Detalles de error específicos del escenario.
Nombre | Tipo | Description |
---|---|---|
info |
Detalles de error específicos del escenario. |
|
type |
string |
Tipo de detalles de error incluidos. |