Пароль SQL Azure не соответствует сложности при переходе из keyvault, но не при переходе из переменной - PullRequest
0 голосов
/ 16 мая 2019

Я пытаюсь создать Azure SQL Server в Azure с помощью json ARM. В моем json, когда я помещаю пароль в переменную, установка в порядке. Когда я получаю тот же пароль от keyvault, он не соответствует политике сложности.

Мой шаблон действителен, но при создании sql-ресурса появляется сообщение об ошибке

Проверка пароля не удалась. Пароль не соответствует требованиям политики, поскольку он недостаточно сложен.

Я использую пароль: P @ ssw0rd01isCompleX

Я думаю, что правильно настроил json, он не работает. Я удалил вызов keyvault в параметре json, чтобы позволить Visual Studio создать его для меня ... тот же результат. Я пробовал другой пароль.

Я работаю с Visual Studio, поэтому я удалил вызов keyvault, чтобы позволить Visual Studio добавить его для меня .... тот же результат

Для keyvault установлено значение Включить доступ к Azure Resource Manager для шаблона.

Вывод deploiement показывает мне пустое значение для пароля, может быть, это нормально, может быть, это симптом ....

17: 51: 46 - Имя Тип Значение
17:51:46 - ===============
17:51:46 - environmentName String dev
17:51:46 - adminlogin Строка adminlogin

17: 51: 46 - apv-eun-dev-sql SecureString
17:51:46 - строка utcValue 2019-05-16 T15: 51: 40 +00: 00

У вас есть представление о причине этого?

JSON файл:

{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "EnvironmentName": {
      "type": "string",
      "allowedValues": [
        "prod",
        "pprd",
        "uat",
        "dev"
      ]
    },
    "adminlogin": {
      "type": "string"
    },
    "apv-eun-dev-sql": {
      "type": "securestring"
    },
    "utcValue": {
      "type": "string",
      "defaultValue": "[utcNow('yyyy-MM-dd THH:mm:ss zzzz')]"
    }
  },
  "variables": {
  },
  "resources": [
    {
      "apiVersion": "2015-05-01-preview",
      "type": "Microsoft.Sql/servers",
      "location": "[resourceGroup().location]",
      "name": "[concat('apv-eun-', parameters('EnvironmentName'),'-sql-001')]",
      "properties": {
        "administratorLogin": "parameters('adminlogin')",
        "administratorLoginPassword": "parameters('apv-eun-dev-sql')",
        "version": "12.0"
      },
      "tags": { "ONEData": "Rules" }
    }
  ],
  "outputs": {}
}

Файл параметров json:

{

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

  "contentVersion": "1.0.0.0",

  "parameters": {
    "EnvironmentName": {
      "value": "dev"
    },
    "adminlogin": {
      "value": "adminlogin"
    },
    "apv-eun-dev-sql": {
      "reference": {
        "keyVault": {
          "id": "/subscriptions/XXX/resourceGroups/XXX/providers/Microsoft.KeyVault/vaults/apv-eun-dev-akv-001"
        },
        "secretName": "apv-eun-dev-sql"
      }
    }
  }
}

1 Ответ

0 голосов
/ 16 мая 2019

Не уверен, но, похоже, это проблема синтаксиса.

В вашем файле json есть:

"administratorLogin": "parameters('adminlogin')",
"administratorLoginPassword": "parameters('apv-eun-dev-sql')"

Хотя должно быть:

"administratorLogin": "[parameters('adminlogin')]",
"administratorLoginPassword": "[parameters('apv-eun-dev-sql')]"

Источники: https://github.com/rjmax/ArmExamples/blob/master/keyvaultexamples/KeyVaultUse.parameters.json

https://github.com/rjmax/ArmExamples/blob/master/keyvaultexamples/KeyVaultUse.json

https://docs.microsoft.com/fr-fr/azure/azure-resource-manager/resource-manager-keyvault-parameter

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...