运行 使用 Amazon Toolkit for Visual Studio 服务器启动期间的 PowerShell 脚本

Running PowerShell Script during server startup when using Amazon Toolkit for Visual Studio

我正在使用 AWS Toolkit extension for Visual Studio 提供的标准 "Publish to AWS Elastic Beanstalk ..." 功能,但是我还需要将凭证文件部署到 C: 目录的根目录,以便正确访问 S3 API。

如果我只是远程进入实例并添加文件,那么它只会持续到 Amazon 回收云实例然后生成一个新实例来替换它,这意味着应用程序会被破坏,直到我远程进入新的实例并创建一个新文件。

最好让服务器自动 运行 一个 PowerShell 脚本,在创建服务器实例或启动服务器实例时处理此任务和其他配置任务。有没有一种方法可以使用 AWS 工具包进行设置?我能够找到似乎相关的文档,但我无法弄清楚如何让它与我正在使用的 VS 扩展一起工作:

http://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/deployment-beanstalk-custom.html

或者我走错了路,我需要为此制作自定义 AMI?

对于 EC2 实例,不要添加凭据文件。而是使用 IAM 角色。

IAM 角色是定义权限的策略,就像 IAM 用户一样,但适用于 EC2 等亚马逊服务。您将角色附加到实例。

Amazon 工具、SDK 等将自动从 EC2 实例的元数据中找到凭据。

AWS 管理控制台有许多预定义的策略,您可以将它们添加到您的角色中。这使得创建角色变得非常容易。

在 Beanstalk 中将角色分配给您的 EC2 实例后,当创建新实例时,该角色的凭据将可用。无需发布凭据文件。

这也是官方推荐给EC2实例分配权限的方法。

Blog: IAM roles for EC2 instances

User Guide: IAM roles for EC2 instances