【问题标题】:Howto create azure postgres server with admin-password in keyvault?如何在 keyvault 中使用管理员密码创建 azure postgres 服务器?
【发布时间】:2021-11-24 13:53:53
【问题描述】:

为了使使用密钥库的参数可用于我的 azure webapp,我执行了以下操作

        identity=`az webapp identity assign \
          --name $(appName) \
          --resource-group $(appResourceGroupName) \
          --query principalId -o tsv`

        az keyvault set-policy \
          --name $(keyVaultName) \
          --secret-permissions get \
          --object-id $identity

现在我想创建一个 azure postgres 服务器,从密钥库中获取管理员密码:

                az postgres server create \
                --location $(location) \
                --resource-group $(ResourceGroupName) \
                --name $(PostgresServerName) \
                --admin-user $(AdminUserName) \
                --admin-password '$(AdminPassWord)' \
                --sku-name $(pgSkuName)

如果我的 AdminPassWord 的值在这里类似于

@Microsoft.KeyVault(SecretUri=https://<myKv>.vault.azure.net/secrets/AdminPassWord/)  

我需要单引号(如上)来创建 postgres 服务器。但这是否意味着密码将是整个字符串 '@Microsoft.KeyVault(SecretUri=https://&lt;myKv&gt;.vault.azure.net/secrets/AdminPassWord/)' 而不是存储在 &lt;myKv&gt; 中的秘密?

在不带引号的情况下运行我的管道(即仅--admin-password $(AdminPassWord) \)时,我收到了错误消息syntax error near unexpected token ('。我认为这可能是因为我没有为资源 postgres 服务器设置策略--secret-permissions get。但是在创建 postgres 服务器之前如何设置呢?

【问题讨论】:

    标签: postgresql azure-devops azure-keyvault


    【解决方案1】:

    @Microsoft.KeyVault(SecretUri=https://&lt;myKv&gt;.vault.azure.net/secrets/AdminPassWord/) 表达式用于访问 azure web app 中的 keyvault secret 值,当你使用前两个命令配置它时,web app 的托管标识将能够访问 keyvault secret。

    但是如果你想用密码创建一个azure postgres服务器,你需要先获取秘密值并使用它而不是使用表达式。

    对于 Azure CLI,您可以使用 az keyvault secret show,然后将密钥传递给 az postgres server create 中的参数 --admin-password

    az keyvault secret show [--id]
                            [--name]
                            [--query-examples]
                            [--subscription]
                            [--vault-name]
                            [--version]
    

    【讨论】:

      猜你喜欢
      • 2022-01-03
      • 1970-01-01
      • 1970-01-01
      • 2021-03-16
      • 2021-12-05
      • 2015-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多