Using S3 Versioning
How to Use S3 Versioning
In order to have a historical record of changes to S3 buckets, you must have the S3 Versioning feature enabled. This feature in AWS gives you the option to make changes to a file, but keep older versions available. S3 Versioning is important to security because it protects your objects from accidental deletion, unintentional changes, and other types of mistakes or failures. As AWS puts it, the S3 Versioning features allows you to “preserve, retrieve, and restore every version of every object stored in your buckets.”
There are two important notes to point out about S3 Versioning. First, S3 Versioning is not applied to S3 buckets by default, so your team must properly configure this feature to utilize it. It’s important to note that once you enable versioning on a bucket, you cannot return it to an unversioned state. Second, when you enable versioning, it is done so on a bucket level. Once enabled, versioning applies to all of the objects within a bucket.
To learn more, visit the AWS documentation about how to use S3 Versioning.
Amazon Web Services S3, the Simple Storage Service, is used across a wide range of data. Almost every conceivable form of data that you can think of – source code, static images for websites, contract documents, almost everything you can conceive of that is a file – has probably already been stored in S3.
One of the configuration options that is available to our S3 buckets is that we can enable versioning. What this, in effect, does is that every time we make a change to the file, it hides the old version and only makes the latest version immediately available. You, of course, have options to go back and recover any previous version of that file. This also does have the effect of increasing the amount of storage. Where S3 is paid for, in part, by the quantity (the GB, the TB) of data that is stored in the S3 bucket, this will increase the overall capacity. You can set versioning rules. You can set lifecycle rules on these files, so that they can be written off either to infrequent access S3, Glacier, or different, less expensive forms of the S3 service. But in those situations where multiple versions of a file, where it could be helpful to be able to go back and look at the changes that have been made or to recover from changes that have been made intentionally or accidentally. Maybe a file that was that was accidentally or intentionally deleted, we can also use S3 Versioning in order to recover from that kind of a situation, as well. Making you aware of the option of S3 Versioning for those situations where it would be helpful. Probably not in every situation, but certainly it would be helpful in some situations.