Amazon S3 feature compatibility
The following table describes the support status for Amazon S3 functional features:
| Feature | Support |
|---|---|
| List Buckets | Supported |
| Delete Bucket | Supported |
| Create Bucket | Supported |
| Get Bucket Info (HEAD) | Supported |
| Bucket Tagging | Supported |
| Bucket Location | Supported* |
| Bucket Lifecycle | - |
| Bucket Replication | - |
| Policy (Buckets, Objects) | - |
| Bucket Website | - |
| Bucket ACLs (Get, Put) | - |
| Bucket Notification | - |
| Bucket Object Versions | Supported |
| Bucket Ownership | - |
| Bucket Metrics | - |
| Bucket Logging | - |
| Bucket Encryption | Supported** |
| Bucket Analytics | - |
| Bucket Request Payment | - |
| Bucket CORS | - |
| Put Object | Supported |
| Delete Object | Supported |
| Get Object | Supported |
| Get Object Info (HEAD) | Supported |
| POST Object | Supported |
| Copy Object | Supported |
| Multipart Uploads | Supported |
| Object Locking | Supported |
| Object Tagging | Supported |
| Presigned URLs | Supported |
| Object ACLs (Get, Put) | - |
| Storage Classes | Supported*** |
* Must be same region as bucket is created in, e.g. se-sto
** All data is encrypted at-rest and in-transit with evroc-managed encryption keys. Custom encryption keys or KMS aren't supported.
*** Only one storage class
S3 API compatibility
Not all supported S3 features are available via the S3 API, depending on the credentials used in the request.
There are two main types of credentials you can retrieve for evroc which you can use to authenticate with the S3 API: bucket service account credentials, and human user credentials.
Service account credentials are static and long-lived, whereas human user credentials are dynamic and short-lived. See access control.
S3 API supported actions
The following table describes which of the supported features are accessible via the S3 API and which are not.
| API Action | Supported |
|---|---|
| AbortMultipartUpload | ✅ Yes |
| CompleteMultipartUpload | ✅ Yes |
| CopyObject | ✅ Yes |
| CreateBucket | ✅ Yes |
| CreateMultipartUpload | ✅ Yes |
| DeleteBucket | ✅ Yes |
| DeleteBucketTagging | ✅ Yes |
| DeleteObject | ✅ Yes |
| DeleteObjects | ✅ Yes |
| DeleteObjectTagging | ✅ Yes |
| GetBucketLocation | ✅ Yes |
| GetBucketTagging | ✅ Yes |
| GetBucketVersioning | ✅ Yes |
| GetObject | ✅ Yes |
| GetObjectLegalHold | ✅ Yes |
| GetObjectLockConfiguration | ✅ Yes |
| GetObjectRetention | ✅ Yes |
| GetObjectTagging | ✅ Yes |
| HeadBucket | ✅ Yes |
| HeadObject | ✅ Yes |
| ListBuckets | ✅ Yes |
| ListMultipartUploads | ✅ Yes |
| ListObjects | ✅ Yes |
| ListObjectsV2 | ✅ Yes |
| ListObjectVersions | ✅ Yes |
| ListParts | ✅ Yes |
| PutBucketTagging | ✅ Yes |
| PutBucketVersioning | ✅ Yes |
| PutObject | ✅ Yes |
| PutObjectLegalHold | ✅ Yes |
| PutObjectLockConfiguration | ✅ Yes |
| PutObjectRetention | ✅ Yes |
| PutObjectTagging | ✅ Yes |
| UploadPart | ✅ Yes |
| UploadPartCopy | ✅ Yes |
| CreateBucketMetadataTableConfiguration | ❌ No |
| CreateSession | ❌ No |
| DeleteBucketAnalyticsConfiguration | ❌ No |
| DeleteBucketCors | ❌ No |
| DeleteBucketEncryption | ❌ No |
| DeleteBucketIntelligentTieringConfiguration | ❌ No |
| DeleteBucketInventoryConfiguration | ❌ No |
| DeleteBucketLifecycle | ❌ No |
| DeleteBucketMetadataTableConfiguration | ❌ No |
| DeleteBucketMetricsConfiguration | ❌ No |
| DeleteBucketOwnershipControls | ❌ No |
| DeleteBucketPolicy | ❌ No |
| DeleteBucketReplication | ❌ No |
| DeleteBucketWebsite | ❌ No |
| DeletePublicAccessBlock | ❌ No |
| GetBucketAccelerateConfiguration | ❌ No |
| GetBucketAcl | ❌ No |
| GetBucketAnalyticsConfiguration | ❌ No |
| GetBucketCors | ❌ No |
| GetBucketEncryption | ❌ No |
| GetBucketIntelligentTieringConfiguration | ❌ No |
| GetBucketInventoryConfiguration | ❌ No |
| GetBucketLifecycle | ❌ No |
| GetBucketLifecycleConfiguration | ❌ No |
| GetBucketMetadataTableConfiguration | ❌ No |
| GetBucketMetricsConfiguration | ❌ No |
| GetBucketNotification | ❌ No |
| GetBucketNotificationConfiguration | ❌ No |
| GetBucketOwnershipControls | ❌ No |
| GetBucketPolicy | ❌ No |
| GetBucketPolicyStatus | ❌ No |
| GetBucketReplication | ❌ No |
| GetBucketRequestPayment | ❌ No |
| GetBucketTagging | ❌ No |
| GetBucketWebsite | ❌ No |
| GetObjectAcl | ❌ No |
| GetObjectAttributes | ❌ No |
| GetObjectTorrent | ❌ No |
| GetPublicAccessBlock | ❌ No |
| ListBucketAnalyticsConfigurations | ❌ No |
| ListBucketIntelligentTieringConfigurations | ❌ No |
| ListBucketInventoryConfigurations | ❌ No |
| ListBucketMetricsConfigurations | ❌ No |
| ListDirectoryBuckets | ❌ No |
| PutBucketAccelerateConfiguration | ❌ No |
| PutBucketAcl | ❌ No |
| PutBucketAnalyticsConfiguration | ❌ No |
| PutBucketCors | ❌ No |
| PutBucketEncryption | ❌ No |
| PutBucketIntelligentTieringConfiguration | ❌ No |
| PutBucketInventoryConfiguration | ❌ No |
| PutBucketLifecycle | ❌ No |
| PutBucketLifecycleConfiguration | ❌ No |
| PutBucketLogging | ❌ No |
| PutBucketMetricsConfiguration | ❌ No |
| PutBucketNotification | ❌ No |
| PutBucketNotificationConfiguration | ❌ No |
| PutBucketOwnershipControls | ❌ No |
| PutBucketPolicy | ❌ No |
| PutBucketReplication | ❌ No |
| PutBucketRequestPayment | ❌ No |
| PutBucketWebsite | ❌ No |
| PutObjectAcl | ❌ No |
| PutPublicAccessBlock | ❌ No |
| RestoreObject | ❌ No |
| SelectObjectContent | ❌ No |
| WriteGetObjectResponse | ❌ No |