Mam wiadro, na którym przypadkowo przesłano tysiące plików z listą ACL do: public_read Chciałbym, aby wszystkie pliki były niedostępne, z wyjątkiem wygenerowanego adresu URL dostępu.Jak ustawić zasady wiaderek Amazona S3 jako prywatne dla wszystkich oprócz administratora?
Próbowałem utworzyć zasadę wiadro z odmową wszystkim dla wszystkich i umożliwić wszystkim dla mnie.
nie robi praca i wszystkie pliki są zakazane nawet z wygenerowanym URL dostępu:
{
"Version": "2008-10-17",
"Id": "Policy1331136935471",
"Statement": [
{
"Sid": "Stmt1331136294179",
"Effect": "Deny",
"Principal": {
"AWS": "*"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::myBucket/*"
},
{
"Sid": "Stmt1331136364169",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::6527...3775:root"
},
"Action": "s3:*",
"Resource": "arn:aws:s3:::myBucket/*"
}
]
}
UPDATE:
znalazłem odniesienie do domyślnego zaprzeczyć w doc ale Generator zasad AWS ma tylko dwie wartości "Zezwól" i "Odmów", czy ktokolwiek ma składnię domyślnego odmowy?
Dzięki za pomoc
Pomyślałem, że powinieneś być w stanie zmienić oświadczenie "Odrzuć", aby używać "NotPrincipal" zamiast "Zleceniodawca", np. '" NotPrincipal ": {" AWS ":" LICZBA KONTA "NUMER}}' ale po wypróbowaniu tego samego nie działa. – Rory