当前位置: 首页 > 知识库问答 >
问题:

Azure ARM模板Keyvault资源不断删除其他访问策略

子车超英
2023-03-14
{
  "type": "Microsoft.KeyVault/vaults",
  "name": "[parameters('ICMODSKeyVaultName')]",
  "apiVersion": "2016-10-01",
  "location": "[resourceGroup().location]",
  "properties": {
    "sku": {
      "family": "A",
      "name": "standard"
    },
    "tenantId": "[reference(variables('identityResourceId'), '2015-08-31-PREVIEW').tenantId]",
    "accessPolicies": [
      {
        "tenantId": "[reference(variables('identityResourceId'), '2015-08-31-PREVIEW').tenantId]",
        "objectId": "[reference(variables('identityResourceId'), '2015-08-31-PREVIEW').principalId]",
        "permissions": {
          "secrets": [
            "get"
          ]
        }
      }
    ],
    "enabledForDeployment": true,
    "enabledForTemplateDeployment":  true
  },
  "dependsOn": [
    "[concat('Microsoft.Web/sites/', parameters('AppName'))]"
  ]
}

共有1个答案

闻深
2023-03-14

这是您应该得到的行为,因为ARM模板是幂等的。如果将访问策略创建为单独的资源,则可以更改此行为:

{
  "name": "vaultName/policyName",
  "location": xxx,
  "api-version": "2016-10-01",
  "type": "Microsoft.KeyVault/vaults/accessPolicies",
  "properties": {
    "accessPolicies": [
      {
        "tenantId": "00000000-0000-0000-0000-000000000000",
        "objectId": "00000000-0000-0000-0000-000000000000",
        "permissions": {
          "keys": [
            "encrypt"
          ],
          "secrets": [
            "get"
          ],
          "certificates": [
            "get"
          ]
        }
      }
    ]
  }
}

请记住,这是一个粗略的草图,它可能不起作用,但你可以让它相当容易地工作。它是为了说明这个想法。

参考:https://docs.microsoft.com/en-us/rest/api/keyvault/vaults/updateaccesspolicy

 类似资料:
  • 我正在Azure中部署一个虚拟机。用户名和密码将自动创建,并在部署时作为参数传递。部署vm的资源组也作为参数传递,所以可以是任何参数。 我的Keyvault在一个特定的资源组中,vm的用户名和密码应该存储在这里。

  • TensorFlow 白皮书 在这份白皮书里,你可以找到关于 TensorFlow 编程模型的更多详情和 TensorFlow 的实现原理。 TensorFlow: Large-scale machine learning on heterogeneous systems 引用 如果你在你的研究中使用了 TensorFlow,并且希望在引用中注记 TensorFlow,我们建议你引用上面这篇论文。

  • 了解更多有关于Giojs 基本元素 阅读markdown格式的API文档 APIs 如果你有兴趣参与Giojs开发,不妨先从 开发指南 中熟悉一下Giojs的开发规范

  • 其他资源:可以定位为“不需要做任务处理,只要直接打包输出就可以的资源”,比如icon图标资源、字体资源等 打包其他资源只需要使用到 file-loader 一、打包其他资源的核心配置 // webpack.config.js webpack的配置文件 // 路径: ./webpack.config.js ………… // loader的配置 module: { rul

  • 使用命令创建访问策略时,出现错误:操作失败,因为“密钥存储库”从操作开始时开始更改。控件执行并行操作时,可能会发生这种情况。若要防止此错误,请序列化操作,以便一次只对。有关详细信息,请参阅此链接:https://go.microsoft.com/fwlink/?linkid=2147741.

  • Cheatsheets PHP Cheatsheets - for variable comparisons, arithmetics and variable testing in various PHP versions PHP Security Cheatsheet 更多最佳实践 PHP Best Practices Best practices for Modern PHP Develop