"許可された場所" に対して 1 つの Azure ポリシーを作成しました。以下のように必要な template.json と parameter.json を作成しました: Template.json
json ファイルを Azure リポジトリにアップロードした後、Azure パイプラインを使用して実行しようとすると、以下のエラーが発生しました
[エラー] 要求の内容が無効であり、逆シリアル化できませんでした: '必要なプロパティ 'resources' が JSON に見つかりません。パス 'properties.template'、1 行目、位置 222.'。
template.json 内にリソースが記載されていますが、このエラーで失敗します。誰でも洞察を与えることができますか?
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"listOfAllowedLocations": {
"type": "array"
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.Authorization/policyDefinitions",
"name": "policylocation",
"apiVersion": "2018-03-01",
"properties": {
"policyType": "Custom",
"displayName": "policylocation",
"description": "",
"mode": "all",
"parameters": {
"listOfAllowedLocations": {
"type": "array",
"metadata": {
"description": "The list of locations that can be specified when deploying resources.",
"displayName": "Allowed locations"
}
}
},
"policyRule": {
"if": {
"allOf": [
{
"field": "location",
"notIn": "EastUS"
},
{
"field": "location",
"notEquals": "global"
},
{
"field": "type",
"notEquals": "Microsoft.Compute/virtualMachines"
}
]
},
"then": {
"effect": "deny"
}
}
}
}
]
}
パラメータ.json
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-
01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"listOfAllowedLocations": {
"type":"array",
"value": "EastUS"
}
}
}