Udostępnij za pośrednictwem


Policy Restrictions - Check At Subscription Scope

Sprawdza, jakie ograniczenia Azure Policy nałoży na zasób w ramach subskrypcji.

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

Parametry identyfikatora URI

Nazwa W Wymagane Typ Opis
subscriptionId
path True

string

minLength: 1

Identyfikator subskrypcji docelowej.

api-version
query True

string

minLength: 1

Wersja interfejsu API do użycia dla tej operacji.

Treść żądania

Nazwa Wymagane Typ Opis
resourceDetails True

CheckRestrictionsResourceDetails

Informacje o zasobie, który zostanie oceniony.

includeAuditEffect

boolean

Czy uwzględnić zasady z efektem "inspekcji" w wynikach. Wartość domyślna to fałsz.

pendingFields

PendingField[]

Lista pól i wartości, które powinny być oceniane pod kątem potencjalnych ograniczeń.

Odpowiedzi

Nazwa Typ Opis
200 OK

CheckRestrictionsResult

Ograniczenia nałożone na zasób przez Azure Policy.

Other Status Codes

ErrorResponse

Odpowiedź na błąd opisująca, dlaczego operacja nie powiodła się.

Zabezpieczenia

azure_auth

Azure Active Directory OAuth2 Flow

Typ: oauth2
Flow: implicit
Adres URL autoryzacji: https://login.microsoftonline.com/common/oauth2/authorize

Zakresy

Nazwa Opis
user_impersonation personifikacja konta użytkownika

Przykłady

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

Check policy restrictions at subscription scope

Przykładowe żądanie

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

Przykładowa odpowiedź

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

Przykładowe żądanie

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
}

Przykładowa odpowiedź

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

Definicje

Nazwa Opis
CheckRestrictionEvaluationDetails

Szczegóły oceny zasad.

CheckRestrictionsRequest

Parametry ograniczeń zasad sprawdzania opisujące szacowany zasób.

CheckRestrictionsResourceDetails

Informacje o zasobie, który zostanie oceniony.

CheckRestrictionsResult

Wynik oceny ograniczeń zasad sprawdzania zasobu.

ContentEvaluationResult

Wyniki oceny dla podanej częściowej zawartości zasobu.

ErrorDefinition

Definicja błędu.

ErrorResponse

Odpowiedź na błąd.

ExpressionEvaluationDetails

Szczegóły oceny wyrażeń języka zasad.

FieldRestriction

Ograniczenia dotyczące pola nałożonego przez określone zasady.

FieldRestrictionResult

Typ ograniczenia nałożonego na pole.

FieldRestrictions

Ograniczenia, które zostaną umieszczone w polu w zasobie według zasad.

IfNotExistsEvaluationDetails

Szczegóły oceny efektu IfNotExists.

PendingField

Pole, które powinno być ocenione względem Azure Policy, aby określić ograniczenia.

PolicyEffectDetails

Szczegóły efektu zastosowanego do zasobu.

PolicyEvaluationResult

Wynik oceny zasad niezgodnych z daną zawartością zasobu.

PolicyReference

Identyfikatory zasobów dla zasad.

TypedErrorInfo

Szczegóły błędu specyficzne dla scenariusza.

CheckRestrictionEvaluationDetails

Szczegóły oceny zasad.

Nazwa Typ Opis
evaluatedExpressions

ExpressionEvaluationDetails[]

Szczegóły obliczonych wyrażeń.

ifNotExistsDetails

IfNotExistsEvaluationDetails

Szczegóły oceny efektu IfNotExists.

reason

string

Przyczyna wyniku oceny.

CheckRestrictionsRequest

Parametry ograniczeń zasad sprawdzania opisujące szacowany zasób.

Nazwa Typ Domyślna wartość Opis
includeAuditEffect

boolean

False

Czy uwzględnić zasady z efektem "inspekcji" w wynikach. Wartość domyślna to fałsz.

pendingFields

PendingField[]

Lista pól i wartości, które powinny być oceniane pod kątem potencjalnych ograniczeń.

resourceDetails

CheckRestrictionsResourceDetails

Informacje o zasobie, który zostanie oceniony.

CheckRestrictionsResourceDetails

Informacje o zasobie, który zostanie oceniony.

Nazwa Typ Opis
apiVersion

string

Wersja interfejsu API zawartości zasobu.

resourceContent

object

Zawartość zasobu. Powinno to obejmować wszystkie właściwości, które są już znane i może być częściowym zestawem wszystkich właściwości zasobów.

scope

string

Zakres, w którym jest tworzony zasób. Jeśli na przykład zasób jest zasobem podrzędnym, będzie to identyfikator zasobu nadrzędnego.

CheckRestrictionsResult

Wynik oceny ograniczeń zasad sprawdzania zasobu.

Nazwa Typ Opis
contentEvaluationResult

ContentEvaluationResult

Wyniki oceny dla podanej częściowej zawartości zasobu.

fieldRestrictions

FieldRestrictions[]

Ograniczenia, które zostaną umieszczone w różnych polach w zasobie według zasad.

ContentEvaluationResult

