【问题标题】:AWS IAM Role Policy Resource RestrictionAWS IAM 角色策略资源限制
【发布时间】:2018-11-02 21:51:37
【问题描述】:

我对 AWS 比较陌生,正在尝试弄清楚角色策略是如何工作的。我已经阅读了非常全面的 AWS 文档,但我应用的政策仍然没有达到我的预期......让我解释一下

我正在尝试授予对某个角色的访问权限,以便在假定该角色时,它可以使用 lambda 进行操作

我创建了一个名为“部署者”的角色。
然后,我将以下政策附加到该角色:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "1",
            "Effect": "Allow",
            "Action": "lambda:*"
            "Resource": "arn:aws:iam::<account_id>:role/deployer"
        }
    ]
}

我的期望是政策说...指定的资源(部署者角色)是“允许”对 Lambda 服务执行任何操作

但是,当我在前端切换到该角色时,我在 Lambda 仪表板中收到以下错误:

您无权执行:lambda:GetAccountSettings。

我发现的唯一解决方案是在策略中使用通配符 Resource 属性...但是这否定了尝试限制仅访问该角色的目的

按照我的意愿行事的政策示例

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "1",
            "Effect": "Allow",
            "Action": "lambda:*"
            "Resource": "*"
        }
    ]
}

有人可以向我解释这里实际发生了什么吗?我显然不明白 Resource 属性的用途......对我来说,第二个 Policy 说任何资源都可以用 Lambda 做任何事情......

谢谢

【问题讨论】:

  • 不能这样定义。当我尝试创建类似于您的 IAM 角色时,我收到以下消息:您选择了需要函数资源类型的操作。将您的资源更改为 Lambda 函数 ARN(而不是角色名称)。

标签: amazon-web-services aws-lambda aws-iam


【解决方案1】:

您正在尝试在资源属性中定义要应用策略的角色 - 这不是资源属性的用途。资源属性与您希望用户能够调用的 Lambda 函数相关。

要将此策略分配给角色,只需按上述方式创建策略(适当定义您的 Lambda 资源,如果您真的想将其应用于所有 Lambda 函数,则可以是通配符)然后将策略分配给IAM 控制台。

有关定义资源的更多信息,请参阅here

【讨论】:

  • 好吧,这是有道理的......不过,我还需要做些什么来访问 AWS 控制台中的 Lambda 仪表板吗?当我担任该角色时,我仍然收到“您无权执行:lambda:GetAccountSettings。”控制台出错
【解决方案2】:

改变

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "1",
            "Effect": "Allow",
            "Action": "lambda:*"
            "Resource": "arn:aws:iam::<account_id>:role/deployer"
        }
    ]
}

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "1",
            "Effect": "Allow",
            "Action": "lambda:*"
            "Resource": "arn:aws:lambda:<region>:<account_number>:function:my-awesome-lambda-function"
        }
    ]
}

【讨论】:

    猜你喜欢
    • 2016-05-15
    • 2021-02-15
    • 2021-09-26
    • 2018-06-08
    • 2018-09-29
    • 1970-01-01
    • 1970-01-01
    • 2021-10-23
    • 2020-09-04
    相关资源
    最近更新 更多