使用 Azure CLI 创建 Azure Key Vault Secrets 在值中删除插入符 ^ 字符
Create Azure Key Vault Secrets with Azure CLI drops caret ^ character in value
我正在尝试使用 Azure Cli v2.9.0 创建一个新的 Azure Key Vault 机密(我们在我们的管道中使用这个版本,目前升级会很困难。)通过下面的命令,
az keyvault secret set --vault-name $myKeyVaultName -n $mySecretName --value "abc^def"
该命令被接受并创建了一个新的秘密,但它从字符串中删除了插入符号 (^) 并导致秘密值 abcdef 而不是预期的 abc^def。
在我的测试过程中,我看到了来自 Powershell 的以下消息,但这种情况很少见:
无法使用 cp1252 编码对输出进行编码。不支持的字符将被丢弃。
插入符号在字符集中很奇怪 - https://en.wikipedia.org/wiki/Windows-1252#Code_page_layout
有没有办法 运行 此命令并让 Key Vault 接受带插入符号的值?
我可以重现你的问题。
实际上,这取决于您的环境,只有当您 运行 Powershell
中的命令时才会出现此问题,如果您 运行 Bash
中的 CLI 命令,它工作正常。
az keyvault secret set --vault-name joykeyvault -n testkey12 --value "abc^def"
因此,如果您想在 Powershell
环境中 运行 此命令,只需使用下面的行。
az keyvault secret set --vault-name joykeyvault -n testkey12 --value '"abc^def"'
如果您有任何特殊值要存储在 AKV 中,请在单引号 '"abcx^09|"' 下使用双引号,而不是 "abcx^09|"
AKV 储值 = abcx^09|
我正在尝试使用 Azure Cli v2.9.0 创建一个新的 Azure Key Vault 机密(我们在我们的管道中使用这个版本,目前升级会很困难。)通过下面的命令,
az keyvault secret set --vault-name $myKeyVaultName -n $mySecretName --value "abc^def"
该命令被接受并创建了一个新的秘密,但它从字符串中删除了插入符号 (^) 并导致秘密值 abcdef 而不是预期的 abc^def。
在我的测试过程中,我看到了来自 Powershell 的以下消息,但这种情况很少见: 无法使用 cp1252 编码对输出进行编码。不支持的字符将被丢弃。
插入符号在字符集中很奇怪 - https://en.wikipedia.org/wiki/Windows-1252#Code_page_layout
有没有办法 运行 此命令并让 Key Vault 接受带插入符号的值?
我可以重现你的问题。
实际上,这取决于您的环境,只有当您 运行 Powershell
中的命令时才会出现此问题,如果您 运行 Bash
中的 CLI 命令,它工作正常。
az keyvault secret set --vault-name joykeyvault -n testkey12 --value "abc^def"
因此,如果您想在 Powershell
环境中 运行 此命令,只需使用下面的行。
az keyvault secret set --vault-name joykeyvault -n testkey12 --value '"abc^def"'
如果您有任何特殊值要存储在 AKV 中,请在单引号 '"abcx^09|"' 下使用双引号,而不是 "abcx^09|"
AKV 储值 = abcx^09|