如何在 c# 中使用 aws sdk 检索 aws-ec2 windows 实例密码

how to retrive aws-ec2 windows instance password using aws sdk in c#

我正在使用 aws sdkaws sdk 检索云数据。 我得到了所有 ec2 相关数据,但我无法找到如何连接实例。

这是从亚马逊云中检索实例的代码:

IAmazonEC2 ec2Client = new AmazonEC2Client(accesskey,secretkey, new AmazonEC2Config
{
     Timeout = TimeSpan.FromSeconds(300),
     MaxErrorRetry = 3,
     RegionEndpoint = RegionEndpoint.GetBySystemName(regionName)
 });
 var instanceRequest = new DescribeInstancesRequest();
 DescribeInstancesResponse ec2Response = ec2Client.DescribeInstances(instanceRequest);

首先,您需要一个 key/pair 文件,您在创建实例时需要使用它来检索 windows 密码。

以下是使用 AWS SDK 检索 windows 实例密码的步骤:

#1. 您需要将您的 .pem 文件中的 instanceId 和 RSA 密钥传递给以下代码。

    IAmazonEC2 ec2Client = new AmazonEC2Client(accesskey, secretkey, new AmazonEC2Config
     {
                Timeout = TimeSpan.FromSeconds(300),
                MaxErrorRetry = 3,
                RegionEndpoint = region,
     });

     var passwordRequest = new GetPasswordDataRequest();
     passwordRequest.InstanceId = instanceId;
     var passwordResponse = ec2Client.GetPasswordData(passwordRequest);
     var password = passwordResponse.GetDecryptedPassword(rsaKey);
     return password;
});

注意:您必须在启动实例后至少等待 4 分钟才能获取 windows 密码。