Configurer Google Cloud Storage comme stockage de fichiers de Logto
Un guide pratique pour configurer Google Cloud Storage comme stockage de fichiers de Logto.
Par défaut, la Logto Console utilise une entrée de texte pour les URL de fichiers statiques, telles que les avatars. Pour activer une expérience de téléchargement de fichiers plus intuitive avec la fonctionnalité de glisser-déposer, tu dois configurer un fournisseur de stockage.
Cet article fournit un guide étape par étape pour configurer Google Cloud Storage comme ton fournisseur de stockage.
Prérequis
- Une instance Logto, soit exécutée nativement dans Node.js, soit dans un conteneur Docker. Si tu n'en as pas, consulte ce guide : https://docs.logto.io/docs/tutorials/get-started/#local
- Un projet Google Cloud
Préparation du bucket
Créer un bucket est simple. Consulte la documentation officielle de Google Cloud : https://cloud.google.com/storage/docs/creating-buckets.
Une fois le bucket prêt, l'étape suivante consiste à configurer l'accès public à la visualisation. Voici comment faire :
- Dans la console Google Cloud, accède à la page Buckets de Cloud Storage.
- Dans la liste des buckets, clique sur le nom du bucket que tu souhaites rendre public.
- Sélectionne l'onglet Permissions en haut de la page.
- Dans la section Permissions, clique sur le bouton Grant access.
- Dans le champ New principals, entre
allUsers
. - Dans le menu déroulant Select a role, tape Storage Object Viewer dans la boîte de filtrage et sélectionne Storage Object Viewer parmi les résultats filtrés.
- Clique sur Save.
- Clique sur Allow public access.
Assure-toi que le rôle "Storage Object Viewer" est attribué. Voici une capture d'écran à titre de référence:
Obtention du fichier clé
Les SDKs de Google Cloud utilisent couramment un "fichier clé". Si tu ne connais pas Google Cloud, cela pourrait être la partie la plus difficile. Voici comment l'obtenir :
- Va à la page des comptes de service : https://console.cloud.google.com/iam-admin/serviceaccounts
- Crée un compte, saisis un nom, puis continue.
- À l'étape suivante, sélectionne le rôle de "Storage Object User". Tu peux le trouver en utilisant le filtre.
- Une fois que tu as terminé de créer le compte, accède à la page de détail du compte et sélectionne l'onglet "keys".
- Clique sur "add key", sélectionne "create a new key", choisis "json" dans le dialogue, puis télécharge ton fichier json.
Ajouter le fichier clé à Logto
Logto doit avoir accès au fichier clé.
Exécution dans Node.js
Copie le fichier dans /path/to/logto/core
et renomme-le en google-storage-key.json
.
Exécution dans un conteneur Docker
Si tu exécutes Logto dans un conteneur Docker, tu devras monter le fichier dans le conteneur. En supposant que tu utilises Docker Compose, ajoute ceci à ta configuration :
N'oublie pas de remplacer /path/to
par le chemin réel.
Mise à jour des configurations du fournisseur
Nous utiliserons le CLI de Logto pour mettre à jour les configurations du fournisseur. Le CLI est généralement disponible dans le dossier racine de l'instance de Logto. Pour en savoir plus, consulte ce lien : https://docs.logto.io/docs/references/using-cli/
Préparation du JSON
Voici un exemple de configuration JSON :
N'oublie pas de remplacer projectId
et bucketName
par tes valeurs.
Mise à jour via le CLI
Convertit le JSON en une chaîne et exécute la commande suivante :
Test de la configuration
Maintenant que tout est configuré, n'oublie pas de redémarrer Logto et d'essayer. Tu peux aller dans la section "Sign-in experience" et essayer de télécharger un logo.
Si tu trouves ces étapes compliquées, envisage d'utiliser la version cloud de Logto. Nous nous occupons de tout pour toi !