linux 上使用 az keyvault 的 Azure 秘密下载问题
Azure secret download issue on linux using az keyvault
我在 Ubuntu 18.04,尝试使用 Azure CLI (2.0.56) 从 Azure KeyVault 下载 Secret。在 Windows 上的 Powershell 中下载 Secret 工作正常,但在 Linux 上它失败并出现以下错误:
'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)
命令本身:
az keyvault secret download -n secret-file --vault-name testkeyvault -f /usr/src/secret-file.json
我尝试用 UNIX Line Endings 保存文件,编码是 UTF-8,我可以在 Linux 中用 cat
打开文件,我什至可以使用相同的设置秘密Linux 中的文件和 az keyvault secret set
但之后无法直接下载。
也许这可以帮助搜索类似问题的人。我认为问题在于 Azure CLI
中的实施。作为一种解决方法,在使用 show
而不是 download
操作后,我使用 jq 自己解析 secret 的内容。
这是执行此操作的命令:
az keyvault secret show -n secret-file --vault-name testkeyvault | jq '.value | fromjson' > /usr/src/secret-file.json
我在 Ubuntu 18.04,尝试使用 Azure CLI (2.0.56) 从 Azure KeyVault 下载 Secret。在 Windows 上的 Powershell 中下载 Secret 工作正常,但在 Linux 上它失败并出现以下错误:
'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)
命令本身:
az keyvault secret download -n secret-file --vault-name testkeyvault -f /usr/src/secret-file.json
我尝试用 UNIX Line Endings 保存文件,编码是 UTF-8,我可以在 Linux 中用 cat
打开文件,我什至可以使用相同的设置秘密Linux 中的文件和 az keyvault secret set
但之后无法直接下载。
也许这可以帮助搜索类似问题的人。我认为问题在于 Azure CLI
中的实施。作为一种解决方法,在使用 show
而不是 download
操作后,我使用 jq 自己解析 secret 的内容。
这是执行此操作的命令:
az keyvault secret show -n secret-file --vault-name testkeyvault | jq '.value | fromjson' > /usr/src/secret-file.json