Moteur de stockage : S3 (Pro)
File storage: S3(Pro)Professional Edition+Introduction
S'appuyant sur le plugin de gestion de fichiers, ce plugin ajoute la prise en charge de types de stockage de fichiers compatibles avec le protocole S3. Tout service de stockage d'objets compatible avec le protocole S3 peut être facilement intégré, comme Amazon S3, Aliyun OSS, Tencent COS, MinIO, Cloudflare R2, etc., ce qui améliore encore la compatibilité et la flexibilité des services de stockage.
Fonctionnalités
-
Téléchargement côté client : Le processus de téléchargement des fichiers ne passe pas par le serveur NocoBase, mais se connecte directement au service de stockage de fichiers, offrant ainsi une expérience de téléchargement plus efficace et plus rapide.
-
Accès privé : Des URL signées avec expiration sont utilisées par défaut. Des URL non signées peuvent aussi être générées pour les buckets publics.
Cas d'utilisation
-
Gestion des collections de fichiers : Gérez et stockez de manière centralisée tous les fichiers téléchargés, en prenant en charge divers types de fichiers et méthodes de stockage pour faciliter leur classification et leur récupération.
-
Stockage des champs de pièces jointes : Utilisé pour le stockage des données de pièces jointes téléchargées dans des formulaires ou des enregistrements, prenant en charge l'association avec des enregistrements de données spécifiques.
Configuration du plugin
-
Activez le plugin
plugin-file-storage-s3-pro. -
Cliquez sur "Paramètres -> Gestionnaire de fichiers" pour accéder aux réglages du gestionnaire de fichiers.
-
Cliquez sur le bouton "Ajouter un nouveau" et sélectionnez "S3 Pro".

- Une fois la fenêtre contextuelle affichée, vous verrez un formulaire avec de nombreux champs à remplir. Vous pouvez vous référer à la documentation suivante pour obtenir les informations sur les paramètres pertinents pour le service de fichiers correspondant et les renseigner correctement dans le formulaire.

Configuration des URL
En plus des options communes « URL NocoBase », « URL d’origine » et « Autoriser l’accès public » du gestionnaire de fichiers, S3 Pro permet de configurer séparément les formats des URL de téléversement et d’accès, ainsi que l’utilisation des URL signées. Consultez la présentation des moteurs de stockage pour les options communes.
Ces options contrôlent différentes étapes :
- « URL NocoBase / URL d’origine » détermine l’adresse renvoyée par l’enregistrement du fichier
- « Autoriser l’accès public » détermine si les autorisations de consultation sont vérifiées lors de l’accès à une URL NocoBase
- « Ne pas utiliser d’URL signée » détermine si le stockage objet vérifie la signature de l’URL
Ces réglages peuvent être combin és indépendamment. Par défaut, il est recommandé d’utiliser l’URL NocoBase, de ne pas cocher « Autoriser l’accès public » et de conserver les URL signées.

Comment choisir
Format de l’URL de téléversement
« Format de l’URL de téléversement » contrôle l’URL S3 utilisée par le client pour téléverser les fichiers. Sélectionnez le format pris en charge par votre service de stockage. Le formulaire affiche un exemple basé sur l’Endpoint, le Bucket et le chemin actuels :
- « Bucket as subdomain » :
https://bucket-name.s3.example.com/path/to/object - « Bucket as subpath » :
https://s3.example.com/bucket-name/path/to/object - « Ignore bucket » :
https://upload.example.com/path/to/object
Format de l’URL d’accès
« Format de l’URL d’accès » détermine si le Bucket apparaît dans le domaine, dans le chemin ou pas du tout lorsque S3 Pro génère une adresse d’accès. Les trois formats sont identiques à ceux de l’URL de téléversement, mais peuvent être configurés séparément—par exemple, le téléversement peut utiliser un Endpoint S3 tandis que l’accès utilise un domaine CDN sans Bucket.
Cette option affecte les URL d’origine et l’adresse de stockage vers laquelle une URL NocoBase redirige finalement, mais ne change pas le format de l’URL NocoBase elle-même.
Ne pas utiliser d’URL signée
S3 Pro utilise des URL signées par défaut. Une URL d’origine générée contient des paramètres de signature, par exemple :
L’URL signée reste valide pendant la durée configurée dans « Access URL expiration », et le bucket peut rester privé. Avec une URL NocoBase, NocoBase génère une adresse signée ou redirige vers celle-ci après validation des autorisations.
Lorsque « Ne pas utiliser d’URL signée » est coché, S3 Pro génère une adresse sans paramètres de signature. Le bucket et les objets téléversés doivent alors autoriser la lecture publique, et « Access URL expiration » ne s’applique plus.
« Ne pas utiliser d’URL signée » contrôle uniquement la vérification de la signature par le service de stockage et ne modifie pas les autorisations NocoBase. Si l’URL NocoBase est sélectionnée et « Autoriser l’accès public » n’est pas coché, la requête doit toujours passer d’abord le contrôle d’autorisation NocoBase.
Configuration du fournisseur de services
Amazon S3
Création du bucket
-
Ouvrez https://ap-southeast-1.console.aws.amazon.com/s3/home pour accéder à la console S3.
-
Cliquez sur le bouton "Create bucket" (Créer un bucket) à droite.

