如何使用 azure ARM 或 sdk Java 代码生成现有 SSH 密钥的密钥对

How to generate a keypair of a existing SSH key using azure ARM or sdk Java code

我使用以下 ARM 模板在 Azure 云上创建了一个 SSHKey(参考:link

{
    "location": "eastus",
    "name": "sshkeyname",
    "type": "Microsoft.Compute/sshPublicKeys",
    "apiVersion": "2019-12-01",
    "properties": {}
}

成功部署后,我可以看到在 azure cloud 上创建了 ssh 密钥,但没有 public 密钥。现在我想为此密钥生成 public 密钥。我知道使用 ssh-keygen 命令我可以生成它,但我想知道是否有可能使用 ARM 模板生成。请帮忙。提前致谢。

遗憾的是,如果您不提供 SSH public 密钥,则无法生成它。当您在 Azure 门户中创建 SSH 密钥对时,您可以看到这样的 ssh 密钥对:

Azure 生成 public 键供您设置为 publicKey 的值。但是在ARM模板中,需要自己提供。