Архитектура S3 Bucket и политика Bucket - PullRequest
0 голосов
/ 16 мая 2019

Мне нужно ведро s3 с политикой ведра s3, где у нас есть N количество PUSHERS (загружать сценарии) и 1 PULLER (загружать сценарий). Толкатели могут только читать / записывать там ключ (объект) в общем ведре, пока PULLER может читать / писать любой объект. Политика для puller проста. Но сложность возникает, когда каждый PUSHER может получить доступ только к своему объекту, а не к любому другому объекту.

Я пытался создать две групповые политики и предполагал, что PULLERS и PUSHERS будут пользователями, которые будут ПОЛЬЗОВАТЕЛЯМИ. Затем мы могли бы присоединить их к Группе .. Я также пытался включить единую политику корзины, но это не работал так же

S3 BUCKET POLICY:

{
  "Version": "2012-10-17",
  "Statement": [
      {
             "Sid": "AllowGroupToSeeBucketListInTheConsole",
             "Action": ["s3:ListAllMyBuckets","s3:GetBucketLocation"],
             "Effect": "Allow",
             "Resource": ["arn:aws:s3:::*"]
      },
      {
             "Sid": "AllowRootAndHomeListingOfMonitoringBucket",
             "Action": ["s3:ListBucket"],
             "Effect": "Allow",
             "Resource": ["arn:aws:s3:::${aws_s3_bucket.service_bucket.id}"],
             "Condition":{"StringEquals":{"s3:prefix":["","home/"],"s3:delimiter":["/"]}}
      },
      {
             "Sid": "AllowListingOfUserFolder",
             "Action": ["s3:ListBucket"],
             "Effect": "Allow",
             "Resource": ["arn:aws:s3:::${aws_s3_bucket.service_bucket.id}"],
             "Condition":{"StringLike":{"s3:prefix":
                         ["home/$${aws:username}/*","home/$${aws:username}"]
                        }
      },
      {
              "Sid": "AllowAllS3ActionsInUserFolder",
              "Action":["s3:*"],
              "Effect":"Allow",
              "Resource": ["arn:aws:s3:::${aws_s3_bucket.service_bucket.id}/$${aws:username}/*"]
      }
    ]
}
EOF
}

Мой терраформ-аппликация не подходит для такой политики и заявляет, что она искажена

...