AWS SCP 以及如何阻止对某些资源的访问

AWS SCPs and how to block access to certain resources

我想阻止访问我在组织的新 AWS 账户中作为基础设置创建的某些资源。我想为除管理员以外的所有用户执行此操作。仅管理部分的访问通过此设计解决:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Statement1",
            "Effect": "Deny",
            "Action": "*",
            "Resource": "*",
            "Condition": {
                "ArnNotEquals": {
                    "aws:PrincipalArn": [
                        "arn:aws:iam::*:role/myadminrole",
                        "arn:aws:iam::*:role/aws-reserved/sso.amazonaws.com/sso-region/AWSReservedSSO_myrolename"
                    ]
                }
            }
        }
    ]
}

正如您在上述角色中看到的,除了管理员之外的所有人都被拒绝,这不是我想做的,我想阻止对某些资源的访问。最简单的方法就是在“资源”下列出我想要阻止访问的资源。但这将在手动工作中解决,以使该 SCP 保持最新,这是我试图避免的事情。所以我的第二个想法是使用标签并根据这样的条件拒绝访问:

"Condition": {"ForAllValues:StringEquals": {"aws:TagKeys": ["mytagkey"]}}

但是当我 运行 解决一些 AWS 服务不支持基于标签的授权的问题时,请参阅 link: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html#:~:text=Yes-,AWS%20Lambda,Partial%C2%B2,-Amazon%20Lightsail

有谁知道解决我的问题的好方法吗?或者我只是让你接受我必须手动更新我的 SCP?

经过我和 AWS 支持人员的调查,目前这是不可能的。所以答案是你需要手动更新你的SCP。