【问题标题】:Add SSM:GetParameter to AWS EC2 Instance将 SSM:GetParameter 添加到 AWS EC2 实例
【发布时间】:2022-01-22 22:40:41
【问题描述】:

第一次将应用程序部署到 AWS,这是一次冒险。我当前的错误:

Dec 21 03:49:33 ip-172-31-31-185 web: botocore.exceptions.ClientError: 调用 GetParameter 操作时发生错误 (AccessDeniedException):用户:arn:aws:sts::[my account number]:assumed-role/aws-elasticbeanstalk-ec2-role/[实例号] 无权执行:ssm:GetParameter on resource:arn:aws:ssm:us-east-2:[my account number] :parameter/Dev/WebServer/[我想得到的东西] 因为没有基于身份的策略允许 ssm:GetParameter 操作

文档非常擅长告诉我需要做什么——看来我需要使用 AWS 系统管理器向实例添加 IAM 策略。我什至有政策——但不太擅长告诉我如何去做。您可以在 AWS 控制台中的何处添加实例策略?

【问题讨论】:

    标签: amazon-web-services amazon-ec2


    【解决方案1】:

    根据错误信息 - 它来自 Beanstalk,文档是 https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/concepts-roles-instance.html

    您很可能已经拥有基于现有角色的实例配置文件。这就是你需要改变的角色。该策略在 IAM(而不是 Systems Manager)中管理,只需在其中添加 ssm:GetParameter 规则,或者使用星号(这可能足以在开发环境中调试),如果它有效,则将其限制为您的 arn,如果您arn:aws:ssm:us-east-2:[my account number]:parameter/Dev/WebServer/[thing I want to get] 使[thing I want to get] 类似于myapp-prefix-[thing I want to get] 然后您可以轻松地将访问权限限制为仅属于此给定应用程序的参数。或者你可以使用标签。

    【讨论】:

    • 很抱歉,我才意识到我忘了对此发表评论。谢谢您的帮助!这个障碍似乎已经完成。到下一个。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-11
    • 2012-07-17
    • 2018-12-29
    • 2021-07-31
    • 1970-01-01
    相关资源
    最近更新 更多