Wyniki oceny dla podanej częściowej zawartości zasobu.

Nazwa Typ Opis
policyEvaluations

PolicyEvaluationResult[]

Wyniki oceny zasad względem danej zawartości zasobu. Spowoduje to wskazanie, czy podana część zawartości zostanie odrzucona as-is.

ErrorDefinition

Definicja błędu.

Nazwa Typ Opis
additionalInfo

TypedErrorInfo[]

Dodatkowe szczegóły błędu specyficzne dla scenariusza.

code

string

Kod błędu specyficzny dla usługi, który służy jako podstatu kodu błędu HTTP.

details

ErrorDefinition[]

Szczegóły błędu wewnętrznego.

message

string

Opis błędu.

target

string

Element docelowy błędu.

ErrorResponse

Odpowiedź na błąd.

Nazwa Typ Opis
error

ErrorDefinition

Szczegóły błędu.

ExpressionEvaluationDetails

Szczegóły oceny wyrażeń języka zasad.

Nazwa Typ Opis
expression

string

Obliczono wyrażenie.

expressionKind

string

Rodzaj wyrażenia, które zostało obliczone.

expressionValue

object

Wartość wyrażenia.

operator

string

Operator, aby porównać wartość wyrażenia i wartość docelową.

path

string

Ścieżka właściwości, jeśli wyrażenie jest polem lub aliasem.

result

string

Wynik oceny.

targetValue

object

Wartość docelowa do porównania z wartością wyrażenia.

FieldRestriction

Ograniczenia dotyczące pola nałożonego przez określone zasady.

Nazwa Typ Opis
defaultValue

string

Wartość, która zostanie ustawiona dla pola, jeśli użytkownik nie podaje wartości.

policy

PolicyReference

Szczegóły zasad, które powodują ograniczenie pola.

policyEffect

string

Wpływ zasad, które powodują ograniczenie pola. http://aka.ms/policyeffects

reason

string

Przyczyna ograniczenia.

result

FieldRestrictionResult

Typ ograniczenia nałożonego na pole.

values

string[]

Wartości, które zasady wymagają lub odrzucają pole.

FieldRestrictionResult

Typ ograniczenia nałożonego na pole.

Wartość Opis
Required

Pola i/lub wartości są wymagane przez zasady.

Removed

Pole zostanie usunięte przez zasady.

Deny

Pola i/lub wartości zostaną odrzucone przez zasady.

Audit

Pola i/lub wartości zostaną poddane inspekcji przez zasady.

FieldRestrictions

Ograniczenia, które zostaną umieszczone w polu w zasobie według zasad.

Nazwa Typ Opis
field

string

Nazwa pola. Może to być własność najwyższego poziomu, taka jak 'nazwa', 'type', albo alias pola Azure Policy.

restrictions

FieldRestriction[]

Ograniczenia wprowadzone w tym polu według zasad.

IfNotExistsEvaluationDetails

Szczegóły oceny efektu IfNotExists.

Nazwa Typ Opis
resourceId

string

Identyfikator ostatniego ocenianego zasobu dla efektu IfNotExists.

totalResources

integer

Łączna liczba zasobów, do których ma zastosowanie warunek istnienia.

PendingField

Pole, które powinno być ocenione względem Azure Policy, aby określić ograniczenia.

Nazwa Typ Opis
field

string

Nazwa pola. Może to być własność najwyższego poziomu, taka jak 'nazwa', 'type', albo alias pola Azure Policy.

values

string[]

Lista potencjalnych wartości dla pola, które powinny być oceniane względem Azure Policy.

PolicyEffectDetails

Szczegóły efektu zastosowanego do zasobu.

Nazwa Typ Opis
policyEffect

string

Efekt zastosowany do zasobu. http://aka.ms/policyeffects

PolicyEvaluationResult

Wynik oceny zasad niezgodnych z daną zawartością zasobu.

Nazwa Typ Opis
effectDetails

PolicyEffectDetails

Szczegóły efektu zastosowanego do zasobu.

evaluationDetails

CheckRestrictionEvaluationDetails

Szczegółowe wyniki wyrażeń zasad i wartości, które zostały ocenione.

evaluationResult

string

Wynik oceny zasad względem zasobu. Zazwyczaj będzie to wartość "NonCompliant", ale może zawierać inne wartości, jeśli napotkano błędy.

policyInfo

PolicyReference

Szczegóły zasad, które zostały ocenione.

PolicyReference

Identyfikatory zasobów dla zasad.

Nazwa Typ Opis
policyAssignmentId

string

Identyfikator zasobu przypisania zasad.

policyDefinitionId

string

Identyfikator zasobu definicji zasad.

policyDefinitionReferenceId

string

Identyfikator odwołania określonej definicji zasad w definicji zestawu zasad.

policySetDefinitionId

string

Identyfikator zasobu definicji zestawu zasad.

TypedErrorInfo

Szczegóły błędu specyficzne dla scenariusza.

Nazwa Typ Opis
info

Szczegóły błędu specyficzne dla scenariusza.

type

string

Typ dołączonych szczegółów błędu.