如何限制 AWS IAM 角色仅由 EMR 承担,而不由任何用户承担?

问题描述 投票:0回答:1

我尝试将对某些数据的访问限制为仅限 AWS EMR。基本上将对数据的访问限制为计划的 (EMR) 作业,其他用户不能使用其他资源(lambda、sagemaker)来读取数据。

此外,如何限制对附加到 IAM 角色的 IAM 策略的更改,以便管理员在创建策略后就不会更改该策略?

非常感谢任何意见!

amazon-web-services amazon-iam
1个回答
0
投票

创建 IAM 角色时,您将创建两个策略:指定谁可以代入该角色的角色信任策略和指定可以使用该角色执行哪些操作的权限策略。您指定允许在角色信任策略中担任该角色的受信任主体。

1.定制信任政策

例如,以下信任策略包括

aws:SourceArn
aws:SourceAccount
全局条件键,它们限制您向 Amazon EMR 授予对账户中特定资源的权限。

{
    "Version": "2008-10-17",
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "elasticmapreduce.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "<account-id>"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:elasticmapreduce:<region>:<account-id>:*"
                }
            }
        }
    ]
}

您可以在此处定义信任策略。

2.限制对 IAM 政策的更改

如何限制对附加到 IAM 角色的 IAM 策略的更改,以便管理员在创建策略后就不会更改该策略?

创建 IAM 角色时使用权限边界

参考这个答案 - https://stackoverflow.com/a/76047985/1273882

© www.soinside.com 2019 - 2024. All rights reserved.