Dela via


Policy Restrictions - Check At Resource Group Scope

Kontrollerar vilka begränsningar Azure Policy kommer att använda för en resurs i en resursgrupp. Använd detta när resursgruppen som resursen ska skapas i redan är känd.

POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/checkPolicyRestrictions?api-version=2023-03-01

URI-parametrar

Name I Obligatorisk Typ Description
resourceGroupName
path True

string

minLength: 1
maxLength: 90

Namnet på resursgruppen. Namnet är skiftlägesokänsligt.

subscriptionId
path True

string

minLength: 1

ID för målprenumerationen.

api-version
query True

string

minLength: 1

DEN API-version som ska användas för den här åtgärden.

Begärandetext

Name Obligatorisk Typ Description
resourceDetails True

CheckRestrictionsResourceDetails

Information om resursen som ska utvärderas.

includeAuditEffect

boolean

Om du vill inkludera principer med "granskningseffekten" i resultatet. Standardvärdet är falskt.

pendingFields

PendingField[]

Listan över fält och värden som ska utvärderas för potentiella begränsningar.

Svar

Name Typ Description
200 OK

CheckRestrictionsResult

De begränsningar som ska tillämpas på resursen av Azure Policy.

Other Status Codes

ErrorResponse

Felsvar som beskriver varför åtgärden misslyckades.

Säkerhet

azure_auth

Azure Active Directory OAuth2 Flow

Typ: oauth2
Flow: implicit
Auktoriseringswebbadress: https://login.microsoftonline.com/common/oauth2/authorize

Omfattningar

Name Description
user_impersonation personifiera ditt användarkonto

Exempel

Check policy restrictions at resource group scope
Check policy restrictions at resource group scope including audit effect

Check policy restrictions at resource group scope

Exempelbegäran

POST https://management.azure.com/subscriptions/35ee058e-5fa0-414c-8145-3ebb8d09b6e2/resourceGroups/vmRg/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"
    }
  ]
}

Exempelsvar

{
  "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 resource group scope including audit effect

Exempelbegäran

POST https://management.azure.com/subscriptions/35ee058e-5fa0-414c-8145-3ebb8d09b6e2/resourceGroups/vmRg/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
}

Exempelsvar

{
  "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"
        }
      }
    ]
  }
}

Definitioner

Name Description
CheckRestrictionEvaluationDetails

Information om principutvärdering.

CheckRestrictionsRequest

Parametrarna för kontrollprincipbegränsningar som beskriver resursen som utvärderas.

CheckRestrictionsResourceDetails

Information om resursen som ska utvärderas.

CheckRestrictionsResult

Resultatet av en utvärdering av kontrollprincipbegränsningar för en resurs.

ContentEvaluationResult

Utvärderingsresultat för det angivna partiella resursinnehållet.

ErrorDefinition

Feldefinition.

ErrorResponse

Felsvar.

ExpressionEvaluationDetails

Utvärderingsinformation om principspråkuttryck.

FieldRestriction

Begränsningarna för ett fält som införts av en specifik princip.

FieldRestrictionResult

Den typ av begränsning som tillämpas på fältet.

FieldRestrictions

De begränsningar som ska placeras på ett fält i resursen efter princip.

IfNotExistsEvaluationDetails

Utvärderingsinformation om IfNotExists-effekten.

PendingField

Ett fält som ska utvärderas mot Azure Policy för att fastställa begränsningar.

PolicyEffectDetails

Information om den effekt som tillämpades på resursen.

PolicyEvaluationResult

Resultatet av en icke-kompatibel principutvärdering mot det angivna resursinnehållet.

PolicyReference

Resursidentifierare för en princip.

TypedErrorInfo

Scenariospecifik felinformation.

CheckRestrictionEvaluationDetails

Information om principutvärdering.

Name Typ Description
evaluatedExpressions

ExpressionEvaluationDetails[]

Information om de utvärderade uttrycken.

ifNotExistsDetails

IfNotExistsEvaluationDetails

Utvärderingsinformation om IfNotExists-effekten.

reason

string

Anledningen till utvärderingsresultatet.

CheckRestrictionsRequest

Parametrarna för kontrollprincipbegränsningar som beskriver resursen som utvärderas.

Name Typ Standardvärde Description
includeAuditEffect

boolean

False

Om du vill inkludera principer med "granskningseffekten" i resultatet. Standardvärdet är falskt.

pendingFields

PendingField[]

Listan över fält och värden som ska utvärderas för potentiella begränsningar.

resourceDetails

CheckRestrictionsResourceDetails

Information om resursen som ska utvärderas.

CheckRestrictionsResourceDetails

Information om resursen som ska utvärderas.

Name Typ Description
apiVersion

string

API-versionen av resursinnehållet.

resourceContent

object

Resursinnehållet. Detta bör omfatta vilka egenskaper som redan är kända och kan vara en partiell uppsättning av alla resursegenskaper.

scope

string

Omfånget där resursen skapas. Om resursen till exempel är en underordnad resurs är detta den överordnade resursens resurs-ID.

