次の方法で共有


Microsoft.Authorization ポリシー定義

Bicepリソースの定義

policyDefinitions リソースの種類は、次を対象とする操作と共にデプロイできます。

  • 管理グループの - サブスクリプション管理グループの展開コマンド 参照 - サブスクリプションの展開コマンド 参照してください

各 API バージョンで変更されたプロパティの一覧については、変更ログの参照してください。

リソースの形式

Microsoft.Authorization/policyDefinitionsリソースを作成するには、テンプレートに以下のBicepを追加します。

resource symbolicname 'Microsoft.Authorization/policyDefinitions@2025-12-01-preview' = {
  name: 'string'
  properties: {
    description: 'string'
    displayName: 'string'
    externalEvaluationEnforcementSettings: {
      endpointSettings: {
        details: any(...)
        kind: 'string'
      }
      missingTokenAction: 'string'
      resultLifespan: 'string'
      roleDefinitionIds: [
        'string'
      ]
    }
    metadata: any(...)
    mode: 'string'
    parameters: {
      {customized property}: {
        allowedValues: [
          any(...)
        ]
        defaultValue: any(...)
        metadata: {
          assignPermissions: bool
          description: 'string'
          displayName: 'string'
          strongType: 'string'
        }
        schema: any(...)
        type: 'string'
      }
    }
    policyRule: any(...)
    policyType: 'string'
    version: 'string'
    versions: [
      'string'
    ]
  }
}

プロパティ値

Microsoft.Authorization/policyDefinitions

名前 説明 価値
名前 リソース名

制約:
パターン = ^[^<>*%&:\?.+/]*[^<>*%&:\?.+/ ]+$ (必須)
プロパティ ポリシー定義のプロパティ。 PolicyDefinitionProperties の

ExternalEvaluationEndpointSettings (英語)

名前 説明 価値
細部 エンドポイントの詳細。 任意
種類 エンドポイントの種類。 文字列

ExternalEvaluationEnforcementSettings (英語)

名前 説明 価値
endpointSettings (エンドポイント設定) 評価結果を提供する外部エンドポイントの設定。 ExternalEvaluationEndpointSettings
missingTokenAction (欠落トークンアクション) 外部評価を必要とし、トークンが不足している適用ポリシーを評価する場合の処理。 使用可能な値は Audit と Deny であり、言語式がサポートされています。 文字列
result寿命 エンドポイント呼び出しの結果の有効期間。その後、有効ではなくなります。 値は ISO 8601 期間形式に従う必要があり、言語式がサポートされています。 文字列
ロール定義ID エンドポイントを呼び出すために割り当ての MSI が必要とするロール定義 ID の配列。 文字列[]

ParameterDefinitionsValue (パラメータ定義値)

名前 説明 価値
allowedValues (allowedValues) パラメーターに使用できる値。 どれでも[]
デフォルト値 値が指定されていない場合のパラメーターの既定値。 任意
メタデータ パラメーターの一般的なメタデータ。 ParameterDefinitionsValueMetadata の
スキーマ 自己定義 JSON スキーマを使用した割り当て時のパラメーター入力の検証を提供します。 このプロパティはオブジェクト型パラメータのみをサポートし、Json.NET Schema 2019-09の実装に従っています。 スキーマの使用の詳細については、「https://json-schema.org/」を参照し、https://www.jsonschemavalidator.net/で下書きスキーマをテストします。 任意
パラメーターのデータ型。 '配列'
'ブール値'
「日時」
「フロート」
'整数'
「オブジェクト」
'文字列'

ParameterDefinitionsValueMetadata

名前 説明 価値
assignPermissions(権限の割り当て) ポリシー割り当て時に、AzureポータルがこのパラメータのリソースIDまたはリソーススコープ値に対してロール割り当てを作成するためにtrueに設定してください。 このプロパティは、割り当てスコープ外でアクセス許可を割り当てる場合に便利です。 ブール (bool)
説明 パラメーターの説明。 文字列
ディスプレイ名 パラメーターの表示名。 文字列
ストロングタイプ ポータルを使用してポリシー定義を割り当てるときに使用されます。 ユーザーが選択する値のコンテキスト対応リストを提供します。 文字列

PolicyDefinitionProperties (ポリシー定義プロパティ)

