Как исправить несоответствие s3-bucket-policy-grantee-check?

Я развернул пакет соответствия NIST CSF в своей учетной записи AWS через AWS Config, чтобы повысить уровень безопасности. Один из моих ресурсов не соответствовал требованиям из-за того, что s3-bucket-policy-grantee-check не прошел. Во-первых, я не понимаю, что это означает на простом английском, несмотря на то, что читал его несколько раз (я надеялся, что кто-то сможет просто говорить для меня еще больше).

У меня следующая политика корзины, но я не могу понять, почему я не могу избавиться от этого нарушения:

      {
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AWSCloudTrailAclCheck",
            "Effect": "Allow",
            "Principal": {
                "Service": "cloudtrail.amazonaws.com"
            },
            "Action": "s3:GetBucketAcl",
            "Resource": "arn:aws:s3:::cis-alarms-<account-number>"
        },
        {
            "Sid": "AWSCloudTrailWrite",
            "Effect": "Allow",
            "Principal": {
                "Service": "cloudtrail.amazonaws.com"
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::cis-alarms-<account-number>/AWSLogs/<account-number>/*",
            "Condition": {
                "StringEquals": {
                    "s3:x-amz-acl": "bucket-owner-full-control"
                }
            }
        },
        {
            "Sid": "AllowSSLRequestsOnly",
            "Effect": "Deny",
            "Principal": "*",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::cis-alarms-<account-number>",
                "arn:aws:s3:::cis-alarms-<account-number>/*"
            ],
            "Condition": {
                "Bool": {
                    "aws:SecureTransport": "false"
                }
            }
        }
    ]
}

Что я делаю не так?

PS. Это для корзины, которая была подготовлена, когда я создавал трейл в CloudTrail, и он создал это ведро как ведро журнала трейлов .

2 ответа

Я понял, что происходит. Поскольку я развернул это правило с помощью пакета соответствия, я не смог отредактировать роль, поскольку она привязана к роли, связанной со службой, которая предотвращает любые изменения / удаления правил в пакете соответствия. Когда я развернул правило само по себе и ввел необходимые входные данные (servicePrincipals и awsPrincipals), оно сработало как шарм, и я смог избавиться от нарушения.

Проблема действительно в том, что вам необходимо установить правильные принципы в правиле конфигурации. Эти параметры можно настроить в пакете соответствия AWS с помощью Cloudformation, используяInputParametersсвойство. Например:

      ConformancePackCis:
  Type: AWS::Config::ConformancePack
  Properties:
    ConformancePackName: CISAWSFoundationsBenchmarkLevel2
    TemplateBody: !Sub |-
      Resources:
        S3BucketPolicyGranteeCheck:
          Properties:
            ConfigRuleName: s3-bucket-policy-grantee-check
            InputParameters:
              servicePrincipals: "logging.s3.amazonaws.com"
              awsPrincipals: "${AWS::AccountId},arn:aws:iam::cloudfront:user/*"
            Scope:
              ComplianceResourceTypes:
              - AWS::S3::Bucket
            Source:
              Owner: AWS
              SourceIdentifier: S3_BUCKET_POLICY_GRANTEE_CHECK
          Type: AWS::Config::ConfigRule
Другие вопросы по тегам