Хранилище Azure включает шифрование в ARM

Я пытаюсь включить шифрование в хранилище Azure во время его создания через ARM. Это простой ресурс хранения, который у меня есть.

{
  "$schema": "https://schema.management.azure.com/schemas/2016-01-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
  "storageAccountName": {
  "type": "String"
},
  "storageAccountType": {
  "type": "string",
  "defaultValue": "Standard_LRS",
  }
},
  "variables": {
  "defaultApiVersion": "2016-01-01"
 },
"resources": [
{
  "type": "Microsoft.Storage/storageAccounts",
  "name": "[parameters('StorageAccountName')]",
  "apiVersion": "[variables('defaultApiVersion')]",
  "location": "[resourceGroup().location]",
  "sku": {
    "name": "[parameters('storageAccountType')]"
  },
  "properties": {
    "properties": {
      "encryption": {
            "keySource": "Microsoft.Storage",
            "services": {
                "blob": {
                    "enabled": true
                }
            }
        }
    }
  }
}
]
}

Который дает мне следующую ошибку

New-AzureRmResourceGroupDeployment : 8:21:59 AM - Error: Code=InvalidTemplate; Message=Deployment template validation failed: 'Template schema 'https://schema.management.azure.com/schemas/2016-01-01/deploymentTemplate.json#' is not supported. Supported versions are '2014-04-01-preview,2015-01-01'.

Затем я изменяю URL схемы на https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#

потом получил New-AzureRmResourceGroupDeployment : 8:26:40 AM - Error: Code=InvalidTemplateDeployment; Message=The template deployment 'myencryptedstorage' is not valid according to the validation procedure.

Кто-нибудь знает, что является правильным способом сделать это?

2 ответа

Решение

Что касается ошибки недопустимого шаблона, я заметил, что у вас есть свойства, перечисленные дважды:

"свойства": { "свойства": {

Вы можете сослаться на эту ссылку, чтобы найти действительную схему: https://msdn.microsoft.com/en-us/library/azure/mt163564.aspx

Я скопировал ваш файл JSON в Visual Studio. Это дает мне следующее сообщение об ошибке: введите описание изображения здесь

Я думаю, что это может быть вашей проблемой.

Я протестировал использование New-AzureRmResourceGroupDeployment для создания хранилища Azure с включенным шифрованием. Вот мой исходный код:

Команда PowerShell:

New-AzureRmResourceGroupDeployment -ResourceGroupName jarg -TemplateFile E:\createstoragearm.json - TemplateParameterFile E:\parameter.json

createstoragearm.json

{

  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",

  "contentVersion": "1.0.0.0",

  "parameters": {
    "storageAccountName": {
      "type": "string"
    },
    "storageAccountType": {

      "type": "string",

      "defaultValue": "Standard_LRS",

      "allowedValues": [

        "Standard_LRS",

        "Standard_GRS",

        "Standard_ZRS",

        "Premium_LRS"

      ],

      "metadata": {

        "description": "Storage Account type"

      }

    }

  },

  "variables": {

    "storageAccountName": "[parameters('storageAccountName')]"

  },

  "resources": [

    {

      "type": "Microsoft.Storage/storageAccounts",

      "name": "[variables('storageAccountName')]",

      "apiVersion": "2016-01-01",

      "location": "[resourceGroup().location]",

      "sku": {

        "name": "[parameters('storageAccountType')]"

      },

      "kind": "Storage",

      "properties": {
        "encryption": {
          "services": {
            "blob": {
              "enabled": true
            }
          },
          "keySource": "Microsoft.Storage"
        }
      }

    }

  ],

  "outputs": {

    "storageAccountName": {

      "type": "string",

      "value": "[variables('storageAccountName')]"

    }


  }

}

parameter.json

{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "StorageAccountName": {
      "value": "jaarmtest1"
    },

    "StorageAccountType": {
      "value": "Standard_LRS"
    }

  }
}

Результат

введите описание изображения здесь

Другие вопросы по тегам