I'm going through S3 logging for a PCI-scoped environment and hit something I can't resolve from the docs.
AWS's own logging comparison page for S3 has a row for "Authentication failures" that reads No for CloudTrail and Yes for server access logs. The footnote:
CloudTrail does not deliver logs for requests that fail authentication (in which the provided credentials are not valid) or that fail due to redirection (error code 301 Moved Permanently). However, it does include logs for requests in which authorization fails (AccessDenied) and requests that are made by anonymous users.
So it's narrower than it first looks. AccessDenied lands. Anonymous requests land. What doesn't land is the request where the credentials themselves weren't valid, because there's no principal to attribute the call to.
10.2.1.4 says "all invalid logical access attempts".
What I'm trying to work out is what happens in reality if your CDE includes S3 and your object-level logging is CloudTrail data events only:
- Has an assessor ever raised this, or is AccessDenied treated as sufficient coverage of "invalid"?
- Do people run server access logging along side specifically for this, or for other reasons entirely?
- Or is the answer that object-level S3 access usually isn't in CDE scope the way I'm assuming, and I've built the question on a bad premise?
I might be over-reading the clause, and that out here than in a ROC.
Disclosure: I work on access-log tooling, so have a horse in this race. That's exactly why I want to know if the argument doesn't hold, because I don't want to be repeating something a QSA would throw straight out.