【问题标题】:Hashicorp auto unseal with Azure vaultHashicorp 使用 Azure 保管库自动解封
【发布时间】:2019-08-15 20:22:13
【问题描述】:

Hashicorp Vault 添加了自动开封功能,但没有明确的说明如何设置 这是一个链接,Unseal with Azure

seal "azurekeyvault" {
  tenant_id      = "46646709-b63e-4747-be42-516edeaf1e14"
  client_id      = "03dc33fc-16d9-4b77-8152-3ec568f8af6e"
  client_secret  = "DUJDS3..."
  vault_name     = "hc-vault"
  key_name       = "vault_key"
}

问题:用一些 bash 脚本设置它们

基于Azure MSI制作的东西

创建 Azure 保管库

vault_name="some_name" &&\
rg="my_resource_group" &&\
location="eastus" &&\
az keyvault create --name ${vault_name} --resource-group ${rg} --location ${location}

创建保管库密钥

vault_key="vault-key" &&\
az keyvault key create --name ${vault_key} --vault-name ${vault_name}

创建托管服务标识

msi_name="vault" &&\
az identity create --name ${msi_name} --resource-group ${rg} --location ${location}

添加对 Vault 的 MSI 访问权限

principalID=$(az identity show --resource-group ${rg} --name ${msi_name} --query principalId --output tsv) &&\
az keyvault set-policy --name ${vault_name} --resource-group ${rg} --object-id ${principalID} --secret-permissions get set list

获取值

tenant_id=$(az identity show --name ${msi_name} --resource-group ${rg} --query "tenantId" --output tsv)
client_id=$(az identity show --name ${msi_name} --resource-group ${rg} --query "clientId" --output tsv)

如何获得“client_secret”?

client_secret_url=$(az identity show --name ${msi_name} --resource-group ${rg} --query "clientSecretUrl" --output tsv)
curl --http1.1 ${client_secret_url}

无论我是否添加“api-version”行,Curl 都会返回错误,谷歌搜索:

“必填参数 api-version 缺失或无效。”

获取这些值的正确方法是什么?如何正确获取“client_secret”?

【问题讨论】:

    标签: bash azure identity hashicorp-vault


    【解决方案1】:

    如果您使用 MSI,则可以省略 client_id 和 client_secret。

    https://www.vaultproject.io/docs/configuration/seal/azurekeyvault.html

    上面的文档链接本来可以更直接,但它确实显示client_id (string: <required or MSI>):

    这是我的 ansible 模板:

    seal "azurekeyvault" {
      tenant_id      = "{{ tenant_id[item] }}"
      vault_name     = "{{ azure_keyvault_name }}"
      key_name       = "{{ azure_keyvault_key }}"
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-03
      • 1970-01-01
      • 2020-08-28
      • 2017-05-16
      • 1970-01-01
      相关资源
      最近更新 更多