名前 説明 価値
説明 ポリシー定義の説明。 文字列
ディスプレイ名 ポリシー定義の表示名。 文字列
externalEvaluationEnforcementSettings (英語) 適用の評価中にポリシーに必要な外部評価結果のソースの詳細。 ExternalEvaluationEnforcementSettings
メタデータ ポリシー定義メタデータ。 メタデータはオープン エンド オブジェクトであり、通常はキーと値のペアのコレクションです。 任意
モード ポリシー定義モード。 たとえば、All、Indexed、Microsoft.KeyVault.Data などです。 文字列
パラメーター ポリシー規則で使用されるパラメーターのパラメーター定義。 キーはパラメーター名です。 ポリシー定義プロパティパラメータ
ポリシールール ポリシー ルール。 任意
ポリシータイプ ポリシー定義の種類。 指定できる値は、NotSpecified、BuiltIn、Custom、Static です。 「ビルトイン」
「カスタム」
'指定されていません'
「静的」
バージョン #.#.# 形式のポリシー定義のバージョン。 文字列
バージョン このポリシー定義で使用可能なバージョンの一覧。 文字列[]

ポリシー定義プロパティパラメータ

名前 説明 価値

使用例

Bicep サンプル

認可ポリシー定義のデプロイの基本的な例。

targetScope = 'subscription'

param resourceName string = 'acctest0001'

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'
  }
}

Azure Quickstart Samples

以下の Azure クイックスタートテンプレートには、このリソースタイプのデプロイのためのBicepサンプルが含まれています。

Bicepファイル 説明
Azure Virtual Network Managerを作成し、VNETs このテンプレートはAzure Virtual Network Managerを展開し、仮想ネットワークを指定されたリソースグループにサンプル化します。 複数の接続トポロジとネットワーク グループ メンバーシップの種類をサポートします。
ポリシーをデプロイし、複数の管理グループに割り当て このテンプレートは、ポリシー定義を作成し、そのポリシーを複数の管理グループに割り当てる管理グループ レベルのテンプレートです。
ポリシー定義を展開し、管理グループに割り当て このテンプレートは、ポリシー定義を作成し、そのポリシーをターゲット管理グループに割り当てる管理グループ レベルのテンプレートです。 現在、このテンプレートはAzure Portal経由で展開できません。

ARM テンプレート リソース定義

policyDefinitions リソースの種類は、次を対象とする操作と共にデプロイできます。

  • 管理グループの - サブスクリプション管理グループの展開コマンド 参照 - サブスクリプションの展開コマンド 参照してください

各 API バージョンで変更されたプロパティの一覧については、変更ログの参照してください。

リソースの形式

Microsoft.Authorization/policyDefinitions リソースを作成するには、次の JSON をテンプレートに追加します。

{
  "type": "Microsoft.Authorization/policyDefinitions",
  "apiVersion": "2025-12-01-preview",
  "name": "string",
  "properties": {
    "description": "string",
    "displayName": "string",
    "externalEvaluationEnforcementSettings": {
      "endpointSettings": {
        "details": {},
        "kind": "string"
      },
      "missingTokenAction": "string",
      "resultLifespan": "string",
      "roleDefinitionIds": [ "string" ]
    },
    "metadata": {},
    "mode": "string",
    "parameters": {
      "{customized property}": {
        "allowedValues": [ {} ],
        "defaultValue": {},
        "metadata": {
          "assignPermissions": "bool",
          "description": "string",
          "displayName": "string",
          "strongType": "string"
        },
        "schema": {},
        "type": "string"
      }
    },
    "policyRule": {},
    "policyType": "string",
    "version": "string",
    "versions": [ "string" ]
  }
}

プロパティ値

Microsoft.Authorization/policyDefinitions

名前 説明 価値
apiVersion (英語) API のバージョン 「2025-12-01-プレビュー」
名前 リソース名

制約:
パターン = ^[^<>*%&:\?.+/]*[^<>*%&:\?.+/ ]+$ (必須)
プロパティ ポリシー定義のプロパティ。 PolicyDefinitionProperties の
リソースの種類 'Microsoft.Authorization/policyDefinitions'

ExternalEvaluationEndpointSettings (英語)

名前 説明 価値
細部 エンドポイントの詳細。 任意
種類 エンドポイントの種類。 文字列

ExternalEvaluationEnforcementSettings (英語)

名前 説明 価値
endpointSettings (エンドポイント設定) 評価結果を提供する外部エンドポイントの設定。 ExternalEvaluationEndpointSettings
missingTokenAction (欠落トークンアクション) 外部評価を必要とし、トークンが不足している適用ポリシーを評価する場合の処理。 使用可能な値は Audit と Deny であり、言語式がサポートされています。 文字列
result寿命 エンドポイント呼び出しの結果の有効期間。その後、有効ではなくなります。 値は ISO 8601 期間形式に従う必要があり、言語式がサポートされています。 文字列
ロール定義ID エンドポイントを呼び出すために割り当ての MSI が必要とするロール定義 ID の配列。 文字列[]

