我需要在 keyvault 中存储用户名和 ssh 文件以用于连接到远程 SFTP 服务器。
我可以使用用户名/密码组合创建一个秘密。我可以使用 ssh 密钥文件创建一个秘密。我不知道如何使用用户名/ssh 密钥文件组合创建秘密。可以做吗?
感谢
Anupam Chand
提出同样的观点。
Azure Key Vault
不直接支持将 用户名 和 SSH 密钥文件 的组合存储为单个机密,但是,您可以通过将它们作为两个单独的机密存储在 Key Vault
中然后检索来实现此目的并通过以下步骤将它们组合到您的脚本中。
将用户名存储在密钥库中
az keyvault secret set --vault-name "VKV" --name "Username" --value "azureuser"
将 SSH 密钥文件存储在密钥库中
az keyvault secret set --vault-name "VKV" --name "SshKey" --file "/user/Venkatvm.pem"
结果:
脚本中的Retrieve
和 combine
检索到的用户名和 SSH 密钥 内容用于连接应用程序。
username=$(az keyvault secret show --vault-name "VKV" --name "VMusername" --query "value" -o tsv)
ssh_key=$(az keyvault secret show --vault-name "VKV" --name "SshKeyFile" --query "value" -o tsv)
vm_ip="172.178.91.148"
echo "$ssh_key" > /user/private-key.pem
chmod 400 /user/private-key.pem
ssh -i /user/private-key.pem "$username@$vm_ip"