无法在 Windows EC2 上 运行 Powershell 用户数据脚本

Can't run Powershell user data scripts on Windows EC2

我将 Javascript SDK 用于 运行 Windows Server2019 EC2 实例 - 我使用的 AMI 是自定义 AMI。通过 SDK,我正在输入此用户数据:

<powershell>
    Copy-S3Object -BucketName mybucket -KeyPrefix myprefix -LocalFolder C:\Users\myuser\Desktop -Region ap-southeast-2
</powershell>
<persist>true</persist>

当我select运行ning实例查看用户数据时,上面的用户数据正确显示。

我已将适当的 IAM 角色添加到实例中,因为当我从控制台手动 运行 基本 Windows Server2019 实例时,它会工作,具有相同的用户数据和 IAM 角色。

但是当 运行从 SDK 中调用它时,EC2 日志显示:

<powershell> tag was provided.. running powershell content
Failed to get metadata: The result from http://169.254.169.254/latest/user-data was empty
Unable to execute userdata: Userdata was not provided

诀窍是使用 sysprep 创建 AMI,如图 here