Block Public Access в S3 — это набор глобальных «защитных» настроек на уровне аккаунта и бакета, который блокирует публичный доступ к объектам, даже если ACL или bucket policy его разрешают. Он нужен, чтобы по умолчанию закрыть данные от интернета, минимизировать риск утечек из-за ошибочных политик и упростить соблюдение требований безопасности. При конфликте всегда побеждает Block Public Access: публичный доступ не будет выдан, даже если политика его разрешает.
Block Public Access (S3 Block Public Access) — это дополнительный защитный слой поверх ACL и bucket policies, который не даёт сделать бакет или объекты публичными, пока вы явно и осознанно это не разрешите. Его задача — защитить от человеческих ошибок вроде чрезмерно широких политик с Principal: "*" или публичных ACL.
Block Public Access работает на двух основных уровнях:
Пример политики, которая без Block Public Access сделала бы бакет публичным, но будет заблокирована, если включён запрет на публичные bucket policies:
Аналогично, даже если кто-то попытается выставить объекту публичную ACL вроде public-read, при включённом флаге блокировки публичных ACL эта операция будет либо запрещена, либо её эффект будет проигнорирован — объект останется непубличным.
Отметьте свой прогресс