Skip to content

Commit 324eb54

Browse files
authored
Merge pull request #8710 from ovh/feat-s3-share-externally
Feat s3 share externally
2 parents 1ab7113 + ebba5cf commit 324eb54

File tree

4 files changed

+195
-1
lines changed

4 files changed

+195
-1
lines changed

pages/index.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -833,6 +833,7 @@
833833
+ [Object Storage - Use Object Storage with Cohesity NetBackup](storage_and_backup/object_storage/s3_cohesity_netbackup)
834834
+ [Object Storage - Use Object Storage with Pure Storage Flashblade](storage_and_backup/object_storage/s3_pure_storage_flashblade)
835835
+ [Object Storage - Manage an Object Storage bucket with Terraform](storage_and_backup/object_storage/s3_terraform)
836+
+ [Object Storage – How to share an object or file externally](storage_and_backup/object_storage/s3_share_object_externally)
836837
+ [Security](products/public-cloud-storage-object-storage-s3-security)
837838
+ [Object Storage - Encrypt your server-side objects with SSE-C](storage_and_backup/object_storage/s3_encrypt_your_objects_with_sse_c)
838839
+ [Object Storage - Managing object immutability with Object Lock (WORM)](storage_and_backup/object_storage/s3_managing_object_lock)
@@ -2093,6 +2094,7 @@
20932094
+ [Object Storage - Use Object Storage with Cohesity NetBackup](storage_and_backup/object_storage/s3_cohesity_netbackup)
20942095
+ [Object Storage - Use Object Storage with Pure Storage Flashblade](storage_and_backup/object_storage/s3_pure_storage_flashblade)
20952096
+ [Object Storage - Manage an Object Storage bucket with Terraform](storage_and_backup/object_storage/s3_terraform)
2097+
+ [Object Storage – How to share an object or file externally](storage_and_backup/object_storage/s3_share_object_externally)
20962098
+ [Security](products/storage-object-storage-s3-security)
20972099
+ [Object Storage - Encrypt your server-side objects with SSE-C](storage_and_backup/object_storage/s3_encrypt_your_objects_with_sse_c)
20982100
+ [Object Storage - Managing object immutability with Object Lock (WORM)](storage_and_backup/object_storage/s3_managing_object_lock)
@@ -2532,4 +2534,4 @@
25322534
+ [Install a real-time presentation slide platform on your POWER web hosting plan](ovhcloud_labs/power_web_hosting/nodejs-install-slideshow)
25332535
+ [Python](ovhcloud-labs-power-web-hosting-python)
25342536
+ [Install Django on your POWER web hosting plan](ovhcloud_labs/power_web_hosting/python-install-django)
2535-
+ [Install Flask on your POWER web hosting plan](ovhcloud_labs/power_web_hosting/python-install-flask)
2537+
+ [Install Flask on your POWER web hosting plan](ovhcloud_labs/power_web_hosting/python-install-flask)
Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
---
2+
title: Object Storage – How to share an object or file externally
3+
excerpt: Learn how to securely share Object Storage files externally in OVHcloud, using presigned URLs, public-read objects, or bucket policies for controlled access
4+
updated: 2025-12-19
5+
---
6+
7+
## Objective
8+
9+
This guide explains how to securely share files or objects stored in OVHcloud Object Storage with external users, covering temporary access, public-read objects, and bucket policies, while highlighting URL types and best practices.
10+
11+
### Use case scenarios
12+
13+
Usual use case scenarios for sharing objects in OVHcloud Object Storage include:
14+
15+
- You want to provide a temporary download link to a partner or client without giving full bucket access.
16+
- You need to make specific objects public, such as images or product documents, while keeping the rest of the bucket private.
17+
- You want to grant controlled access to certain files for collaborators or external users.
18+
19+
## Comparison of URL Types
20+
21+
When sharing objects in OVHcloud Object Storage, understanding the difference between **path-style** and **virtual-hosted-style** URLs is important.
22+
23+
| Feature | Path-style URL | Virtual-hosted-style URL |
24+
| -------------------- | ----------------------------------------------------------------------------- | ------------------------------------------------------------ |
25+
| Format | `https://s3.<region>.io.cloud.ovh.net/<bucket>/<object-key>/<generated-code>` | `https://<bucket>.s3.<region>.io.cloud.ovh.net/<object-key>` |
26+
| Typical use | Presigned URLs generated via API | URLs from the Control Panel or public objects |
27+
| Bucket Name Location | In the URL path | In the subdomain |
28+
| Best For | Temporary or programmatic access | Public sharing or stable links |
29+
| Access Control | Limited by presigned URL expiration | Controlled by ACLs or bucket policies |
30+
31+
**Key Takeaways:**
32+
33+
- Use path-style URLs for temporary, API-generated access.
34+
- Use virtual-hosted-style URLs for public or long-term sharing, as they are more standard and easier to manage.
35+
36+
## Requirements
37+
38+
- A bucket
39+
- A user with the required access rights on the bucket
40+
41+
See our [Getting started with Object Storage](/pages/storage_and_backup/object_storage/s3_getting_started_with_object_storage) guide.
42+
43+
## Instructions
44+
45+
OVHcloud Object Storage offers three main ways to share objects externally. Choose the method depending on whether you need temporary access, public access, or controlled sharing.
46+
47+
> [!tabs]
48+
> Via Presigned URLs
49+
>> Presigned URLs provide temporary access to a private object without changing bucket permissions.
50+
>>
51+
>> Steps:
52+
>>
53+
>> - Generate a presigned URL using the OVHcloud API or an S3-compatible SDK.
54+
>> - Set an expiration time.
55+
>> - Share the URL with the external user.
56+
>>
57+
>> Example (AWS CLI compatible):
58+
>>
59+
>> ```bash
60+
>> aws s3 presign s3://my-bucket/reports/data.csv --expires-in 3600 \
61+
>> --endpoint-url https://s3.gra.io.cloud.ovh.net
62+
>> ```
63+
>>
64+
>> This command returns a temporary link valid for 1 hour.
65+
>>
66+
>> After expiration, access is automatically blocked and the object remains private.
67+
>>
68+
> Via Public Objects
69+
>> Specific objects can be publicly accessible by applying a public-read ACL. Only those objects become public; the bucket and its listing stay private.
70+
>>
71+
>> Steps:
72+
>>
73+
>> - Select the object via API.
74+
>> - Apply the public-read ACL.
75+
>> - Share the object's URL.
76+
>>
77+
>> Example (AWS CLI compatible):
78+
>>
79+
>> ```bash
80+
>> aws s3api put-object-acl \
81+
>> --bucket my-bucket \
82+
>> --key docs/manual.pdf \
83+
>> --acl public-read \
84+
>> --endpoint-url https://s3.gra.io.cloud.ovh.net
85+
>> ```
86+
>>
87+
>> The object becomes accessible at: `https://my-bucket.s3.gra.io.cloud.ovh.net/docs/manual.pdf`
88+
>>
89+
90+
## Go further
91+
92+
If you need training or technical assistance to implement our solutions, contact your sales representative or click on [this link](/links/professional-services) to get a quote and ask our Professional Services experts for assisting you on your specific use case of your project.
93+
94+
Join our [community of users](/links/community).
95+
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
---
2+
title: Object Storage – Comment partager un objet ou fichier en externe
3+
excerpt: Découvrez comment partager en toute sécurité des fichiers Object Storage en externe dans OVHcloud, en utilisant des URLs signées, des objets public-read ou des politiques de bucket pour un accès contrôlé
4+
updated: 2025-12-19
5+
---
6+
7+
## Objectif
8+
9+
Ce guide explique comment partager en toute sécurité des fichiers ou objets stockés dans l'Object Storage OVHcloud avec des utilisateurs externes, couvrant l'accès temporaire, les objets public-read et les politiques de bucket, tout en mettant en évidence les types d'URL et les bonnes pratiques.
10+
11+
### Scénarios d'utilisation
12+
13+
Les scénarios d'utilisation courants de partage d'objets dans l'Object Storage OVHcloud sont :
14+
15+
- Vous souhaitez fournir un lien de téléchargement temporaire à un partenaire ou client sans accorder un accès complet au bucket.
16+
- Vous avez besoin de rendre certains objets publics, tels que des images ou des documents de produits, tout en gardant le reste du bucket privé.
17+
- Vous souhaitez accorder un accès contrôlé à certains fichiers pour des collaborateurs ou utilisateurs externes.
18+
19+
## Comparaison des types d'URL
20+
21+
Lorsque vous partagez des objets dans l'Object Storage OVHcloud, il est important de comprendre la différence entre les **URL Path-style** et les **URL Virtual-hosted-style**.
22+
23+
| Fonctionnalité | URL Path-style | URL Virtual-hosted-style |
24+
| -------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------ |
25+
| Format | `https://s3.<region>.io.cloud.ovh.net/<bucket>/<object-key>/<generated-code>` | `https://<bucket>.s3.<region>.io.cloud.ovh.net/<object-key>` |
26+
| Utilisation typique | URLs signées générées via l'API | URLs provenant du panneau de configuration ou des objets publics |
27+
| Emplacement du nom de bucket | Dans le chemin de l'URL | Dans le sous-domaine |
28+
| Adapté pour | Accès temporaire ou programmation | Partage public ou liens stables |
29+
| Contrôle d'accès | Limité par l'expiration de l'URL signée | Contrôlé par les ACL ou les politiques de bucket |
30+
31+
**Points clés :**
32+
33+
- Utilisez les URL Path-style pour un accès temporaire ou programmé.
34+
- Utilisez les URL Virtual-hosted-style pour le partage public ou à long terme, car elles sont plus standardisées et plus faciles à gérer.
35+
36+
## Prérequis
37+
38+
- Un bucket
39+
- Un utilisateur avec les droits d'accès requis définis sur le bucket
40+
41+
Consultez notre guide [Object Storage - Premiers pas avec Object Storage](/pages/storage_and_backup/object_storage/s3_getting_started_with_object_storage).
42+
43+
## En pratique
44+
45+
L'Object Storage OVHcloud propose trois méthodes principales pour partager des objets en externe. Choisissez la méthode en fonction de vos besoins : accès temporaire, accès public ou partage contrôlé.
46+
47+
> [!tabs]
48+
> Via des URLs signées
49+
>> Les URLs signées offrent un accès temporaire à un objet privé sans modifier les permissions du bucket.
50+
>>
51+
>> Étapes :
52+
>>
53+
>> - Générez une URL signée via l'API OVHcloud ou un SDK compatible S3.
54+
>> - Définissez une date d'expiration.
55+
>> - Partagez l'URL avec l'utilisateur externe.
56+
>>
57+
>> Exemple (compatible AWS CLI) :
58+
>>
59+
>> ```bash
60+
>> aws s3 presign s3://my-bucket/reports/data.csv --expires-in 3600 \
61+
>> --endpoint-url https://s3.gra.io.cloud.ovh.net
62+
>> ```
63+
>>
64+
>> Cette commande retourne un lien temporaire valide pendant 1 heure.
65+
>>
66+
>> Après l'expiration, l'accès est automatiquement bloqué et l'objet reste privé.
67+
>>
68+
> Via des objets publics
69+
>> Des objets spécifiques peuvent être rendus publics en appliquant une ACL public-read. Seuls ces objets deviennent publics. le bucket et sa liste restent privés.
70+
>>
71+
>> Étapes :
72+
>>
73+
>> - Sélectionnez l'objet via l'API.
74+
>> - Appliquez l'ACL public-read.
75+
>> - Partagez l'URL de l'objet.
76+
>>
77+
>> Exemple (compatible AWS CLI) :
78+
>>
79+
>> ```bash
80+
>> aws s3api put-object-acl \
81+
>> --bucket my-bucket \
82+
>> --key docs/manual.pdf \
83+
>> --acl public-read \
84+
>> --endpoint-url https://s3.gra.io.cloud.ovh.net
85+
>> ```
86+
>>
87+
>> L'objet devient accessible à l'adresse : `https://my-bucket.s3.gra.io.cloud.ovh.net/docs/manual.pdf`
88+
>>
89+
90+
## Aller plus loin
91+
92+
Si vous avez besoin d'une formation ou d'une assistance technique pour la mise en oeuvre de nos solutions, contactez votre commercial ou cliquez sur [ce lien](/links/professional-services) pour obtenir un devis et demander une analyse personnalisée de votre projet à nos experts de l’équipe Professional Services.
93+
94+
Échangez avec notre [communauté d'utilisateurs](/links/community).
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
id: c63001f8-fe0d-4700-b7b2-ea197f254365
2+
full_slug: public-cloud-storage-s3-share-object-externally
3+
reference_category: public-cloud-storage-object-storage-s3-tutorials

0 commit comments

Comments
 (0)