Cloudback Docs
HomePricingBlogContactSign In
  • Getting Started
    • What is Cloudback?
    • Installation Guide
    • First Backup Walkthrough
  • Managing Backups
    • Automated Daily Backups
    • Metadata Backups
    • One-Click Manual Backups
    • Setting Backup Schedules
    • Manage Backup Storage
    • Backup Retention Policy
    • Password-Protected Backups
    • Account Settings
    • Bulk Operations
    • Data Deduplication
    • Email Notifications
    • Instant Notifications
    • Archive Name Pattern
  • Data Restoration
    • Download Backups
    • Restore to GitHub
  • Automation
    • Terraform Provider
    • Operations API
  • Dashboard
    • Dashboard Overview
    • Card view
    • Table view
    • Repository Details
    • Backup Details and Metadata
    • Backup Status Badge
  • Storage Configuration
    • Cloudback Managed Storages
    • Customer Managed Storages
    • Replicating Backups
  • Supported Storages
    • Alibaba Cloud Object Storage Service
    • Amazon S3 Bucket via Access Key
    • Amazon S3 Bucket via Access Point
    • Amazon S3 Glacier
    • Amazon S3 Object Tagging
    • Google Cloud Storage Bucket
    • Microsoft Azure Blob Container
    • Microsoft OneDrive Business
    • Microsoft OneDrive Personal
    • OpenStack Swift
    • Wasabi Customer Managed Storage
  • Account and Billing Management
    • Payment Methods
    • GitHub Organizations
    • Invoiced Customers
  • Troubleshooting and Support
    • Known Issues
    • Contact us
  • Security Features
    • Access Review: Vanta Integration
    • Immutability: Amazon S3 Object Lock
    • Encryption: Password-Protected Archives
    • Traceability: Audit Log
  • Legal
    • Terms of Service
    • Privacy Policy
Powered by GitBook
LogoLogo

Learn more

  • Integrations
  • Blog

Explore

  • Roadmap
  • Changelog

Support

  • Contact Us
  • Status

Legal

  • Terms of Service
  • Privacy Policy

© 2025 Cloudback

On this page
  • Key Benefits of Amazon S3 Object Lock Support
  • Get Started with Amazon S3 Object Lock
  • S3 Bucket Configuration in AWS Console
  • Storage Configuration in Cloudback Dashboard
  • New Storage page
  • HTTP headers for S3 Object Lock
  • Dynamic values for headers
  • Examples of HTTP headers
  • Learn more

Was this helpful?

  1. Security Features

Immutability: Amazon S3 Object Lock

PreviousAccess Review: Vanta IntegrationNextEncryption: Password-Protected Archives

Last updated 5 months ago

Was this helpful?

is a feature provided by Amazon Web Services in their Simple Storage Service. It's designed to help you protect your data from being accidentally or intentionally deleted or overwritten. Cloudback supports S3 Object Lock feature for and allows you to enable it for your backups.

Key Benefits of Amazon S3 Object Lock Support

  • Enhanced Data Protection: With Amazon S3 Object Lock, you can implement retention policies to ensure your GitHub repository backups remain untouched during a specified period. This prevents the accidental or malicious deletion of your backups and offers greater peace of mind.

  • Compliance with Industry Regulations: For organizations that need to comply with industry-specific regulations such as HIPAA, GDPR, or SEC Rule 17a-4, Amazon S3 Object Lock offers a convenient solution to meet data retention requirements.

Get Started with Amazon S3 Object Lock

  1. Create a AWS S3 bucket with Object Lock enabled:

    1. Sign in to Amazon S3 Console

    2. Enable Object Lock for your bucket:

  2. Configure your Cloudback's storage with Object Lock:

    1. Sign in to your Cloudback account and navigate to repository card

    2. Open repository settings and click the 'New Storage' button to open the New Storage page

    3. Select Amazon S3 AccessKey storage provider and fill in Step 4 with HTTP headers

S3 Bucket Configuration in AWS Console

Before you can lock any objects, you have to configure a bucket to use S3 Object Lock. To do this, you specify when you create the bucket that you want to enable Object Lock. After you configure a bucket for Object Lock, you can lock objects in that bucket using retention periods, legal holds, or both. You can find more information in the .

Storage Configuration in Cloudback Dashboard

New Storage page

Additional HTTP headers are supported for all S3 compatible storage, such as:

  • Amazon S3 Bucket: Access Point

  • Amazon S3 Bucket: Access Key

  • OpenStack Swift Container: S3 API

  • Wasabi S3 Bucket: Access Key

The New Storage page with additional HTTP headers looks like this:

HTTP headers for S3 Object Lock

The headers are specified in the format key:value divided by a new line. For example:

x-amz-object-lock-mode: COMPLIANCE
x-amz-object-lock-retain-until-date: 2025-01-01T00:00:00Z

Below is the list of S3 Object Lock related headers:

x-amz-object-lock-mode

  • Must be COMPLIANCE (case-sensitive).

  • If you specify x-amz-object-lock-mode, you must also specify x-amz-object-lock-retain-until-date.

  • s3:PutObjectRetention permission is required to use this header.

x-amz-object-lock-retain-until-date

  • Format yyyy-MM-ddThh:mm:ssZ. The retain-until-date value must be in the format 2023-04-23T11:28:00Z. Fractional seconds are allowed, but only 3 decimal digits are preserved (milliseconds precision). Other ISO 8601 formats are not allowed.

  • The retain-until-date must be in the future.

x-amz-object-lock-legal-hold

  • Can be ON or OFF (case-sensitive). If legal hold is ON, the object is placed under a legal hold. If legal hold is OFF, no legal hold is placed. Any other value results in a 400 Bad Request (InvalidArgument) error.

  • s3:PutObjectLegalHold permission is required to use this header.

Content-MD5

  • The required Content-MD5 header is added by Cloudback automatically, no need to specify it manually.

Dynamic values for headers

Examples of HTTP headers

Retain the object for 1 month from the current date:

x-amz-object-lock-mode:COMPLIANCE
x-amz-object-lock-retain-until-date:{{ date.now | date.add_months 1 }}

Retain the object for 1 year from the current date:

x-amz-object-lock-mode:COMPLIANCE
x-amz-object-lock-retain-until-date:{{ date.now | date.add_years 1 }}

Learn more

In general, S3 object Lock parameters are specified using HTTP headers for the API call. There is an additional step in the New Storage page where you can provide additional HTTP headers for backups.

can be used.

Cloudback uses liquid templates to dynamically calculate values. The template engine is in use. It evaluates expressions inside braces {{ }}. You can see how it works in the examples given below. If you need more scripting options, you can consult the scriban documentation:

For date functions, visit

For a list of built-in functions, check

General documentation can be found

External Article:

External Article:

Amazon S3 Object Lock
customer-managed storages
Bucket configuration
official documentation
PutObject
scriban
here
this link
here
Customer Managed Storages
Using S3 Object Lock
Managing S3 Object Lock
Dynamic values for retain-until-date
HTTP headers for S3 Object Lock