CheckRestrictionsResult

Resultatet av en utvärdering av kontrollprincipbegränsningar för en resurs.

Name Typ Description
contentEvaluationResult

ContentEvaluationResult

Utvärderingsresultat för det angivna partiella resursinnehållet.

fieldRestrictions

FieldRestrictions[]

De begränsningar som ska placeras på olika fält i resursen efter princip.

ContentEvaluationResult

Utvärderingsresultat för det angivna partiella resursinnehållet.

Name Typ Description
policyEvaluations

PolicyEvaluationResult[]

Principutvärderingsresultat mot det angivna resursinnehållet. Detta anger om det partiella innehåll som angavs kommer att nekas as-is.

ErrorDefinition

Feldefinition.

Name Typ Description
additionalInfo

TypedErrorInfo[]

Ytterligare scenariospecifik felinformation.

code

string

Tjänstspecifik felkod som fungerar som understatus för HTTP-felkoden.

details

ErrorDefinition[]

Intern felinformation.

message

string

Beskrivning av felet.

target

string

Målet för felet.

ErrorResponse

Felsvar.

Name Typ Description
error

ErrorDefinition

Felinformationen.

ExpressionEvaluationDetails

Utvärderingsinformation om principspråkuttryck.

Name Typ Description
expression

string

Uttrycket utvärderas.

expressionKind

string

Den typ av uttryck som utvärderades.

expressionValue

object

Uttryckets värde.

operator

string

Operator för att jämföra uttrycksvärdet och målvärdet.

path

string

Egenskapssökväg om uttrycket är ett fält eller ett alias.

result

string

Utvärderingsresultat.

targetValue

object

Målvärde som ska jämföras med uttrycksvärdet.

FieldRestriction

Begränsningarna för ett fält som införts av en specifik princip.

Name Typ Description
defaultValue

string

Det värde som principen anger för fältet om användaren inte anger något värde.

policy

PolicyReference

Information om den princip som orsakar fältbegränsningen.

policyEffect

string

Effekten av principen som orsakar fältbegränsningen. http://aka.ms/policyeffects

reason

string

Orsaken till begränsningen.

result

FieldRestrictionResult

Den typ av begränsning som tillämpas på fältet.

values

string[]

De värden som principen antingen kräver eller nekar för fältet.

FieldRestrictionResult

Den typ av begränsning som tillämpas på fältet.

Värde Description
Audit

Fältet och/eller värdena granskas av principen.

Deny

Fältet och/eller värdena nekas av principen.

Removed

Fältet tas bort av principen.

Required

Fältet och/eller värdena krävs av principen.

FieldRestrictions

De begränsningar som ska placeras på ett fält i resursen efter princip.

Name Typ Description
field

string

Namnet på fältet. Det kan vara en toppnivåegenskap som "namn" eller "typ" eller ett Azure Policy-fältalias.

restrictions

FieldRestriction[]

Begränsningarna för fältet efter princip.

IfNotExistsEvaluationDetails

Utvärderingsinformation om IfNotExists-effekten.

Name Typ Description
resourceId

string

ID för den senast utvärderade resursen för IfNotExists-effekten.

totalResources

integer

Totalt antal resurser som existensvillkoret är tillämpligt på.

PendingField

Ett fält som ska utvärderas mot Azure Policy för att fastställa begränsningar.

Name Typ Description
field

string

Namnet på fältet. Det kan vara en toppnivåegenskap som "namn" eller "typ" eller ett Azure Policy-fältalias.

values

string[]

Listan över potentiella värden för fältet som ska utvärderas mot Azure Policy.

PolicyEffectDetails

Information om den effekt som tillämpades på resursen.

Name Typ Description
policyEffect

string

Den effekt som tillämpades på resursen. http://aka.ms/policyeffects

PolicyEvaluationResult

Resultatet av en icke-kompatibel principutvärdering mot det angivna resursinnehållet.

Name Typ Description
effectDetails

PolicyEffectDetails

Information om den effekt som tillämpades på resursen.

evaluationDetails

CheckRestrictionEvaluationDetails

Detaljerade resultat av de principuttryck och värden som utvärderades.

evaluationResult

string

Resultatet av principutvärderingen mot resursen. Detta är vanligtvis "Inkompatibelt" men kan innehålla andra värden om fel påträffades.

policyInfo

PolicyReference

Information om principen som utvärderades.

PolicyReference

Resursidentifierare för en princip.

Name Typ Description
policyAssignmentId

string

Resursidentifieraren för principtilldelningen.

policyDefinitionId

string

Resursidentifieraren för principdefinitionen.

policyDefinitionReferenceId

string

Referensidentifieraren för en specifik principdefinition i en principuppsättningsdefinition.

policySetDefinitionId

string

Resursidentifieraren för principuppsättningsdefinitionen.

TypedErrorInfo

Scenariospecifik felinformation.

Name Typ Description
info

Scenariospecifik felinformation.

type

string

Typ av inkluderad felinformation.