我想使用PowerShell管理我的AWS环境。我们通过IAM角色获得访问权限。我生成Access密钥&我的IAM角色的密钥。有人可以指导我如何生成这些密钥。
答案 0 :(得分:1)
IAM角色只能由 IAM用户使用。这是因为用户需要向AWS进行身份验证以证明他们是该用户。然后,这将提供IAM用户凭证。
如果您希望使用某个角色,则可以使用用户凭据调用Use-STSRole
,该角色将承担该角色并返回与该角色关联的一组凭据。 (注意:凭据将在一段时间后过期,通常为一小时。)
有关详细信息,请参阅:Switching to an IAM Role (Tools for Windows PowerShell)
答案 1 :(得分:0)
您不会为角色生成IAM访问密钥/密钥。 AWS会为您生成这些内容,并使其在实例的元数据中可用。
如果您已正确安装PowerShell和AWS工具,则AWS Tools for Windows PowerShell将自动从实例的元数据中提取访问密钥/密钥。
此链接将提供有关PowerShell和IAM角色的更多信息:
[新评论后更新]
如果您的目标是为新用户生成IAM访问密钥,请登录AWS控制台,转到IAM,转到用户,添加用户,单击"编程访问",然后设置权限用户并通过创建用户完成。在下一个屏幕上将是访问键。您需要下载(或复制)秘密访问密钥,因为它不会再次显示。
对于现有用户,请单击该用户,单击"安全凭据"选项卡,然后单击"创建访问密钥"按钮。复制或下载密钥。注意:您无法访问以前创建的访问密钥。如果您丢失了秘密访问密钥,则必须生成新密钥。
答案 2 :(得分:0)
根据AWS Doc,有一种方法可以通过API:
TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
&& curl -H "X-aws-ec2-metadata-token: $TOKEN" –v http://169.254.169.254/latest/meta-data/iam/security-credentials/*role_name*
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html