Supported Amazon request headers

The following Amazon S3 REST request headers are currently supported by the Virtuozzo Hybrid Infrastructure implementation of the Amazon S3 protocol:

Authorization
The information required for request authentication. For anonymous requests this header is not required.
Content-Length
Length of the message (without the headers) according to RFC 2616.
Content-Type
The content type of the resource in case the request has content in the body.
Content-MD5
The base64 encoded 128-bit MD5 digest of the message (without the headers) according to RFC 1864.
Date
The date that can be used to create the signature contained in the Authorization header. If the Date header is to be used for signing it must be specified in the ISO 8601 basic YYYYMMDD'T'HHMMSS'Z' format.
Host
For path-style requests, the value is s3.amazonaws.com. For virtual-style requests, the value is BucketName.s3.amazonaws.com.
Range
Retrieves a byte range of the object.
x-amz-content-sha256
When using signature version 4 to authenticate request, this header provides a hash of the request payload.
x-amz-date
The date used to create the signature in the Authorization header (alternative to Date). The format must be ISO 8601 basic in the YYYYMMDD'T'HHMMSS'Z' format.
x-amz-range
Retrieves a range of the object (alternative to Range).
x-amz-object-lock-retain-until-date
The date and time when you want the object lock to expire.
x-amz-object-lock-mode
The object lock mode that you want to apply to an object.
x-amz-bucket-object-lock-enabled
Specifies whether you want S3 object lock to be enabled for a new bucket.
x-amz-object-lock-legal-hold
Specifies whether a legal hold will be applied to an object.
x-amz-bypass-governance-retention
Indicates whether an action should bypass governance-mode restrictions.
x-amz-acl
The canned ACL to apply to the object.
x-amz-meta-<name>
User-defined metadata, where <name> is the key.
x-amz-storage-class
The storage class to use for storing the object. For example: STANDARD, type_1, type_2, type_3.
If-Match
Returns the object only if its ETag matches the specified value.
If-None-Match
Returns the object only if its ETag does not match the specified value.
If-Modified-Since
Returns the object only if it has been modified since the specified time.
If-Unmodified-Since
Returns the object only if it has not been modified since the specified time.
x-amz-copy-source
The source object for a copy operation.
x-amz-copy-source-range
The range of the source object for a copy operation.
x-amz-copy-source-if-match
Copies the object if its ETag matches the specified value.
x-amz-copy-source-if-none-match
Copies the object if its ETag does not match the specified value.
x-amz-copy-source-if-modified-since
Copies the object if it has been modified since the specified time.
x-amz-copy-source-if-unmodified-since
Copies the object if it has not been modified since the specified time.

The following Amazon S3 REST request headers are ignored:

Expect
When an application uses 100-continue, it does not send the request body until it receives an acknowledgment. If the message is rejected based on the headers, the body of the message is not sent. This header can be used only if you are sending a body.
x-amz-security-token
This header is required for requests that use Amazon DevPay and requests that are signed by using temporary security credentials.

For more information about Amazon S3 REST error response headers, refer to the Amazon S3 REST API documentation.