AWS Security Hub 分析 CloudFormation

0

【以下的问题经过翻译处理】 所需的策略arn:aws:iam::aws:policy/AmazonEC2ReadOnlyAccess看起来像这样:

{
    “Version”:“2012-10-17”,
    “Statement”:[
        {
            “Effect”:“Allow”,
            “Action”:“ec2:Describe *”,
            “Resource”:“*”
         },
         {
             “Effect”:“Allow”,
             “Action”:“elasticloadbalancing:Describe *”,
             “Resource”:“*”
         },
         {
             “Effect”:“Allow”,
             “Action”:[
                 “cloudwatch:ListMetrics”,
                 “cloudwatch:GetMetricStatistics”,
                 “cloudwatch:Describe *”
             ],
             “Resource”:“*”
         },
         {
             “Effect”:“Allow”,
             “Action”:“autoscaling:Describe *”,
             “Resource”:“*”
         }
     ]
}

这可使IAM用户执行大多数ec2读取功能。

问题是这太宽容了。我需要做的是允许所有与此相同的功能,但仅适用于某些实例。因此,我尝试使用实例ID列表instanceids(使用Python boto3)来隔离此:

ResourceIds = [ f"arn:aws:ec2:{REGION_NAME}:{AWS_ACCOUNTID}:instance/{iid}" for iid in instanceids]
Ec2ReadOnlyPolicy = {
    “Version”:“2012-10-17”,
    “Statement”:[
        {
            “Effect”:“Allow”,
            “Action”:“ec2:Describe *”,
            “Resource”:ResourceIds
         },
         {
             “Effect”:“Allow”,
             “Action”:“elasticloadbalancing:Describe *”,
             “Resource”:ResourceIds
         },
         {
             “Effect”:“Allow”,
             “Action”:[
                 “cloudwatch:ListMetrics”,
                 “cloudwatch:GetMetricStatistics”,
                 “cloudwatch:Describe *”
             ],
             “Resource”:ResourceIds
         },
         {
             “Effect”:“Allow”,
             “Action”:“autoscaling:Describe *”,
             “Resource”:ResourceIds
profile picture
EXPERTE
gefragt vor 5 Monaten39 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 很好的问题。在编写 IAM 策略时,请记住有些操作不支持资源级权限。如果不支持资源级权限,则必须在策略的 Resource 元素中指定所有资源 ("*") 才能使其工作。

通过操作页面(下面是示例)可以确定操作是否支持资源级权限。如果在“Resource types”列中没有任何值,则表示它不支持资源级权限。

在您的情况下,对于 DescribeInstances,该操作不支持资源级权限,并且必须附带指定所有资源。

您可以将不支持资源级权限的操作分开放在一个区块中,支持的操作放在另一个区块中,以实现更精细的 IAM 策略,就像您在上面尝试的那样。

https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonec2.html

profile picture
EXPERTE
beantwortet vor 5 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen