对于使用 cloudformation 非常陌生,我无法弄清楚将 key 导入到实例创建中的语法。抱歉,如果这篇文章的格式已关闭。假设我的桌面上保存了一个名为 MyKey.pem 的 key 。我将如何导入 key 并将其应用到我在模板中创建的实例?另外,如果有人还可以告诉我在模板中实际生成新 key 并应用该 key 的过程,我也将不胜感激。这是我用来创建实例的代码。
Ec2Instance1:
Type: AWS::EC2::Instance
Properties:
InstanceType: t2.micro
ImageId: ami-07dcc3822b6f2bdbe
KeyName: MyKey.pem
最佳答案
遗憾的是,CloudFormation (CFN) 中没有直接的方法可以做到这一点。最简单的方法是使用 AWS 控制台或 CLI 导入 key ,然后在模板中按名称引用它。
但是如果你真的想通过(CFN)来做到这一点,你就必须使用 custom resource 。该资源将采用 lambda 函数的形式,该函数将使用 AWS SDK 创建 key 。私钥可以来自 SSM 参数存储,例如您可以在其中上传 key 或 AWS::SecretsManager::Secret .
更新
例如,如果您的 key 对名为 MyKeyPair
,那么在 CFN 中您将使用:
MyEC2Instance:
Type: AWS::EC2::Instance
Properties:
ImageId: "ami-79fd7eee"
KeyName: MyKeyPair
关于amazon-web-services - 如何将 key 从桌面导入到 cloudformation 模板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66249466/