ParameterDefinitionsValue (パラメータ定義値)

名前 説明 価値
allowedValues (allowedValues) パラメーターに使用できる値。 どれでも[]
デフォルト値 値が指定されていない場合のパラメーターの既定値。 任意
メタデータ パラメーターの一般的なメタデータ。 ParameterDefinitionsValueMetadata の
スキーマ 自己定義 JSON スキーマを使用した割り当て時のパラメーター入力の検証を提供します。 このプロパティはオブジェクト型パラメータのみをサポートし、Json.NET Schema 2019-09の実装に従っています。 スキーマの使用の詳細については、「https://json-schema.org/」を参照し、https://www.jsonschemavalidator.net/で下書きスキーマをテストします。 任意
パラメーターのデータ型。 '配列'
'ブール値'
「日時」
「フロート」
'整数'
「オブジェクト」
'文字列'

ParameterDefinitionsValueMetadata

名前 説明 価値
assignPermissions(権限の割り当て) ポリシー割り当て時に、AzureポータルがこのパラメータのリソースIDまたはリソーススコープ値に対してロール割り当てを作成するためにtrueに設定してください。 このプロパティは、割り当てスコープ外でアクセス許可を割り当てる場合に便利です。 ブール (bool)
説明 パラメーターの説明。 文字列
ディスプレイ名 パラメーターの表示名。 文字列
ストロングタイプ ポータルを使用してポリシー定義を割り当てるときに使用されます。 ユーザーが選択する値のコンテキスト対応リストを提供します。 文字列

PolicyDefinitionProperties (ポリシー定義プロパティ)

名前 説明 価値
説明 ポリシー定義の説明。 文字列
ディスプレイ名 ポリシー定義の表示名。 文字列
externalEvaluationEnforcementSettings (英語) 適用の評価中にポリシーに必要な外部評価結果のソースの詳細。 ExternalEvaluationEnforcementSettings
メタデータ ポリシー定義メタデータ。 メタデータはオープン エンド オブジェクトであり、通常はキーと値のペアのコレクションです。 任意
モード ポリシー定義モード。 たとえば、All、Indexed、Microsoft.KeyVault.Data などです。 文字列
パラメーター ポリシー規則で使用されるパラメーターのパラメーター定義。 キーはパラメーター名です。 ポリシー定義プロパティパラメータ
ポリシールール ポリシー ルール。 任意
ポリシータイプ ポリシー定義の種類。 指定できる値は、NotSpecified、BuiltIn、Custom、Static です。 「ビルトイン」
「カスタム」
'指定されていません'
「静的」
バージョン #.#.# 形式のポリシー定義のバージョン。 文字列
バージョン このポリシー定義で使用可能なバージョンの一覧。 文字列[]

ポリシー定義プロパティパラメータ

名前 説明 価値

使用例

Azure Quickstart Templates

以下のAzureクイックスタートテンプレートはこのリソースタイプを展開します。

テンプレート 説明
Azure Virtual Network Managerを作成し、VNETs

展開Azure
このテンプレートはAzure Virtual Network Managerを展開し、仮想ネットワークを指定されたリソースグループにサンプル化します。 複数の接続トポロジとネットワーク グループ メンバーシップの種類をサポートします。
ポリシーをデプロイし、複数の管理グループに割り当て

展開Azure
このテンプレートは、ポリシー定義を作成し、そのポリシーを複数の管理グループに割り当てる管理グループ レベルのテンプレートです。
ポリシー定義を展開し、管理グループに割り当て

展開Azure
このテンプレートは、ポリシー定義を作成し、そのポリシーをターゲット管理グループに割り当てる管理グループ レベルのテンプレートです。 現在、このテンプレートはAzure Portal経由で展開できません。

Terraform (AzAPI プロバイダー) リソース定義

policyDefinitions リソースの種類は、次を対象とする操作と共にデプロイできます。

  • サブスクリプション管理グループの

各 API バージョンで変更されたプロパティの一覧については、変更ログの参照してください。

リソースの形式

Microsoft.Authorization/policyDefinitions リソースを作成するには、次の Terraform をテンプレートに追加します。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Authorization/policyDefinitions@2025-12-01-preview"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      description = "string"
      displayName = "string"
      externalEvaluationEnforcementSettings = {
        endpointSettings = {
          details = ?
          kind = "string"
        }
        missingTokenAction = "string"
        resultLifespan = "string"
        roleDefinitionIds = [
          "string"
        ]
      }
      metadata = ?
      mode = "string"
      parameters = {
        {customized property} = {
          allowedValues = [
            ?
          ]
          defaultValue = ?
          metadata = {
            assignPermissions = bool
            description = "string"
            displayName = "string"
            strongType = "string"
          }
          schema = ?
          type = "string"
        }
      }
      policyRule = ?
      policyType = "string"
      version = "string"
      versions = [
        "string"
      ]
    }
  }
}

