Поделиться через


Microsoft.Политика авторизацииИсключения 2022-07-01-preview

Определение ресурсов Bicep

Тип ресурса policyExemptions может быть развернут с операциями, нацеленными на:

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Чтобы создать ресурс Microsoft.Authorization/policyExemptions, добавьте в шаблон следующий бицепс.

resource symbolicname 'Microsoft.Authorization/policyExemptions@2022-07-01-preview' = {
  scope: resourceSymbolicName or scope
  name: 'string'
  properties: {
    assignmentScopeValidation: 'string'
    description: 'string'
    displayName: 'string'
    exemptionCategory: 'string'
    expiresOn: 'string'
    metadata: any(...)
    policyAssignmentId: 'string'
    policyDefinitionReferenceIds: [
      'string'
    ]
    resourceSelectors: [
      {
        name: 'string'
        selectors: [
          {
            in: [
              'string'
            ]
            kind: 'string'
            notIn: [
              'string'
            ]
          }
        ]
      }
    ]
  }
}

Значения свойств

Microsoft.Authorization/policyExemptions

Name Description Value
name имя ресурса. строка (обязательно)
properties Недвижимость для исключения из полиса. PolicyExemptionProperties (обязательно)
scope Используется при создании ресурса в области, отличной от области развертывания. Задайте для этого свойства символьное имя ресурса, чтобы применить ресурс расширения.

PolicyExemptionProperties

Name Description Value
assignmentScopeValidation Параметр, проверяя, находится ли исключение в области назначения или находится под ней. 'Default'
'DoNotValidate'
description Описание исключения из полиса. string
displayName Отображаемое имя исключения политики. string
exemptionCategory Категория исключения политики. Возможные значения: Отказ и Смягчение. 'Mitigated'
«Отказ» (обязательно)
expiresOn Дата и время окончания срока действия (в формате UTC ISO 8601 формат гггг-ММ-ддTHH:mm:ssZ) исключения политики. string
metadata Метаданные исключения политики. Метаданные — это открытый завершенный объект, который обычно представляет собой коллекцию пар значений ключей. any
policyAssignmentId Идентификатор назначения политики, которое подлежит исключению. строка (обязательно)
policyDefinitionReferenceIds Список ссылочных идентификаторов определения политики, если связанное назначение политики является назначением определения набора политик. string[]
resourceSelectors Список селекторов ресурсов для фильтрации политик по свойствам ресурсов. ResourceSelector[]

ResourceSelector

Name Description Value
name Имя селектора ресурсов. string
selectors Список выражений селектора. Selector[]

Selector

Name Description Value
in Список значений для фильтрации. string[]
kind Вид селектора. 'policyDefinitionReferenceId'
'resourceLocation'
'resourceType'
'resourceWithoutLocation'
notIn Список значений для фильтрации. string[]

Примеры использования

Примеры Bicep

Простой пример развертывания Policy Exemption.

targetScope = 'subscription'

param resourceName string = 'acctest0001'

resource policyAssignment 'Microsoft.Authorization/policyAssignments@2022-06-01' = {
  name: resourceName
  properties: {
    displayName: ''
    enforcementMode: 'Default'
    policyDefinitionId: policyDefinition.id
    scope: subscription().id
  }
}

resource policyDefinition 'Microsoft.Authorization/policyDefinitions@2021-06-01' = {
  name: resourceName
  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'
  }
}

resource policyExemption 'Microsoft.Authorization/policyExemptions@2020-07-01-preview' = {
  name: resourceName
  properties: {
    exemptionCategory: 'Mitigated'
    policyAssignmentId: policyAssignment.id
    policyDefinitionReferenceIds: []
  }
}

Определение ресурса шаблона ARM

Тип ресурса policyExemptions может быть развернут с операциями, нацеленными на:

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Чтобы создать ресурс Microsoft.Authorization/policyExemptions, добавьте в шаблон следующий JSON.

{
  "type": "Microsoft.Authorization/policyExemptions",
  "apiVersion": "2022-07-01-preview",
  "name": "string",
  "properties": {
    "assignmentScopeValidation": "string",
    "description": "string",
    "displayName": "string",
    "exemptionCategory": "string",
    "expiresOn": "string",
    "metadata": {},
    "policyAssignmentId": "string",
    "policyDefinitionReferenceIds": [ "string" ],
    "resourceSelectors": [
      {
        "name": "string",
        "selectors": [
          {
            "in": [ "string" ],
            "kind": "string",
            "notIn": [ "string" ]
          }
        ]
      }
    ]
  }
}

Значения свойств

Microsoft.Authorization/policyExemptions

Name Description Value
apiVersion Версия API '2022-07-01-preview'
name имя ресурса. строка (обязательно)
properties Недвижимость для исключения из полиса. PolicyExemptionProperties (обязательно)
type Тип ресурса 'Microsoft.Authorization/policyExemptions'

PolicyExemptionProperties

