gpt4 book ai didi

bash - Hashicorp 使用 Azure 保管库自动解封

转载 作者:行者123 更新时间:2023-12-03 01:36:49 25 4
gpt4 key购买 nike

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}

创建保管库 key

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}

添加 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 都会返回错误,Google 搜索:

“必需的参数 api-version 丢失或无效。”

获取这些值的正确方法是什么?我怎样才能得到正确的“client_secret”?

最佳答案

如果您使用 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 }}"
}

关于bash - Hashicorp 使用 Azure 保管库自动解封,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57282252/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com