Copyright | (c) 2013-2023 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Sets the versioning state of an existing bucket.
You can set the versioning state with one of the following values:
Enabled—Enables versioning for the objects in the bucket. All objects added to the bucket receive a unique version ID.
Suspended—Disables versioning for the objects in the bucket. All objects added to the bucket receive the version ID null.
If the versioning state has never been set on a bucket, it has no versioning state; a GetBucketVersioning request does not return a versioning state value.
In order to enable MFA Delete, you must be the bucket owner. If you are
the bucket owner and want to enable MFA Delete in the bucket versioning
configuration, you must include the x-amz-mfa request
header and the
Status
and the MfaDelete
request elements in a request to set the
versioning state of the bucket.
If you have an object expiration lifecycle policy in your non-versioned bucket and you want to maintain the same permanent delete behavior when you enable versioning, you must add a noncurrent expiration policy. The noncurrent expiration lifecycle policy will manage the deletes of the noncurrent object versions in the version-enabled bucket. (A version-enabled bucket maintains one current and zero or more noncurrent object versions.) For more information, see Lifecycle and Versioning.
Related Resources
Synopsis
- data PutBucketVersioning = PutBucketVersioning' {}
- newPutBucketVersioning :: BucketName -> VersioningConfiguration -> PutBucketVersioning
- putBucketVersioning_checksumAlgorithm :: Lens' PutBucketVersioning (Maybe ChecksumAlgorithm)
- putBucketVersioning_contentMD5 :: Lens' PutBucketVersioning (Maybe Text)
- putBucketVersioning_expectedBucketOwner :: Lens' PutBucketVersioning (Maybe Text)
- putBucketVersioning_mfa :: Lens' PutBucketVersioning (Maybe Text)
- putBucketVersioning_bucket :: Lens' PutBucketVersioning BucketName
- putBucketVersioning_versioningConfiguration :: Lens' PutBucketVersioning VersioningConfiguration
- data PutBucketVersioningResponse = PutBucketVersioningResponse' {
- newPutBucketVersioningResponse :: PutBucketVersioningResponse
Creating a Request
data PutBucketVersioning Source #
See: newPutBucketVersioning
smart constructor.
PutBucketVersioning' | |
|
Instances
newPutBucketVersioning Source #
Create a value of PutBucketVersioning
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
PutBucketVersioning
, putBucketVersioning_checksumAlgorithm
- Indicates the algorithm used to create the checksum for the object when
using the SDK. This header will not provide any additional functionality
if not using the SDK. When sending this header, there must be a
corresponding x-amz-checksum
or x-amz-trailer
header sent.
Otherwise, Amazon S3 fails the request with the HTTP status code
400 Bad Request
. For more information, see
Checking object integrity
in the Amazon S3 User Guide.
If you provide an individual checksum, Amazon S3 ignores any provided
ChecksumAlgorithm
parameter.
$sel:contentMD5:PutBucketVersioning'
, putBucketVersioning_contentMD5
- >The base64-encoded 128-bit MD5 digest of the data. You must use this
header as a message integrity check to verify that the request body was
not corrupted in transit. For more information, see
RFC 1864.
For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.
$sel:expectedBucketOwner:PutBucketVersioning'
, putBucketVersioning_expectedBucketOwner
- The account ID of the expected bucket owner. If the bucket is owned by a
different account, the request fails with the HTTP status code
403 Forbidden
(access denied).
$sel:mfa:PutBucketVersioning'
, putBucketVersioning_mfa
- The concatenation of the authentication device's serial number, a
space, and the value that is displayed on your authentication device.
PutBucketVersioning
, putBucketVersioning_bucket
- The bucket name.
$sel:versioningConfiguration:PutBucketVersioning'
, putBucketVersioning_versioningConfiguration
- Container for setting the versioning state.
Request Lenses
putBucketVersioning_checksumAlgorithm :: Lens' PutBucketVersioning (Maybe ChecksumAlgorithm) Source #
Indicates the algorithm used to create the checksum for the object when
using the SDK. This header will not provide any additional functionality
if not using the SDK. When sending this header, there must be a
corresponding x-amz-checksum
or x-amz-trailer
header sent.
Otherwise, Amazon S3 fails the request with the HTTP status code
400 Bad Request
. For more information, see
Checking object integrity
in the Amazon S3 User Guide.
If you provide an individual checksum, Amazon S3 ignores any provided
ChecksumAlgorithm
parameter.
putBucketVersioning_contentMD5 :: Lens' PutBucketVersioning (Maybe Text) Source #
The base64-encoded 128-bit MD5 digest of the data. You must use this
header as a message integrity check to verify that the request body was not corrupted in transit. For more information, see RFC 1864.
For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.
putBucketVersioning_expectedBucketOwner :: Lens' PutBucketVersioning (Maybe Text) Source #
The account ID of the expected bucket owner. If the bucket is owned by a
different account, the request fails with the HTTP status code
403 Forbidden
(access denied).
putBucketVersioning_mfa :: Lens' PutBucketVersioning (Maybe Text) Source #
The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device.
putBucketVersioning_bucket :: Lens' PutBucketVersioning BucketName Source #
The bucket name.
putBucketVersioning_versioningConfiguration :: Lens' PutBucketVersioning VersioningConfiguration Source #
Container for setting the versioning state.
Destructuring the Response
data PutBucketVersioningResponse Source #
See: newPutBucketVersioningResponse
smart constructor.
Instances
newPutBucketVersioningResponse :: PutBucketVersioningResponse Source #
Create a value of PutBucketVersioningResponse
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.