Policy Restrictions - Check At Subscription Scope
Vérifie quelles restrictions Azure Policy imposera à une ressource au sein d’un abonnement.
POST https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/checkPolicyRestrictions?api-version=2024-10-01
Paramètres URI
| Nom | Dans | Obligatoire | Type | Description |
|---|---|---|---|---|
|
subscription
|
path | True |
string minLength: 1 |
ID de l’abonnement cible. |
|
api-version
|
query | True |
string minLength: 1 |
Version de l’API à utiliser pour cette opération. |
Corps de la demande
| Nom | Obligatoire | Type | Description |
|---|---|---|---|
| resourceDetails | True |
Informations sur la ressource qui sera évaluée. |
|
| includeAuditEffect |
boolean |
Indique s’il faut inclure des stratégies avec l’effet « audit » dans les résultats. La valeur par défaut est false. |
|
| pendingFields |
Liste des champs et des valeurs qui doivent être évalués pour les restrictions potentielles. |
Réponses
| Nom | Type | Description |
|---|---|---|
| 200 OK |
Les restrictions qui seront imposées à la ressource par Azure Policy. |
|
| Other Status Codes |
Réponse d’erreur décrivant pourquoi l’opération a échoué. |
Sécurité
azure_auth
Azure Active Directory OAuth2 Flow
Type:
oauth2
Flux:
implicit
URL d’autorisation:
https://login.microsoftonline.com/common/oauth2/authorize
Étendues
| Nom | Description |
|---|---|
| user_impersonation | emprunter l’identité de votre compte d’utilisateur |
Exemples
| Check policy restrictions at subscription scope |
| Check policy restrictions at subscription scope including audit effect |
Check policy restrictions at subscription scope
Exemple de requête
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"
}
]
}
Exemple de réponse
{
"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
Exemple de requête
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
}
Exemple de réponse
{
"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"
}
}
]
}
}
Définitions
| Nom | Description |
|---|---|
|
Check |
Détails de l’évaluation de la stratégie. |
|
Check |
Paramètres de restrictions de stratégie de vérification décrivant la ressource en cours d’évaluation. |
|
Check |
Informations sur la ressource qui sera évaluée. |
|
Check |
Résultat d’une évaluation des restrictions de stratégie de vérification sur une ressource. |
|
Content |
Résultats de l’évaluation pour le contenu de ressource partielle fourni. |
|
Error |
Définition d’erreur. |
|
Error |
Réponse d’erreur. |
|
Expression |
Détails de l’évaluation des expressions de langage de stratégie. |
|
Field |
Restrictions sur un champ imposé par une stratégie spécifique. |
|
Field |
Type de restriction imposée sur le champ. |
|
Field |
Restrictions qui seront placées sur un champ dans la ressource par stratégie. |
|
If |
Détails de l’évaluation de l’effet IfNotExists. |
|
Pending |
Un champ qui devrait être évalué par rapport à Azure Policy pour déterminer les restrictions. |
|
Policy |
Détails de l’effet appliqué à la ressource. |
|
Policy |
Résultat d’une évaluation de stratégie non conforme par rapport au contenu de ressource donné. |
|
Policy |
Identificateurs de ressources pour une stratégie. |
|
Typed |
Détails d’erreur spécifiques au scénario. |
CheckRestrictionEvaluationDetails
Détails de l’évaluation de la stratégie.
| Nom | Type | Description |
|---|---|---|
| evaluatedExpressions |
Détails des expressions évaluées. |
|
| ifNotExistsDetails |
Détails de l’évaluation de l’effet IfNotExists. |
|
| reason |
string |
Raison du résultat de l’évaluation. |
CheckRestrictionsRequest
Paramètres de restrictions de stratégie de vérification décrivant la ressource en cours d’évaluation.
| Nom | Type | Valeur par défaut | Description |
|---|---|---|---|
| includeAuditEffect |
boolean |
False |
Indique s’il faut inclure des stratégies avec l’effet « audit » dans les résultats. La valeur par défaut est false. |
| pendingFields |
Liste des champs et des valeurs qui doivent être évalués pour les restrictions potentielles. |
||
| resourceDetails |
Informations sur la ressource qui sera évaluée. |
CheckRestrictionsResourceDetails
Informations sur la ressource qui sera évaluée.
| Nom | Type | Description |
|---|---|---|
| apiVersion |
string |
Version api du contenu de la ressource. |
| resourceContent |
object |
Contenu de la ressource. Cela doit inclure les propriétés déjà connues et peut être un ensemble partiel de toutes les propriétés de ressource. |
| scope |
string |
Étendue dans laquelle la ressource est créée. Par exemple, si la ressource est une ressource enfant, il s’agit de l’ID de ressource parent. |
CheckRestrictionsResult
Résultat d’une évaluation des restrictions de stratégie de vérification sur une ressource.
| Nom | Type | Description |
|---|---|---|
| contentEvaluationResult |
Résultats de l’évaluation pour le contenu de ressource partielle fourni. |
|
| fieldRestrictions |
Restrictions qui seront placées sur différents champs de la ressource par stratégie. |
ContentEvaluationResult
Résultats de l’évaluation pour le contenu de ressource partielle fourni.
| Nom | Type | Description |
|---|---|---|
| policyEvaluations |
Résultats de l’évaluation de stratégie par rapport au contenu de ressource donné. Cela indique si le contenu partiel fourni est refusé as-is. |
ErrorDefinition
Définition d’erreur.
| Nom | Type | Description |
|---|---|---|
| additionalInfo |
Détails d’erreur spécifiques au scénario supplémentaire. |
|
| code |
string |
Code d’erreur spécifique au service qui sert de sous-état pour le code d’erreur HTTP. |
| details |
Détails de l’erreur interne. |
|
| message |
string |
Description de l’erreur. |
| target |
string |
Cible de l’erreur. |
ErrorResponse
Réponse d’erreur.
| Nom | Type | Description |
|---|---|---|
| error |
Détails de l’erreur. |
ExpressionEvaluationDetails
Détails de l’évaluation des expressions de langage de stratégie.
| Nom | Type | Description |
|---|---|---|
| expression |
string |
Expression évaluée. |
| expressionKind |
string |
Type d’expression évaluée. |
| expressionValue |
object |
Valeur de l’expression. |
| operator |
string |
Opérateur pour comparer la valeur d’expression et la valeur cible. |
| path |
string |
Chemin de propriété si l’expression est un champ ou un alias. |
| result |
string |
Résultat de l’évaluation. |
| targetValue |
object |
Valeur cible à comparer à la valeur d’expression. |
FieldRestriction
Restrictions sur un champ imposé par une stratégie spécifique.
| Nom | Type | Description |
|---|---|---|
| defaultValue |
string |
Valeur que la stratégie définit pour le champ si l’utilisateur ne fournit pas de valeur. |
| policy |
Détails de la stratégie à l’origine de la restriction de champ. |
|
| policyEffect |
string |
Effet de la stratégie qui provoque la restriction de champ. http://aka.ms/policyeffects |
| reason |
string |
Raison de la restriction. |
| result |
Type de restriction imposée sur le champ. |
|
| values |
string[] |
Valeurs que la stratégie requiert ou refuse pour le champ. |
FieldRestrictionResult
Type de restriction imposée sur le champ.
| Valeur | Description |
|---|---|
| Required |
Le champ et/ou les valeurs sont requis par la stratégie. |
| Removed |
Le champ est supprimé par stratégie. |
| Deny |
Le champ et/ou les valeurs sont refusés par la stratégie. |
| Audit |
Le champ et/ou les valeurs sont audités par la stratégie. |
FieldRestrictions
Restrictions qui seront placées sur un champ dans la ressource par stratégie.
| Nom | Type | Description |
|---|---|---|
| field |
string |
Nom du champ. Cela peut être une propriété de premier niveau comme « nom » ou « type » ou un alias de champ Azure Policy. |
| restrictions |
Les restrictions placées sur ce champ par stratégie. |
IfNotExistsEvaluationDetails
Détails de l’évaluation de l’effet IfNotExists.
| Nom | Type | Description |
|---|---|---|
| resourceId |
string |
ID de la dernière ressource évaluée pour l’effet IfNotExists. |
| totalResources |
integer |
Nombre total de ressources auxquelles la condition d’existence s’applique. |
PendingField
Un champ qui devrait être évalué par rapport à Azure Policy pour déterminer les restrictions.
| Nom | Type | Description |
|---|---|---|
| field |
string |
Nom du champ. Cela peut être une propriété de premier niveau comme « nom » ou « type » ou un alias de champ Azure Policy. |
| values |
string[] |
La liste des valeurs potentielles pour le champ à évaluer par rapport à Azure Policy. |
PolicyEffectDetails
Détails de l’effet appliqué à la ressource.
| Nom | Type | Description |
|---|---|---|
| policyEffect |
string |
Effet appliqué à la ressource. http://aka.ms/policyeffects |
PolicyEvaluationResult
Résultat d’une évaluation de stratégie non conforme par rapport au contenu de ressource donné.
| Nom | Type | Description |
|---|---|---|
| effectDetails |
Détails de l’effet appliqué à la ressource. |
|
| evaluationDetails |
Résultats détaillés des expressions et valeurs de stratégie qui ont été évaluées. |
|
| evaluationResult |
string |
Résultat de l’évaluation de la stratégie par rapport à la ressource. Cela sera généralement « Non conforme », mais peut contenir d’autres valeurs si des erreurs ont été rencontrées. |
| policyInfo |
Détails de la stratégie évaluée. |
PolicyReference
Identificateurs de ressources pour une stratégie.
| Nom | Type | Description |
|---|---|---|
| policyAssignmentId |
string |
Identificateur de ressource de l’affectation de stratégie. |
| policyDefinitionId |
string |
Identificateur de ressource de la définition de stratégie. |
| policyDefinitionReferenceId |
string |
Identificateur de référence d’une définition de stratégie spécifique dans une définition de jeu de stratégies. |
| policySetDefinitionId |
string |
Identificateur de ressource de la définition du jeu de stratégies. |
TypedErrorInfo
Détails d’erreur spécifiques au scénario.
| Nom | Type | Description |
|---|---|---|
| info |
Détails de l’erreur spécifique au scénario. |
|
| type |
string |
Type de détails d’erreur inclus. |