【发布时间】:2020-11-06 01:00:57
【问题描述】:
我遇到了这个 bash 脚本,我需要在 PowerShell 中做同样的事情。
vault write ssh-client-signer/roles/my-role -<<"EOH"
{
"allow_user_certificates": true,
"allowed_users": "*",
"default_extensions": [
{
"permit-pty": ""
}
],
"key_type": "ca",
"default_user": "ubuntu",
"ttl": "30m0s"
}
EOH
我尝试使用这样的多行字符串:
vault write ssh-client-signer/roles/my-role -@"
{
"allow_user_certificates": true,
"allowed_users": "*",
"default_extensions": [
{
"permit-pty": ""
}
],
"key_type": "ca",
"default_user": "ubuntu",
"ttl": "30m0s"
}
"@
但是该命令没有正确解析选项。
Failed to parse K=V data: invalid key/value pair "-@\n{\n allow_user_certificates: true,\n allowed_users: *,\n default_extensions: [\n {\n permit-pty: \n": format must be key=value
我找到了一种使用 PowerShell 运行命令的方法,方法是让 vault 从 JSON 文件中读取选项。
vault write ssh/roles/my-role "@my-role.json";
但这并不能回答最初的问题。
【问题讨论】:
-
您是否尝试过将此处的字符串传递给
vault?@'...<extra newline at the bottom>'@ | & vault write ssh-client-signer/roles/my-role - -
你能解释一下你的意思是“没有正确解析选项”吗?你得到什么错误?
-
我将帖子编辑为加载项错误
标签: powershell hashicorp-vault powershell-core