Bicep リソース定義
policyAssignments リソースの種類は、次をターゲットとする操作と共にデプロイできます。
各 API バージョンで変更されたプロパティの一覧については、変更ログの
リソースの形式
Microsoft.Authorization/policyAssignments リソースを作成するには、次の Bicep をテンプレートに追加します。
resource symbolicname 'Microsoft.Authorization/policyAssignments@2019-09-01' = {
scope: resourceSymbolicName or scope
identity: {
type: 'string'
}
___location: 'string'
name: 'string'
properties: {
description: 'string'
displayName: 'string'
enforcementMode: 'string'
metadata: any(...)
notScopes: [
'string'
]
parameters: {
{customized property}: {
value: any(...)
}
}
policyDefinitionId: 'string'
scope: 'string'
}
sku: {
name: 'string'
tier: 'string'
}
}
プロパティ値
Microsoft.Authorization/policyAssignments
| 名前 | 形容 | 価値 |
|---|---|---|
| ID | ポリシーの割り当てに関連付けられているマネージド ID。 | ID |
| 位置 | ポリシー割り当ての場所。 マネージド ID を使用する場合にのみ必要です。 | 文字列 |
| 名前 | リソース名 | string (必須) |
| プロパティ | ポリシー割り当てのプロパティ。 | PolicyAssignmentProperties の |
| スコープ | デプロイ スコープとは異なるスコープでリソースを作成するときに使用します。 | このプロパティをリソースのシンボリック名に設定して、拡張リソースを適用します。 |
| エスケーユー | ポリシー SKU。 このプロパティは省略可能であり、廃止されており、無視されます。 | ポリシーSKU |
同一性
| 名前 | 形容 | 価値 |
|---|---|---|
| 型 | ID の種類。 これは、システム割り当て ID をリソースに追加するときに必要な唯一のフィールドです。 | 「なし」 'システム割り当て' |
パラメータ値
| 名前 | 形容 | 価値 |
|---|
パラメータ値値
| 名前 | 形容 | 価値 |
|---|---|---|
| 価値 | パラメーターの値。 | 任意 |
ポリシー割り当てプロパティ
| 名前 | 形容 | 価値 |
|---|---|---|
| 形容 | このメッセージは、ポリシー違反が発生した場合の応答の一部になります。 | 文字列 |
| ディスプレイ名 | ポリシー割り当ての表示名。 | 文字列 |
| enforcementモード | ポリシー割り当て適用モード。 使用できる値は Default と DoNotEnforce です。 | デフォルト 「強制しない」 |
| メタデータ | ポリシー割り当てのメタデータ。 メタデータはオープン エンド オブジェクトであり、通常はキーと値のペアのコレクションです。 | 任意 |
| notScopes (英語) | ポリシーの除外されたスコープ。 | 文字列[] |
| パラメーター | 割り当てられたポリシー ルールのパラメーター値。 キーはパラメーター名です。 | パラメータ値 |
| ポリシー定義ID | 割り当てられているポリシー定義またはポリシー セット定義の ID。 | 文字列 |
| スコープ | ポリシー割り当てのスコープ。 | 文字列 |
ポリシーSKU
| 名前 | 形容 | 価値 |
|---|---|---|
| 名前 | ポリシー SKU の名前。 指定できる値は A0 と A1 です。 | string (必須) |
| レベル | ポリシー SKU レベル。 指定できる値は Free と Standard です。 | 文字列 |
使用例
Azure クイック スタートのサンプル
次 Azure クイック スタート テンプレート、このリソースの種類をデプロイするための Bicep サンプルが含まれています。
| Bicep ファイル | 形容 |
|---|---|
| VM マネージド ディスクを監査する組み込みポリシーを割り当 | このテンプレートでは、組み込みのポリシーをリソース グループ スコープに割り当てて、仮想マシン (VM) マネージド ディスクを監査します。 |
| Azure Virtual Network Manager とサンプル VNET を作成する | このテンプレートは、Azure Virtual Network Manager とサンプル仮想ネットワークを名前付きリソース グループにデプロイします。 複数の接続トポロジとネットワーク グループ メンバーシップの種類をサポートします。 |
| ポリシー Def を展開し、複数の Mgmt グループに割り当てる | このテンプレートは、ポリシー定義を作成し、そのポリシーを複数の管理グループに割り当てる管理グループ レベルのテンプレートです。 |
| ポリシー定義を展開し、管理グループ に割り当てる | このテンプレートは、ポリシー定義を作成し、そのポリシーをターゲット管理グループに割り当てる管理グループ レベルのテンプレートです。 現時点では、このテンプレートは Azure Portal を使用してデプロイすることはできません。 |
ARM テンプレート リソース定義
policyAssignments リソースの種類は、次をターゲットとする操作と共にデプロイできます。
各 API バージョンで変更されたプロパティの一覧については、変更ログの
リソースの形式
Microsoft.Authorization/policyAssignments リソースを作成するには、次の JSON をテンプレートに追加します。
{
"type": "Microsoft.Authorization/policyAssignments",
"apiVersion": "2019-09-01",
"name": "string",
"identity": {
"type": "string"
},
"___location": "string",
"properties": {
"description": "string",
"displayName": "string",
"enforcementMode": "string",
"metadata": {},
"notScopes": [ "string" ],
"parameters": {
"{customized property}": {
"value": {}
}
},
"policyDefinitionId": "string",
"scope": "string"
},
"sku": {
"name": "string",
"tier": "string"
}
}
プロパティ値
Microsoft.Authorization/policyAssignments
| 名前 | 形容 | 価値 |
|---|---|---|
| apiVersion (英語) | API のバージョン | '2019-09-01' |
| ID | ポリシーの割り当てに関連付けられているマネージド ID。 | ID |
| 位置 | ポリシー割り当ての場所。 マネージド ID を使用する場合にのみ必要です。 | 文字列 |
| 名前 | リソース名 | string (必須) |
| プロパティ | ポリシー割り当てのプロパティ。 | PolicyAssignmentProperties の |
| エスケーユー | ポリシー SKU。 このプロパティは省略可能であり、廃止されており、無視されます。 | ポリシーSKU |
| 型 | リソースの種類 | 'Microsoft.Authorization/policyAssignments' |
同一性
| 名前 | 形容 | 価値 |
|---|---|---|
| 型 | ID の種類。 これは、システム割り当て ID をリソースに追加するときに必要な唯一のフィールドです。 | 「なし」 'システム割り当て' |
パラメータ値
| 名前 | 形容 | 価値 |
|---|
パラメータ値値
| 名前 | 形容 | 価値 |
|---|---|---|
| 価値 | パラメーターの値。 | 任意 |
ポリシー割り当てプロパティ
| 名前 | 形容 | 価値 |
|---|---|---|
| 形容 | このメッセージは、ポリシー違反が発生した場合の応答の一部になります。 | 文字列 |
| ディスプレイ名 | ポリシー割り当ての表示名。 | 文字列 |
| enforcementモード | ポリシー割り当て適用モード。 使用できる値は Default と DoNotEnforce です。 | デフォルト 「強制しない」 |
| メタデータ | ポリシー割り当てのメタデータ。 メタデータはオープン エンド オブジェクトであり、通常はキーと値のペアのコレクションです。 | 任意 |
| notScopes (英語) | ポリシーの除外されたスコープ。 | 文字列[] |
| パラメーター | 割り当てられたポリシー ルールのパラメーター値。 キーはパラメーター名です。 | パラメータ値 |
| ポリシー定義ID | 割り当てられているポリシー定義またはポリシー セット定義の ID。 | 文字列 |
| スコープ | ポリシー割り当てのスコープ。 | 文字列 |
ポリシーSKU
| 名前 | 形容 | 価値 |
|---|---|---|
| 名前 | ポリシー SKU の名前。 指定できる値は A0 と A1 です。 | string (必須) |
| レベル | ポリシー SKU レベル。 指定できる値は Free と Standard です。 | 文字列 |
使用例
Azure のクイック スタート テンプレート
このリソースの種類 デプロイする Azure クイック スタート テンプレート 次に示します。
| テンプレート | 形容 |
|---|---|
|
組み込みポリシーを既存のリソース グループ に割り当てる Azure にデプロイする |
このテンプレートは、組み込みのポリシーを既存のリソース グループに割り当てます。 |
|
VM マネージド ディスクを監査する組み込みポリシーを割り当 Azure にデプロイする |
このテンプレートでは、組み込みのポリシーをリソース グループ スコープに割り当てて、仮想マシン (VM) マネージド ディスクを監査します。 |
|
Azure Virtual Network Manager とサンプル VNET を作成する Azure にデプロイする |
このテンプレートは、Azure Virtual Network Manager とサンプル仮想ネットワークを名前付きリソース グループにデプロイします。 複数の接続トポロジとネットワーク グループ メンバーシップの種類をサポートします。 |
|
ポリシー Def を展開し、複数の Mgmt グループに割り当てる Azure にデプロイする |
このテンプレートは、ポリシー定義を作成し、そのポリシーを複数の管理グループに割り当てる管理グループ レベルのテンプレートです。 |
|
ポリシー定義を展開し、管理グループ に割り当てる Azure にデプロイする |
このテンプレートは、ポリシー定義を作成し、そのポリシーをターゲット管理グループに割り当てる管理グループ レベルのテンプレートです。 現時点では、このテンプレートは Azure Portal を使用してデプロイすることはできません。 |
Terraform (AzAPI プロバイダー) リソース定義
policyAssignments リソースの種類は、次をターゲットとする操作と共にデプロイできます。
各 API バージョンで変更されたプロパティの一覧については、変更ログの
リソースの形式
Microsoft.Authorization/policyAssignments リソースを作成するには、次の Terraform をテンプレートに追加します。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Authorization/policyAssignments@2019-09-01"
name = "string"
parent_id = "string"
identity {
type = "string"
identity_ids = [
"string"
]
}
___location = "string"
body = {
properties = {
description = "string"
displayName = "string"
enforcementMode = "string"
metadata = ?
notScopes = [
"string"
]
parameters = {
{customized property} = {
value = ?
}
}
policyDefinitionId = "string"
scope = "string"
}
sku = {
name = "string"
tier = "string"
}
}
}
プロパティ値
Microsoft.Authorization/policyAssignments
| 名前 | 形容 | 価値 |
|---|---|---|
| ID | ポリシーの割り当てに関連付けられているマネージド ID。 | ID |
| 位置 | ポリシー割り当ての場所。 マネージド ID を使用する場合にのみ必要です。 | 文字列 |
| 名前 | リソース名 | string (必須) |
| parent_id | この拡張リソースを適用するリソースの ID。 | string (必須) |
| プロパティ | ポリシー割り当てのプロパティ。 | PolicyAssignmentProperties の |
| エスケーユー | ポリシー SKU。 このプロパティは省略可能であり、廃止されており、無視されます。 | ポリシーSKU |
| 型 | リソースの種類 | "Microsoft.Authorization/policyAssignments@2019-09-01" (英語) |
同一性
| 名前 | 形容 | 価値 |
|---|---|---|
| 型 | ID の種類。 これは、システム割り当て ID をリソースに追加するときに必要な唯一のフィールドです。 | 「なし」 'システム割り当て' |
パラメータ値
| 名前 | 形容 | 価値 |
|---|
パラメータ値値
| 名前 | 形容 | 価値 |
|---|---|---|
| 価値 | パラメーターの値。 | 任意 |
ポリシー割り当てプロパティ
| 名前 | 形容 | 価値 |
|---|---|---|
| 形容 | このメッセージは、ポリシー違反が発生した場合の応答の一部になります。 | 文字列 |
| ディスプレイ名 | ポリシー割り当ての表示名。 | 文字列 |
| enforcementモード | ポリシー割り当て適用モード。 使用できる値は Default と DoNotEnforce です。 | デフォルト 「強制しない」 |
| メタデータ | ポリシー割り当てのメタデータ。 メタデータはオープン エンド オブジェクトであり、通常はキーと値のペアのコレクションです。 | 任意 |
| notScopes (英語) | ポリシーの除外されたスコープ。 | 文字列[] |
| パラメーター | 割り当てられたポリシー ルールのパラメーター値。 キーはパラメーター名です。 | パラメータ値 |
| ポリシー定義ID | 割り当てられているポリシー定義またはポリシー セット定義の ID。 | 文字列 |
| スコープ | ポリシー割り当てのスコープ。 | 文字列 |
ポリシーSKU
| 名前 | 形容 | 価値 |
|---|---|---|
| 名前 | ポリシー SKU の名前。 指定できる値は A0 と A1 です。 | string (必須) |
| レベル | ポリシー SKU レベル。 指定できる値は Free と Standard です。 | 文字列 |
使用例
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" {
}
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
body = {
properties = {
displayName = ""
enforcementMode = "Default"
parameters = {
listOfAllowedLocations = {
value = [
"West Europe",
"West US 2",
"East US 2",
]
}
}
policyDefinitionId = azapi_resource.policyDefinition.id
scope = data.azapi_resource.subscription.id
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}