我在Ubuntu 18.04上,尝试使用Azure CLI(2.0.56)从Azure KeyVault下载Secret。在Windows上的Powershell中,秘密的下载工作正常,但是在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 Ends保存文件,编码为UTF-8,我可以在Linux中使用cat
打开文件,甚至可以使用相同的文件和{{1}来设置密码},但之后无法立即下载。
答案 0 :(得分:0)
也许这可以帮助某人搜索类似的问题。我认为问题在于Azure CLI
中的实现。作为解决方法,在使用show
而不是download
操作之后,我使用jq来解析我自己的机密内容。
这是执行此操作的命令:
az keyvault secret show -n secret-file --vault-name testkeyvault | jq '.value | fromjson' > /usr/src/secret-file.json