Share via


Policy Restrictions - Check At Subscription Scope

Überprüft, welche Einschränkungen Azure Policy für eine Ressource innerhalb eines Abonnements gelten.

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

URI-Parameter

Name In Erforderlich Typ Beschreibung
subscriptionId
path True

string

Hierbei handelt es sich um die ID des Zielabonnements.

api-version
query True

string

Hierbei handelt es sich um die für diesen Vorgang zu verwendende API-Version.

Anforderungstext

Name Erforderlich Typ Beschreibung
resourceDetails True

CheckRestrictionsResourceDetails

Die Informationen zur Ressource, die ausgewertet wird.

includeAuditEffect

boolean

Gibt an, ob Richtlinien mit dem Effekt "Überwachung" in die Ergebnisse einbezogen werden sollen. Der Standardwert ist „false“.

pendingFields

PendingField[]

Die Liste der Felder und Werte, die auf mögliche Einschränkungen ausgewertet werden sollen.

Antworten

Name Typ Beschreibung
200 OK

CheckRestrictionsResult

Die Einschränkungen, die von Azure Policy für die Ressource festgelegt werden.

Other Status Codes

ErrorResponse

Fehlerantwort mit Beschreibung des Grunds für den Fehler.

Sicherheit

azure_auth

Azure Active Directory-OAuth2-Flow

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Beschreibung
user_impersonation Identitätswechsel Ihres Benutzerkontos

Beispiele

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

Definitionen

Name Beschreibung
CheckRestrictionEvaluationDetails

Details zur Richtlinienauswertung.

CheckRestrictionsRequest

Die Parameter für Überprüfungsrichtlinieneinschränkungen, die die Ressource beschreiben, die ausgewertet wird.

CheckRestrictionsResourceDetails

Die Informationen zur Ressource, die ausgewertet wird.

CheckRestrictionsResult

Das Ergebnis einer Überprüfungsrichtlinieneinschränkung für eine Ressource.

ContentEvaluationResult

Auswertungsergebnisse für den bereitgestellten Teilressourceninhalt.

ErrorDefinition

Fehlerdefinition.

ErrorResponse

Fehlerantwort.

ExpressionEvaluationDetails

Auswertungsdetails von Richtliniensprachausdrücken.

FieldRestriction

Die Einschränkungen für ein Feld, die von einer bestimmten Richtlinie auferlegt werden.

FieldRestrictionResult

Die Art der Einschränkung, die dem Feld auferlegt wird.

FieldRestrictions

Die Einschränkungen, die für ein Feld in der Ressource nach Richtlinie platziert werden.

IfNotExistsEvaluationDetails

Auswertungsdetails des IfNotExists-Effekts.

PendingField

Ein Feld, das mit Azure Policy ausgewertet werden sollte, um Einschränkungen zu bestimmen.

PolicyEffectDetails

Die Details des Effekts, der auf die Ressource angewendet wurde.

PolicyEvaluationResult

Das Ergebnis einer nicht konformen Richtlinienauswertung für den angegebenen Ressourceninhalt.

PolicyReference

Ressourcenbezeichner für eine Richtlinie.

TypedErrorInfo

Szenariospezifische Fehlerdetails.

CheckRestrictionEvaluationDetails

Details zur Richtlinienauswertung.

Name Typ Beschreibung
evaluatedExpressions

ExpressionEvaluationDetails[]

Details der ausgewerteten Ausdrücke.

ifNotExistsDetails

IfNotExistsEvaluationDetails

Auswertungsdetails des IfNotExists-Effekts.

reason

string

Der Grund für das Auswertungsergebnis.

CheckRestrictionsRequest

Die Parameter für Überprüfungsrichtlinieneinschränkungen, die die Ressource beschreiben, die ausgewertet wird.

Name Typ Standardwert Beschreibung
includeAuditEffect

boolean

False

Gibt an, ob Richtlinien mit dem Effekt "Überwachung" in die Ergebnisse einbezogen werden sollen. Der Standardwert ist „false“.

pendingFields

PendingField[]

Die Liste der Felder und Werte, die auf mögliche Einschränkungen ausgewertet werden sollen.

resourceDetails

CheckRestrictionsResourceDetails

Die Informationen zur Ressource, die ausgewertet wird.

CheckRestrictionsResourceDetails

Die Informationen zur Ressource, die ausgewertet wird.

Name Typ Beschreibung
apiVersion

string

Die API-Version des Ressourceninhalts.

resourceContent

object

Der Ressourceninhalt. Dies sollte alle eigenschaften enthalten, die bereits bekannt sind, und kann ein Teilsatz aller Ressourceneigenschaften sein.

scope

string

Der Bereich, in dem die Ressource erstellt wird. Wenn die Ressource beispielsweise eine untergeordnete Ressource ist, ist dies die Ressourcen-ID der übergeordneten Ressource.

CheckRestrictionsResult

Das Ergebnis einer Überprüfungsrichtlinieneinschränkung für eine Ressource.

Name Typ Beschreibung
contentEvaluationResult

ContentEvaluationResult

Auswertungsergebnisse für den bereitgestellten Teilressourceninhalt.

fieldRestrictions

FieldRestrictions[]

Die Einschränkungen, die für verschiedene Felder in der Ressource nach Richtlinie festgelegt werden.

ContentEvaluationResult

Auswertungsergebnisse für den bereitgestellten Teilressourceninhalt.

Name Typ Beschreibung
policyEvaluations

PolicyEvaluationResult[]