Name Description Value
assignmentScopeValidation Параметр, проверяя, находится ли исключение в области назначения или находится под ней. 'Default'
'DoNotValidate'
description Описание исключения из полиса. string
displayName Отображаемое имя исключения политики. string
exemptionCategory Категория исключения политики. Возможные значения: Отказ и Смягчение. 'Mitigated'
«Отказ» (обязательно)
expiresOn Дата и время окончания срока действия (в формате UTC ISO 8601 формат гггг-ММ-ддTHH:mm:ssZ) исключения политики. string
metadata Метаданные исключения политики. Метаданные — это открытый завершенный объект, который обычно представляет собой коллекцию пар значений ключей. any
policyAssignmentId Идентификатор назначения политики, которое подлежит исключению. строка (обязательно)
policyDefinitionReferenceIds Список ссылочных идентификаторов определения политики, если связанное назначение политики является назначением определения набора политик. string[]
resourceSelectors Список селекторов ресурсов для фильтрации политик по свойствам ресурсов. ResourceSelector[]

ResourceSelector

Name Description Value
name Имя селектора ресурсов. string
selectors Список выражений селектора. Selector[]

Selector

Name Description Value
in Список значений для фильтрации. string[]
kind Вид селектора. 'policyDefinitionReferenceId'
'resourceLocation'
'resourceType'
'resourceWithoutLocation'
notIn Список значений для фильтрации. string[]

Примеры использования

Определение ресурса Terraform (поставщик AzAPI)

Тип ресурса policyExemptions может быть развернут с операциями, нацеленными на:

  • Арендатор* Управленческие группы* Подписка* Группы ресурсов

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Чтобы создать ресурс Microsoft.Authorization/policyExemptions, добавьте в шаблон следующий Terraform.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Authorization/policyExemptions@2022-07-01-preview"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      assignmentScopeValidation = "string"
      description = "string"
      displayName = "string"
      exemptionCategory = "string"
      expiresOn = "string"
      metadata = ?
      policyAssignmentId = "string"
      policyDefinitionReferenceIds = [
        "string"
      ]
      resourceSelectors = [
        {
          name = "string"
          selectors = [
            {
              in = [
                "string"
              ]
              kind = "string"
              notIn = [
                "string"
              ]
            }
          ]
        }
      ]
    }
  }
}

Значения свойств

Microsoft.Authorization/policyExemptions

Name Description Value
name имя ресурса. строка (обязательно)
parent_id Идентификатор ресурса для применения этого ресурса расширения. строка (обязательно)
properties Недвижимость для исключения из полиса. PolicyExemptionProperties (обязательно)
type Тип ресурса "Microsoft.Authorization/policyExemptions@2022-07-01-preview"

PolicyExemptionProperties

Name Description Value
assignmentScopeValidation Параметр, проверяя, находится ли исключение в области назначения или находится под ней. 'Default'
'DoNotValidate'
description Описание исключения из полиса. string
displayName Отображаемое имя исключения политики. string
exemptionCategory Категория исключения политики. Возможные значения: Отказ и Смягчение. 'Mitigated'
«Отказ» (обязательно)
expiresOn Дата и время окончания срока действия (в формате UTC ISO 8601 формат гггг-ММ-ддTHH:mm:ssZ) исключения политики. string
metadata Метаданные исключения политики. Метаданные — это открытый завершенный объект, который обычно представляет собой коллекцию пар значений ключей. any
policyAssignmentId Идентификатор назначения политики, которое подлежит исключению. строка (обязательно)
policyDefinitionReferenceIds Список ссылочных идентификаторов определения политики, если связанное назначение политики является назначением определения набора политик. string[]
resourceSelectors Список селекторов ресурсов для фильтрации политик по свойствам ресурсов. ResourceSelector[]

ResourceSelector

Name Description Value
name Имя селектора ресурсов. string
selectors Список выражений селектора. Selector[]

Selector

Name Description Value
in Список значений для фильтрации. string[]
kind Вид селектора. 'policyDefinitionReferenceId'
'resourceLocation'
'resourceType'
'resourceWithoutLocation'
notIn Список значений для фильтрации. string[]

Примеры использования

Примеры Terraform

Простой пример развертывания Policy Exemption.

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

data "azapi_resource" "subscription" {
  type                   = "Microsoft.Resources/subscriptions@2021-01-01"
  resource_id            = "/subscriptions/${data.azurerm_client_config.current.subscription_id}"
  response_export_values = ["*"]
}

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    = ["*"]
}

resource "azapi_resource" "policyAssignment" {
  type      = "Microsoft.Authorization/policyAssignments@2022-06-01"
  parent_id = data.azapi_resource.subscription.id
  name      = var.resource_name
  location  = "westeurope"
  identity {
    type         = "SystemAssigned"
    identity_ids = []
  }
  body = {
    properties = {
      displayName        = ""
      enforcementMode    = "Default"
      policyDefinitionId = azapi_resource.policyDefinition.id
      scope              = data.azapi_resource.subscription.id
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "policyExemption" {
  type      = "Microsoft.Authorization/policyExemptions@2020-07-01-preview"
  parent_id = data.azapi_resource.subscription.id
  name      = var.resource_name
  body = {
    properties = {
      exemptionCategory  = "Mitigated"
      policyAssignmentId = azapi_resource.policyAssignment.id
      policyDefinitionReferenceIds = [
      ]
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}