1. AWS S3 Documentation, "Managing your storage lifecycle": "You can use S3 Lifecycle to define rules that control the lifecycle of your objects... For example, you can create a lifecycle rule that expires all objects with a specific prefix 3 days after creation." This directly supports the use of a lifecycle rule for expiration.
Source: AWS Documentation, Amazon S3 User Guide, "Managing your storage lifecycle".
2. AWS S3 Documentation, "Lifecycle action for your object": This document details the Expiration action. It states, "This action expires objects, and Amazon S3 deletes the expired objects on your behalf... You can specify expiration in the following ways: Number of days after object creation."
Source: AWS Documentation, Amazon S3 User Guide, "Lifecycle configuration elements", section on "Lifecycle action for your object".
3. AWS S3 Documentation, "Sharing objects using presigned URLs": "A presigned URL gives you access to the object identified in the URL... The presigned URLs are valid for the specified duration." This confirms that the URL expires, not the object itself.
Source: AWS Documentation, Amazon S3 User Guide, "Sharing objects using presigned URLs".
4. AWS S3 Documentation, "Using versioning in S3 buckets": "Use S3 Versioning to keep multiple versions of an object in the same bucket. For example, you can use versioning to preserve, retrieve, and restore every version of every object stored in your buckets." This clarifies that versioning's primary purpose is object preservation, not timed deletion.
Source: AWS Documentation, Amazon S3 User Guide, "Using versioning in S3 buckets".