- Renseignez le nom du bucket (Bucket Name). Les autres champs peuvent être laissés avec leurs paramètres par défaut. Faites défiler la page jusqu'en bas et cliquez sur le bouton "Create" (Créer) pour finaliser la création.


Configuration CORS
- Accédez à la liste des buckets, trouvez et cliquez sur le bucket que vous venez de créer pour accéder à sa page de détails.

- Cliquez sur l'onglet "Permissions", puis faites défiler vers le bas pour trouver la section de configuration CORS.


- Saisissez la configuration suivante (vous pouvez la personnaliser davantage) et enregistrez.

Obtention de l'AccessKey et du SecretAccessKey
- Cliquez sur le bouton "Security credentials" (Identifiants de sécurité) dans le coin supérieur droit de la page.

- Faites défiler vers le bas jusqu'à la section "Access Keys" (Clés d'accès) et cliquez sur le bouton "Create Access Key" (Créer une clé d'accès).

- Cliquez pour accepter (ceci est une démonstration avec le compte root ; il est recommandé d'utiliser IAM dans un environnement de production).

- Enregistrez l'Access key et le Secret access key affichés sur la page.

Obtention et configuration des paramètres
-
L'AccessKey ID et le SecretAccessKey sont les valeurs que vous avez obtenues à l'étape précédente. Veuillez les renseigner avec précision.
-
Accédez au panneau des propriétés de la page de détails du bucket, où vous pourrez obtenir le nom du bucket et les informations sur la région (Region).

Accès public non signé (facultatif)
Configurez cette option uniquement si vous avez besoin d’URL non signées, car le bucket et les objets téléversés doivent autoriser la lecture publique. Si vous souhaitez seulement partager une URL NocoBase publique, cochez « Autoriser l’accès public » et conservez les URL signées ; le bucket n’a pas besoin d’être public.
- Accédez au panneau Permissions, faites défiler jusqu'à Object Ownership, cliquez sur modifier, et activez les ACLs.

- Faites défiler jusqu'à Block public access, cliquez sur modifier, et configurez-le pour autoriser le contrôle des ACLs.

- Cochez « Ne pas utiliser d’URL signée » dans NocoBase.
Configuration des miniatures (facultatif)
Cette configuration est facultative et est utilisée pour optimiser la taille ou les effets de prévisualisation des images. Veuillez noter que cette solution de déploiement peut entraîner des coûts supplémentaires. Pour connaître les frais spécifiques, veuillez vous référer aux conditions générales d'AWS.
-
Cliquez sur le bouton
Launch in the AWS Console(Lancer dans la console AWS) en bas de la page pour commencer le déploiement de la solution.
-
Suivez les invites pour compléter la configuration. Portez une attention particulière aux options suivantes :
- Lors de la création de la pile, vous devez spécifier le nom d'un bucket Amazon S3 contenant les images sources. Veuillez saisir le nom du bucket que vous avez créé précédemment.
- Si vous choisissez de déployer l'interface utilisateur de démonstration, vous pourrez tester les fonctionnalités de traitement d'image via cette interface après le déploiement. Dans la console AWS CloudFormation, sélectionnez votre pile, accédez à l'onglet "Outputs" (Sorties), trouvez la valeur correspondant à la clé DemoUrl, et cliquez sur le lien pour ouvrir l'interface de démonstration.
- Cette solution utilise la bibliothèque Node.js
sharppour un traitement efficace des images. Vous pouvez télécharger le code source depuis le dépôt GitHub et le personnaliser selon vos besoins.

-
Une fois la configuration terminée, attendez que le statut de déploiement passe à
CREATE_COMPLETE. -
Dans la configuration NocoBase, voici quelques points à noter :
Thumbnail rule(Règle des miniatures) : Renseignez les paramètres liés au traitement d'image, par exemple?width=100. Pour plus de détails, consultez la documentation AWS.Access endpoint(Point d'accès) : Renseignez la valeur de Outputs -> ApiEndpoint après le déploiement.- « Format de l’URL d’accès » : sélectionnez « Ignore bucket », car le nom du bucket est déjà inclus dans la configuration et n’est pas nécessaire dans l’URL d’accès.

Exemple de configuration

Aliyun OSS
Création du bucket
- Ouvrez la console OSS https://oss.console.aliyun.com/overview

- Cliquez sur "Buckets" dans le menu de gauche, puis sur le bouton "Create Bucket" (Créer un bucket) pour commencer la création d'un bucket.

-
Renseignez les informations relatives au bucket et cliquez enfin sur le bouton "Create" (Créer).
-
Le nom du bucket (Bucket Name) doit correspondre à vos besoins métier ; le nom peut être arbitraire.
-
Choisissez la région (Region) la plus proche de vos utilisateurs.
-
Les autres paramètres peuvent être laissés par défaut ou configurés selon vos besoins.
-

Configuration CORS
- Accédez à la page de détails du bucket créé à l'étape précédente.

- Cliquez sur "Content Security -> CORS" dans le menu central.

- Cliquez sur le bouton "Create Rule" (Créer une règle), remplissez le contenu pertinent, faites défiler vers le bas et cliquez sur "OK". Vous pouvez vous référer à la capture d'écran ci-dessous ou configurer des paramètres plus détaillés.

Obtention de l'AccessKey et du SecretAccessKey
- Cliquez sur "AccessKey" sous votre photo de profil dans le coin supérieur droit.

-
À des fins de démonstration, nous créons une AccessKey en utilisant le compte principal. Dans un environnement de production, il est recommandé d'utiliser RAM pour la créer. Vous pouvez vous référer à https://www.alibabacloud.com/help/en/ram/user-guide/create-an-accesskey-pair.
-
Cliquez sur le bouton "Create AccessKey" (Créer une clé d'accès).

- Effectuez la vérification du compte.

- Enregistrez l'Access key et le Secret access key affichés sur la page.

Obtention et configuration des paramètres
-
L'AccessKey ID et le SecretAccessKey sont les valeurs obtenues à l'étape précédente.
-
Accédez à la page de détails du bucket pour obtenir le nom du bucket.

- Faites défiler vers le bas pour obtenir la région (Region) (le suffixe ".aliyuncs.com" n'est pas nécessaire).

- Obtenez l'adresse du point d'accès (endpoint) et ajoutez le préfixe https:// lorsque vous la renseignez dans NocoBase.

Configuration des miniatures (facultatif)
Cette configuration est facultative et ne doit être utilisée que lorsque vous avez besoin d'optimiser la taille ou les effets de prévisualisation des images.
-
Renseignez les paramètres liés à la
Thumbnail rule(règle des miniatures). Pour les réglages spécifiques des paramètres, consultez les paramètres de traitement d'image. -
« Format de l’URL de téléversement » et « Format de l’URL d’accès » peuvent utiliser le même réglage.
Exemple de configuration

MinIO
Création du bucket
- Cliquez sur le menu "Buckets" à gauche -> cliquez sur "Create Bucket" (Créer un bucket) pour accéder à la page de création.
- Après avoir renseigné le nom du bucket, cliquez sur le bouton "Enregistrer".
Obtention de l'AccessKey et du SecretAccessKey
- Accédez à "Access Keys" (Clés d'accès) -> cliquez sur le bouton "Create access key" (Créer une clé d'accès) pour accéder à la page de création.

- Cliquez sur le bouton "Enregistrer".

- Enregistrez l'Access Key et le Secret Key de la fenêtre contextuelle pour une utilisation ultérieure dans la configuration.

Configuration des paramètres
-
Accédez à la page NocoBase -> Gestionnaire de fichiers.
-
Cliquez sur le bouton "Ajouter un nouveau" et sélectionnez "S3 Pro".
-
Remplissez le formulaire :
- AccessKey ID et AccessKey Secret sont les valeurs enregistrées à l'étape précédente.
- Region : Une instance MinIO auto-hébergée n'a pas de concept de région, vous pouvez donc la configurer sur "auto".
- Endpoint : Renseignez le nom de domaine ou l'adresse IP de votre déploiement.
- Définissez « Format de l’URL d’accès » sur « Bucket as subpath ».
Exemple de configuration

Tencent COS
Vous pouvez vous référer à la configuration des services de fichiers mentionnés ci-dessus, la logique étant similaire.
Exemple de configuration

Cloudflare R2
Vous pouvez vous référer à la configuration des services de fichiers mentionnés ci-dessus, la logique étant similaire.
Exemple de configuration