Ergebnisse der Richtlinienauswertung für den angegebenen Ressourceninhalt. Dadurch wird angegeben, ob der bereitgestellte Teilinhalt unverändert abgelehnt wird.

ErrorDefinition

Fehlerdefinition.

Name Typ Beschreibung
additionalInfo

TypedErrorInfo[]

Zusätzliche szenariospezifische Fehlerdetails.

code

string

Dienstspezifischer Fehlercode, der als Unterstatus für den HTTP-Fehlercode dient.

details

ErrorDefinition[]

Interne Fehlerdetails.

message

string

Beschreibung des Fehlers

target

string

Das Ziel des Fehlers.

ErrorResponse

Fehlerantwort.

Name Typ Beschreibung
error

ErrorDefinition

Die Fehlerdetails.

ExpressionEvaluationDetails

Auswertungsdetails von Richtliniensprachausdrücken.

Name Typ Beschreibung
expression

string

Ausdruck ausgewertet.

expressionKind

string

Die Art des Ausdrucks, der ausgewertet wurde.

expressionValue

object

Wert des Ausdrucks.

operator

string

Operator zum Vergleichen des Ausdruckswerts und des Zielwerts.

path

string

Eigenschaftenpfad, wenn der Ausdruck ein Feld oder ein Alias ist.

result

string

Auswertungsergebnis.

targetValue

object

Zielwert, der mit dem Ausdruckswert verglichen werden soll.

FieldRestriction

Die Einschränkungen für ein Feld, die von einer bestimmten Richtlinie auferlegt werden.

Name Typ Beschreibung
defaultValue

string

Der Wert, den die Richtlinie für das Feld festlegt, wenn der Benutzer keinen Wert bereitstellt.

policy

PolicyReference

Die Details der Richtlinie, die die Feldeinschränkung verursacht.

policyEffect

string

Der Effekt der Richtlinie, die die Feldeinschränkung verursacht. http://aka.ms/policyeffects

reason

string

Der Grund für die Einschränkung.

result

FieldRestrictionResult

Die Art der Einschränkung, die dem Feld auferlegt wird.

values

string[]

Die Werte, die die Richtlinie für das Feld benötigt oder verweigert.

FieldRestrictionResult

Die Art der Einschränkung, die dem Feld auferlegt wird.

Name Typ Beschreibung
Audit

string

Das Feld und/oder die Werte werden von der Richtlinie überwacht.

Deny

string

Das Feld und/oder die Werte werden von der Richtlinie verweigert.

Removed

string

Das Feld wird von der Richtlinie entfernt.

Required

string

Das Feld und/oder die Werte sind für die Richtlinie erforderlich.

FieldRestrictions

Die Einschränkungen, die für ein Feld in der Ressource nach Richtlinie platziert werden.

Name Typ Beschreibung
field

string

Der Name des Felds. Dies kann eine Eigenschaft der obersten Ebene wie "name" oder "type" oder ein Azure Policy Feldalias sein.

restrictions

FieldRestriction[]

Die Einschränkungen für dieses Feld nach Richtlinie.

IfNotExistsEvaluationDetails

Auswertungsdetails des IfNotExists-Effekts.

Name Typ Beschreibung
resourceId

string

ID der zuletzt ausgewerteten Ressource für den IfNotExists-Effekt.

totalResources

integer

Gesamtanzahl der Ressourcen, für die die Existenzbedingung gilt.

PendingField

Ein Feld, das mit Azure Policy ausgewertet werden sollte, um Einschränkungen zu bestimmen.

Name Typ Beschreibung
field

string

Der Name des Felds. Dies kann eine Eigenschaft der obersten Ebene wie "name" oder "type" oder ein Azure Policy Feldalias sein.

values

string[]

Die Liste der potenziellen Werte für das Feld, das anhand Azure Policy ausgewertet werden soll.

PolicyEffectDetails

Die Details des Effekts, der auf die Ressource angewendet wurde.

Name Typ Beschreibung
policyEffect

string

Der Effekt, der auf die Ressource angewendet wurde. http://aka.ms/policyeffects

PolicyEvaluationResult

Das Ergebnis einer nicht konformen Richtlinienauswertung für den angegebenen Ressourceninhalt.

Name Typ Beschreibung
effectDetails

PolicyEffectDetails

Die Details des Effekts, der auf die Ressource angewendet wurde.

evaluationDetails

CheckRestrictionEvaluationDetails

Die detaillierten Ergebnisse der ausgewerteten Richtlinienausdrücke und -werte.

evaluationResult

string

Das Ergebnis der Richtlinienauswertung für die Ressource. Dies ist in der Regel "NonCompliant", kann jedoch andere Werte enthalten, wenn Fehler aufgetreten sind.

policyInfo

PolicyReference

Die Details der ausgewerteten Richtlinie.

PolicyReference

Ressourcenbezeichner für eine Richtlinie.

Name Typ Beschreibung
policyAssignmentId

string

Der Ressourcenbezeichner der Richtlinienzuweisung.

policyDefinitionId

string

Der Ressourcenbezeichner der Richtliniendefinition.

policyDefinitionReferenceId

string

Der Verweisbezeichner einer bestimmten Richtliniendefinition innerhalb einer Richtliniensatzdefinition.

policySetDefinitionId

string

Der Ressourcenbezeichner der Richtliniensatzdefinition.

TypedErrorInfo

Szenariospezifische Fehlerdetails.

Name Typ Beschreibung
info

Die szenariospezifischen Fehlerdetails.

type

string

Der Typ der enthaltenen Fehlerdetails.