【问题标题】:ListSecrets on Azure Vault using an ARM template?使用 ARM 模板的 Azure Vault 上的 ListSecrets?
【发布时间】:2018-11-29 23:39:57
【问题描述】:

如何使用 ARM 模板从 azure Vault 获取机密?

我的模板:

{
    "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {},
    "resources": [],
    "outputs": {
        "referenceOutput": {
            "type": "object",
            "value": "[listSecrets(resourceId('my-resource-group', 'Microsoft.KeyVault/vaults/secrets', 'myKeyVault','mySecret'), '2016-10-01')]"
        }
    }
}

然后运行:

az group deployment create -g some-rg --template-file ./arm.json

错误:

Deployment failed. Correlation ID: f76de3f2-a9ff-427c-9ae0-b7b24c3fde5d. {
  "error": {    "code": "BadRequest",    "message": "<!DOCTYPE html P

....

<h2>404 - File or directory not found.</h2>\r\n  <h3>The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.</h3>\r\n </fieldset></div>\r\n</div>\r\n</body>\r\n</ht
ml>\r\n"

【问题讨论】:

    标签: azure azure-keyvault azure-template


    【解决方案1】:

    使用 ARM 模板无法做到这一点,但您可以在 ARM 模板中引用秘密以将其作为值传递。

    "password": {
        "reference": {
            "keyVault": {
                "id": "vaultId"
            },
            "secretName": "secretName"
        }
    }
    

    但是你要知道这个表达式不能直接在模板中使用。您可以在参数文件中和\或在调用嵌套模板时使用它。

    此外,您可以对某些资源的某些属性(如 VM 密码)使用类似的表达式

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-24
      • 1970-01-01
      • 2018-09-22
      • 2020-06-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多