Udostępnij przez


Microsoft.Authorization policyDefinitions 2016-12-01

Definicja zasobu Bicep

Typ zasobu policyDefinitions można wdrożyć przy użyciu operacji docelowych:

Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennika zmian.

Format zasobu

Aby utworzyć zasób Microsoft.Authorization/policyDefinitions, dodaj następujący kod Bicep do szablonu.

resource symbolicname 'Microsoft.Authorization/policyDefinitions@2016-12-01' = {
  scope: resourceSymbolicName or scope
  name: 'string'
  properties: {
    description: 'string'
    displayName: 'string'
    metadata: any(...)
    mode: 'string'
    parameters: any(...)
    policyRule: any(...)
    policyType: 'string'
  }
}

Wartości właściwości

Microsoft.Authorization/policyDefinitions

Nazwa Opis Wartość
nazwa Nazwa zasobu ciąg (wymagany)
Właściwości Właściwości definicji zasad. PolicyDefinitionProperties
zakres Użyj polecenia podczas tworzenia zasobu w zakresie innym niż zakres wdrożenia. Ustaw tę właściwość na symboliczną nazwę zasobu, aby zastosować zasób rozszerzenia.

PolicyDefinitionProperties

Nazwa Opis Wartość
opis Opis definicji zasad. ciąg
nazwa wyświetlana Nazwa wyświetlana definicji zasad. ciąg
metadane Metadane definicji zasad. jakikolwiek
tryb Tryb definicji zasad. Możliwe wartości to NotSpecified, Indexed i All. "Wszystko"
"Indeksowane"
"NotSpecified"
Parametry Wymagane, jeśli parametr jest używany w regule zasad. jakikolwiek
policyRule Reguła zasad. jakikolwiek
policyType Typ definicji zasad. Możliwe wartości to NotSpecified, BuiltIn i Custom. "BuiltIn"
"Niestandardowy"
"NotSpecified"

Przykłady użycia

Przykłady szybkiego startu platformy Azure

Poniższe szablony szybkiego startu platformy Azure zawierają przykłady Bicep na potrzeby wdrażania tego typu zasobu.

Plik Bicep Opis
Tworzenie menedżera sieci wirtualnej platformy Azure i przykładowych sieci wirtualnych Ten szablon umożliwia wdrożenie menedżera sieci wirtualnej platformy Azure i przykładowych sieci wirtualnych w nazwanej grupie zasobów. Obsługuje wiele topologii łączności i typów członkostwa w grupach sieci.
wdrażanie def zasad i przypisywanie do wielu grup mgmt Ten szablon jest szablonem na poziomie grupy zarządzania, który utworzy definicję zasad i przypisze te zasady do wielu grup zarządzania.
Wdrażanie definicji zasad i przypisywanie ich do grupy zarządzania Ten szablon jest szablonem na poziomie grupy zarządzania, który utworzy definicję zasad i przypisze te zasady do docelowej grupy zarządzania. Obecnie nie można wdrożyć tego szablonu za pośrednictwem witryny Azure Portal.

Definicja zasobu szablonu usługi ARM

Typ zasobu policyDefinitions można wdrożyć przy użyciu operacji docelowych:

Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennika zmian.

Format zasobu

Aby utworzyć zasób Microsoft.Authorization/policyDefinitions, dodaj następujący kod JSON do szablonu.

{
  "type": "Microsoft.Authorization/policyDefinitions",
  "apiVersion": "2016-12-01",
  "name": "string",
  "properties": {
    "description": "string",
    "displayName": "string",
    "metadata": {},
    "mode": "string",
    "parameters": {},
    "policyRule": {},
    "policyType": "string"
  }
}

Wartości właściwości

Microsoft.Authorization/policyDefinitions

Nazwa Opis Wartość
apiVersion Wersja interfejsu API '2016-12-01'
nazwa Nazwa zasobu ciąg (wymagany)
Właściwości Właściwości definicji zasad. PolicyDefinitionProperties
typ Typ zasobu "Microsoft.Authorization/policyDefinitions"

PolicyDefinitionProperties

