IAM角色承担角色权限

时间:2018-06-20 14:33:07

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

授予使用此权限创建的IAM角色:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": "sts:AssumeRole",
      "Principal": {
        "Service": "lambda.amazonaws.com"
      },
      "Effect": "Allow",
      "Sid": "First"
    }
  ]
}

是否有任何内容告诉AWS,只有帐户中的lambda函数才能够承担该角色。我希望AWS Lambda在此帐户中运行功能时能够承担此角色,但只能在此AWS帐户中运行的Lambda函数-而不是在偶然发现该IAM角色的ARN的其他随机AWS帐户中运行的Lambda函数。

如果使用此配置允许在任何AWS账户中运行的lambda函数承担该角色,那么如何修改此策略以仅允许在我的账户中运行的lambda函数承担该角色。

1 个答案:

答案 0 :(得分:1)

"Service": "lambda.amazonaws.com"告诉您,IAM角色只能由Lambda承担。

如果您想授予其他帐户以担任该角色的权限,则该角色的IAM策略可能如下所示:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::<AccountNumberThatCanAssumeTheRole>:root"
      },
      "Action": "sts:AssumeRole",
      "Condition": {}
    }
  ]
}