我无法从作为系统帐户运行的cmd.exe中运行任何AWS命令。
根据调试输出,在尝试获取EC2机器的IAM角色时,可能会出现获取404的问题:
C:\>aws --debug s3 ls
2016-09-02 15:47:31,101 - MainThread - botocore.credentials - DEBUG - Looking for credentials via: iam-role
2016-09-02 15:47:35,608 - MainThread - botocore.vendored.requests.packages.urllib3.connectionpool - INFO - Starting new HTTP connection (1): au-aws-igw.analytics.pvt
2016-09-02 15:47:35,674 - MainThread - botocore.vendored.requests.packages.urllib3.connectionpool - DEBUG - "GET http://169.254.169.254/latest/meta-data/iam/security-credentials/ HTTP/1.1" 404 345
复制问题:
如果只是远程进入EC2并运行cmd (而不是系统帐户),那么'aws s3 ls‘就会像预期的那样工作.也就是说,列出s3角色可以访问的所有EC2存储桶。
发布于 2017-06-03 11:16:19
问题是为系统帐户配置了代理,因此无法访问本地EC2元数据URL。
这是很难找到的,因为它是隐藏在注册表的窗口框。我不得不打开regedit作为系统帐户,并去IE和找到它。刚取下钥匙工作得很好。
发布于 2016-09-02 15:32:45
读这个:http://windowsitpro.com/systems-management/psexec
也许可以尝试使用-u来指定框上的用户来运行您的命令?
我想这是一个没有环境变量集、AWS配置路径或其他什么的问题。
无论您在哪个用户中远程运行cmd,在-u参数中传递用于psexec.exe命令的用户名,我都希望它能够工作。
https://stackoverflow.com/questions/39287270
复制相似问题