Nazwa Opis Wartość
opis Opis definicji zasad. ciąg
nazwa wyświetlana Nazwa wyświetlana definicji zasad. ciąg
metadane Metadane definicji zasad. jakikolwiek
tryb Tryb definicji zasad. Możliwe wartości to NotSpecified, Indexed i All. "Wszystko"
"Indeksowane"
"NotSpecified"
Parametry Wymagane, jeśli parametr jest używany w regule zasad. jakikolwiek
policyRule Reguła zasad. jakikolwiek
policyType Typ definicji zasad. Możliwe wartości to NotSpecified, BuiltIn i Custom. "BuiltIn"
"Niestandardowy"
"NotSpecified"

Przykłady użycia

Szablony szybkiego startu platformy Azure

Następujące szablony szybkiego startu platformy Azure wdrożyć ten typ zasobu.

Szablon Opis
Tworzenie menedżera sieci wirtualnej platformy Azure i przykładowych sieci wirtualnych

wdrażanie w usłudze Azure
Ten szablon umożliwia wdrożenie menedżera sieci wirtualnej platformy Azure i przykładowych sieci wirtualnych w nazwanej grupie zasobów. Obsługuje wiele topologii łączności i typów członkostwa w grupach sieci.
wdrażanie def zasad i przypisywanie do wielu grup mgmt

wdrażanie w usłudze Azure
Ten szablon jest szablonem na poziomie grupy zarządzania, który utworzy definicję zasad i przypisze te zasady do wielu grup zarządzania.
Wdrażanie definicji zasad i przypisywanie ich do grupy zarządzania

wdrażanie w usłudze Azure
Ten szablon jest szablonem na poziomie grupy zarządzania, który utworzy definicję zasad i przypisze te zasady do docelowej grupy zarządzania. Obecnie nie można wdrożyć tego szablonu za pośrednictwem witryny Azure Portal.

Definicja zasobu narzędzia Terraform (dostawcy AzAPI)

Typ zasobu policyDefinitions można wdrożyć przy użyciu operacji docelowych:

Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennika zmian.

Format zasobu

Aby utworzyć zasób Microsoft.Authorization/policyDefinitions, dodaj następujący program Terraform do szablonu.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Authorization/policyDefinitions@2016-12-01"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      description = "string"
      displayName = "string"
      metadata = ?
      mode = "string"
      parameters = ?
      policyRule = ?
      policyType = "string"
    }
  }
}

Wartości właściwości

Microsoft.Authorization/policyDefinitions

Nazwa Opis Wartość
nazwa Nazwa zasobu ciąg (wymagany)
parent_id Identyfikator zasobu, do który ma być stosowany ten zasób rozszerzenia. ciąg (wymagany)
Właściwości Właściwości definicji zasad. PolicyDefinitionProperties
typ Typ zasobu "Microsoft.Authorization/policyDefinitions@2016-12-01"

PolicyDefinitionProperties

Nazwa Opis Wartość
opis Opis definicji zasad. ciąg
nazwa wyświetlana Nazwa wyświetlana definicji zasad. ciąg
metadane Metadane definicji zasad. jakikolwiek
tryb Tryb definicji zasad. Możliwe wartości to NotSpecified, Indexed i All. "Wszystko"
"Indeksowane"
"NotSpecified"
Parametry Wymagane, jeśli parametr jest używany w regule zasad. jakikolwiek
policyRule Reguła zasad. jakikolwiek
policyType Typ definicji zasad. Możliwe wartości to NotSpecified, BuiltIn i Custom. "BuiltIn"
"Niestandardowy"
"NotSpecified"

Przykłady użycia

Przykłady programu Terraform

Podstawowy przykład wdrażania definicji zasad autoryzacji.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
    azurerm = {
      source = "hashicorp/azurerm"
    }
  }
}

provider "azurerm" {
  features {
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "eastus"
}

data "azurerm_client_config" "current" {
}

resource "azapi_resource" "policyDefinition" {
  type      = "Microsoft.Authorization/policyDefinitions@2021-06-01"
  parent_id = "/subscriptions/${data.azurerm_client_config.current.subscription_id}"
  name      = var.resource_name
  body = {
    properties = {
      description = ""
      displayName = "my-policy-definition"
      mode        = "All"
      parameters = {
        allowedLocations = {
          metadata = {
            description = "The list of allowed locations for resources."
            displayName = "Allowed locations"
            strongType  = "location"
          }
          type = "Array"
        }
      }
      policyRule = {
        if = {
          not = {
            field = "location"
            in    = "[parameters('allowedLocations')]"
          }
        }
        then = {
          effect = "audit"
        }
      }
      policyType = "Custom"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}