プロパティ値

Microsoft.Authorization/policyDefinitions

名前 説明 価値
名前 リソース名

制約:
パターン = ^[^<>*%&:\?.+/]*[^<>*%&:\?.+/ ]+$ (必須)
プロパティ ポリシー定義のプロパティ。 PolicyDefinitionProperties の
リソースの種類 「Microsoft.Authorization/policyDefinitions@2025-12-01-preview」

ExternalEvaluationEndpointSettings (英語)

名前 説明 価値
細部 エンドポイントの詳細。 任意
種類 エンドポイントの種類。 文字列

ExternalEvaluationEnforcementSettings (英語)

名前 説明 価値
endpointSettings (エンドポイント設定) 評価結果を提供する外部エンドポイントの設定。 ExternalEvaluationEndpointSettings
missingTokenAction (欠落トークンアクション) 外部評価を必要とし、トークンが不足している適用ポリシーを評価する場合の処理。 使用可能な値は Audit と Deny であり、言語式がサポートされています。 文字列
result寿命 エンドポイント呼び出しの結果の有効期間。その後、有効ではなくなります。 値は ISO 8601 期間形式に従う必要があり、言語式がサポートされています。 文字列
ロール定義ID エンドポイントを呼び出すために割り当ての MSI が必要とするロール定義 ID の配列。 文字列[]

ParameterDefinitionsValue (パラメータ定義値)

名前 説明 価値
allowedValues (allowedValues) パラメーターに使用できる値。 どれでも[]
デフォルト値 値が指定されていない場合のパラメーターの既定値。 任意
メタデータ パラメーターの一般的なメタデータ。 ParameterDefinitionsValueMetadata の
スキーマ 自己定義 JSON スキーマを使用した割り当て時のパラメーター入力の検証を提供します。 このプロパティはオブジェクト型パラメータのみをサポートし、Json.NET Schema 2019-09の実装に従っています。 スキーマの使用の詳細については、「https://json-schema.org/」を参照し、https://www.jsonschemavalidator.net/で下書きスキーマをテストします。 任意
パラメーターのデータ型。 '配列'
'ブール値'
「日時」
「フロート」
'整数'
「オブジェクト」
'文字列'

ParameterDefinitionsValueMetadata

名前 説明 価値
assignPermissions(権限の割り当て) ポリシー割り当て時に、AzureポータルがこのパラメータのリソースIDまたはリソーススコープ値に対してロール割り当てを作成するためにtrueに設定してください。 このプロパティは、割り当てスコープ外でアクセス許可を割り当てる場合に便利です。 ブール (bool)
説明 パラメーターの説明。 文字列
ディスプレイ名 パラメーターの表示名。 文字列
ストロングタイプ ポータルを使用してポリシー定義を割り当てるときに使用されます。 ユーザーが選択する値のコンテキスト対応リストを提供します。 文字列

PolicyDefinitionProperties (ポリシー定義プロパティ)

名前 説明 価値
説明 ポリシー定義の説明。 文字列
ディスプレイ名 ポリシー定義の表示名。 文字列
externalEvaluationEnforcementSettings (英語) 適用の評価中にポリシーに必要な外部評価結果のソースの詳細。 ExternalEvaluationEnforcementSettings
メタデータ ポリシー定義メタデータ。 メタデータはオープン エンド オブジェクトであり、通常はキーと値のペアのコレクションです。 任意
モード ポリシー定義モード。 たとえば、All、Indexed、Microsoft.KeyVault.Data などです。 文字列
パラメーター ポリシー規則で使用されるパラメーターのパラメーター定義。 キーはパラメーター名です。 ポリシー定義プロパティパラメータ
ポリシールール ポリシー ルール。 任意
ポリシータイプ ポリシー定義の種類。 指定できる値は、NotSpecified、BuiltIn、Custom、Static です。 「ビルトイン」
「カスタム」
'指定されていません'
「静的」
バージョン #.#.# 形式のポリシー定義のバージョン。 文字列
バージョン このポリシー定義で使用可能なバージョンの一覧。 文字列[]

ポリシー定義プロパティパラメータ

名前 説明 価値

使用例

Terraformサンプル

認可ポリシー定義のデプロイの基本的な例。

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