Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Conditional Writes in OVHcloud Object Storage to Prevent Overwrites #671

Open
mmiglier opened this issue Dec 13, 2024 · 4 comments

Comments

@mmiglier
Copy link

Description:

As an OVHcloud customer using Object Storage,
I want support for conditional writes (e.g., using the If-None-Match header) to prevent overwriting existing objects,
so that I can ensure data integrity and enforce immutability in workflows.


Use Case:

Attempting a conditional write currently results in the error:
An error occurred (NotImplemented) when calling the PutObject operation: Conditional object PUTs are not supported.

This feature would simplify enforcing non-overwrite policies directly in OVHcloud Object Storage, without relying on external application checks.


Proposal:

Enable conditional writes via the If-None-Match header and allow enforcement through IAM policies.


Benefits:

  • Ensures data integrity by preventing accidental overwrites.
  • Reduces complexity by eliminating the need for application-layer checks.
  • Aligns with industry standards and S3-compatible workflows.

This issue aligns with common data governance and compliance needs.

@lason-ovh
Copy link
Collaborator

lason-ovh commented Dec 16, 2024

Hi @mmiglier ! Thanks, for the request. We will gladly look into it.

However, please note that we also have the Versioning and Object lock feature that help prevent accidental deletes and overwrites:
https://help.ovhcloud.com/csm/en-ie-public-cloud-storage-s3-versioning?id=kb_article_view&sysparm_article=KB0063858
https://help.ovhcloud.com/csm/en-ie-public-cloud-storage-s3-managing-object-lock?id=kb_article_view&sysparm_article=KB0047398

Are these features not enough to answer your need?

@mmiglier
Copy link
Author

Yes, actually, object locking should be enough for my use case thanks

@olivierboudet
Copy link

Conditional Writes is nedded to support new terraform state locking if we want to store state in ovh bucket.

@Libr4rian
Copy link

It looks like I'm having the same problem trying to use an s3 bucket as a terraform backend with use_lockfile set to true.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Acknowledged
Development

No branches or pull requests

5 participants