[{"data":1,"prerenderedAt":120},["ShallowReactive",2],{"seo-verification":3,"marketplace-app-fr-logto":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"marketplace-app-fr-logto",{"slug":9,"slugs":10,"categorySlugs":11,"name":16,"description":17,"phase":18,"unavailableReason":19,"docsUrl":20,"logo":19,"github":19,"tagline":21,"longDescription":22,"features":23,"useCases":30,"steps":43,"faq":62,"specs":81,"compatibleOs":90,"relatedApps":92,"relatedPosts":113,"category":117},"logto",{"fr":9,"en":9,"ar":9,"es":9},{"fr":12,"en":13,"ar":14,"es":15},"cybersecurity","cybersecurity-bastion","الأمن-السيبراني-والحصن","ciberseguridad-bastion","Logto","Plateforme d'authentification open-source self-hosted : ajoutez login, inscription, MFA et gestion des utilisateurs à vos applications en quelques lignes de code — alternative Auth0\u002FClerk, MPL-2.0, ~14 k ⭐.",1,null,"https:\u002F\u002Fservorbit.com\u002Fblog\u002Fself-host-logto-vps","Authentification à intégrer dans votre application : inscription, connexion sociale, MFA et jetons OIDC signés par votre propre instance, sans coût par utilisateur.","Logto est une plateforme d'authentification open source (licence MPL-2.0, environ 14,3 k étoiles GitHub, écrite en Node.js) destinée aux développeurs qui veulent intégrer l'inscription, la connexion et la gestion des comptes directement dans leur propre produit. C'est l'équivalent auto-hébergé d'Auth0 ou de Clerk : plus d'abonnement indexé sur le nombre d'utilisateurs actifs, et aucune donnée de compte transmise à un tiers. La différence avec les autres briques d'identité du catalogue est nette : Authelia se place devant des applications existantes pour leur ajouter du MFA sans toucher à leur code, Authentik est un fournisseur d'identité complet fait pour centraliser le SSO d'un parc d'outils, tandis que Logto s'appelle depuis le code de votre application via un SDK et prend en charge le cycle de vie de vos utilisateurs finaux — inscription, connexion sociale, authentification sans mot de passe, MFA, rôles et permissions.\n\nDéployé sur un VPS ServOrbit, Logto tourne en deux conteneurs — l'application Node.js et une base PostgreSQL 17 — et signe lui-même les jetons OIDC de chaque session. La console d'administration, où vous déclarez vos applications, activez les connecteurs sociaux et consultez les journaux d'audit, n'est pas publiée sur Internet : elle est liée à `127.0.0.1:3002` et s'ouvre par un tunnel SSH. Des SDK officiels couvrent React, Next.js, Vue, Angular, React Native, Swift, Kotlin, Flutter, Python, Django, FastAPI, Go, PHP, Laravel, .NET, Java et Spring Boot ; tout framework capable de suivre une redirection OAuth 2.0 s'authentifie contre Logto même sans SDK dédié.",[24,25,26,27,28,29],"Conforme OIDC et OAuth 2.0 — Logto émet des JWT signés que n'importe quelle bibliothèque OAuth 2.0 standard sait vérifier : flux de redirection, PKCE, introspection de jeton et jetons de rafraîchissement fonctionnent sans code spécifique.","Connecteurs sociaux — activez Google, GitHub, Apple, Microsoft, Discord, Facebook et une trentaine d'autres fournisseurs depuis la console ; vos utilisateurs se connectent avec un compte existant, sans créer de mot de passe.","Authentification sans mot de passe — lien magique par e-mail ou code à usage unique par SMS, via des connecteurs Twilio, SendGrid, Mailgun ou n'importe quel serveur SMTP, sans modifier le code de l'application.","MFA par TOTP et WebAuthn — exigez un second facteur à la connexion ou avant une opération sensible : applications d'authentification (TOTP), clés matérielles (WebAuthn\u002FFIDO2) et codes de secours sont pris en charge.","Contrôle d'accès par rôles — définissez rôles et permissions dans la console, recevez-les dans la revendication `scope` du JWT et appliquez-les dans votre API avec un seul intergiciel, sans requête en base.","SDK pour plus de 20 frameworks — React, Next.js, Vue, Angular, React Native, iOS (Swift), Android (Kotlin), Flutter, Python, Django, FastAPI, Go, PHP, Laravel, .NET, Java et Spring côté officiel ; Remix, SvelteKit et Nuxt côté communauté.",[31,34,37,40],{"title":32,"body":33},"Produit SaaS avec comptes clients multi-tenants","Vous construisez un SaaS et il vous faut l'inscription, la connexion sociale et l'isolation des rôles par client — l'ensemble des fonctions attendues d'Auth0. Le SDK React s'intègre en une quinzaine de lignes, les rôles se déclarent dans la console, et vos comptes utilisateurs sont opérationnels dès la première version. Vous ne manipulez ni bibliothèque de vérification de JWT ni empreinte bcrypt.",{"title":35,"body":36},"Outil interne avec SSO et MFA imposé","Votre équipe utilise un tableau de bord Next.js et une API FastAPI séparée. Logto devient la couche d'authentification commune : le SDK Next.js gère le parcours de connexion, un intergiciel FastAPI vérifie le JWT, et la console impose le second facteur à tous les comptes. Aucun abonnement Okta n'est nécessaire.",{"title":38,"body":39},"Application mobile sans mot de passe","Votre application Flutter ou React Native vise des utilisateurs qui ne veulent pas créer de mot de passe. Les connecteurs sans mot de passe de Logto envoient un code à usage unique par SMS ou un lien magique par e-mail ; le SDK prend en charge le flux PKCE et votre backend se contente de vérifier le JWT reçu.",{"title":41,"body":42},"Authentification entre services (machine à machine)","Vos microservices doivent s'authentifier entre eux sans intervention humaine. Les applications machine à machine de Logto délivrent des jetons par identifiants client : le service appelant récupère un JWT en un appel HTTP, chaque service en aval le vérifie, et la console retrace qui a appelé quoi et quand.",[44,47,50,53,56,59],{"title":45,"body":46},"Commander un VPS ServOrbit (2 Go de RAM au minimum)","Logto fait tourner Node.js et PostgreSQL 17 côte à côte. Un VPS de 2 Go absorbe confortablement plusieurs dizaines de connexions simultanées. Toutes les données — comptes, sessions, journaux d'audit — vivent dans le volume PostgreSQL nommé `logto_db` : aucune base externe n'est à prévoir.",{"title":48,"body":49},"Choisir l'adresse d'accès définitive avant le déploiement","Logto exige une adresse d'accès, et celle-ci doit être arrêtée avant le premier démarrage : l'URL publique devient l'émetteur OIDC (`ENDPOINT`) inscrit dans chaque jeton délivré. L'installation vous la demande, entre deux cibles — un sous-domaine de l'un de vos domaines (`auth.exemple.com`), ou le sous-domaine gratuit fourni avec votre VPS (`logto.\u003Cvotre-vps>.servorbit-dns.com`) : acheter un nom de domaine n'est pas un préalable. ServOrbit pose l'enregistrement DNS quand le domaine utilise notre DNS managé — sinon l'espace client vous indique l'enregistrement exact à créer — puis le reverse-proxy nginx et le certificat TLS, renouvelé automatiquement.",{"title":51,"body":52},"Ce que sert l'adresse choisie — et ce qu'elle ne sert pas","L'adresse retenue à l'étape précédente devient l'émetteur OIDC de Logto : c'est elle que vos applications et vos utilisateurs atteignent, en HTTPS et sans numéro de port. Elle ne dessert PAS la console d'administration — celle-ci vit sur un second port, que le reverse-proxy ne publie volontairement pas, et s'ouvre par un tunnel SSH (voir plus bas).",{"title":54,"body":55},"Déployer depuis le Marketplace","Dans votre espace client ServOrbit : Marketplace → Sécurité → Logto → Déployer. Les deux conteneurs (Logto et PostgreSQL 17) démarrent en une trentaine de secondes, la base est initialisée automatiquement et l'émetteur OIDC est réglé sur le domaine que vous avez choisi.",{"title":57,"body":58},"Ouvrir la console d'administration par tunnel SSH","La console d'administration vit sur le port 3002, lié à `127.0.0.1` : le reverse-proxy ne sert que le point d'entrée public, donc la console reste hors d'Internet même une fois votre adresse d'accès attachée. Ouvrez un tunnel avec `ssh -L 3002:127.0.0.1:3002 root@\u003Cip-de-votre-vps>` puis rendez-vous sur http:\u002F\u002Flocalhost:3002\u002Fconsole. L'assistant de premier démarrage vous demande l'adresse e-mail et le mot de passe du compte administrateur, puis ouvre le tableau de bord.",{"title":60,"body":61},"Déclarer votre application et intégrer le SDK","Dans la console, créez une Application en choisissant son type (SPA, native, backend ou machine à machine) : vous obtenez un identifiant client et l'URL de votre point d'entrée OIDC. Installez le SDK correspondant (`@logto\u002Freact`, `logto-python`…), renseignez ces deux valeurs et protégez vos routes avec le garde fourni. Vos utilisateurs sont redirigés vers votre page de connexion Logto et reviennent avec une identité vérifiée.",[63,66,69,72,75,78],{"q":64,"a":65},"Quelle différence avec Authelia et Authentik, déjà présents au catalogue ?","Authelia ajoute MFA et SSO devant des applications existantes par forward auth : elle protège des outils qui n'ont parfois aucune authentification, sans modifier leur code. Authentik est un fournisseur d'identité complet, fait pour centraliser le SSO de votre parc auto-hébergé (Grafana, Gitea, Nextcloud). Logto répond à un autre besoin : c'est une plateforme d'authentification que vous intégrez dans le code de votre propre application pour y construire inscription, connexion sociale et MFA — exactement le rôle d'Auth0 ou de Clerk.",{"q":67,"a":68},"Pourquoi la console d'administration est-elle sur le port 3002 et non sur le domaine public ?","Exposer la console sur Internet est un risque : quiconque en trouve l'URL peut tenter d'atteindre votre base d'utilisateurs et la configuration de vos applications. Elle est donc liée à `127.0.0.1:3002`, ce qui la réserve aux personnes disposant d'un accès SSH au VPS. Ouvrez `ssh -L 3002:127.0.0.1:3002 root@\u003Cip>` puis http:\u002F\u002Flocalhost:3002\u002Fconsole dans votre navigateur. Ce tunnel ne dit rien de l'absence de domaine : le point d'entrée public de Logto, lui, est bien servi en HTTPS à l'adresse choisie à l'installation — c'est la console, et elle seule, qui reste sur la boucle locale.",{"q":70,"a":71},"Puis-je changer de domaine après le premier déploiement ?","Pas sans repartir de zéro. L'URL de l'émetteur OIDC (`ENDPOINT`) est inscrite dans chaque jeton délivré par Logto : en changeant de domaine, vous invalidez les jetons existants, les configurations clientes et les URI de redirection. Arrêtez votre domaine définitif avant le premier déploiement. S'il faut vraiment en changer, il faut supprimer le volume `logto_db`, redéployer avec le nouveau domaine et reconfigurer toutes vos applications.",{"q":73,"a":74},"Quels langages et frameworks sont couverts ?","Logto publie des SDK officiels pour React, Next.js, Vue, Angular, React Native, iOS (Swift), Android (Kotlin), Flutter, Python, Django, FastAPI, Go, PHP, Laravel, .NET, Java et Spring Boot. Tout framework capable d'effectuer des redirections HTTP OAuth 2.0 fonctionne même sans SDK dédié : le document de découverte OIDC exposé sur \u002F.well-known\u002Fopenid-configuration liste l'ensemble des points d'entrée.",{"q":76,"a":77},"La connexion via Google ou GitHub est-elle possible ?","Oui. Dans la console, ouvrez Connectors → Social connectors et activez les fournisseurs voulus : Google, GitHub, Apple, Microsoft, Discord, Facebook, LinkedIn et une trentaine d'autres. Chaque connecteur réclame un identifiant et un secret d'application OAuth à créer chez le fournisseur — environ cinq minutes de configuration de son côté. Les boutons correspondants apparaissent ensuite d'eux-mêmes sur votre page de connexion.",{"q":79,"a":80},"Comment sauvegarder une instance Logto ?","Tout l'état utile — comptes, sessions, connecteurs, applications déclarées et journaux d'audit — est stocké dans la base PostgreSQL 17 du volume `logto_db`. Un `pg_dump` régulier de cette base, conservé hors du VPS, constitue une sauvegarde restaurable. Notez aussi la valeur de `SECRET_VAULT_KEK` générée au déploiement : elle protège les secrets stockés par l'instance et doit accompagner la sauvegarde.",{"ram":82,"cpu":83,"disk":84,"stack":85,"port":89},"2 Go","1 vCPU","10 Go",[86,87,88],"Docker","Node.js","PostgreSQL 17","3001",[91],"ubuntu-24.04",[93,101,107],{"name":94,"slug":95,"categorySlug":12,"categoryName":96,"categoryColor":97,"logo":98,"tagline":99,"description":100},"Bastion Host","bastion-host","Cybersecurity & Bastion","text-red-400 bg-red-500\u002F10","\u002Fbrand\u002Flogo\u002Fservorbit-m.svg","Point d'entrée SSH sécurisé et durci vers vos infrastructures, avec audit centralisé.","Point d'entrée sécurisé vers vos infrastructures. SSH Jump Host configuré et durci, avec logs d'audit centralisés.",{"name":102,"slug":103,"categorySlug":12,"categoryName":96,"categoryColor":97,"logo":104,"tagline":105,"description":106},"CrowdSec","crowdsec","https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fselfhst\u002Ficons\u002Fsvg\u002Fcrowdsec.svg","Protection collaborative contre les attaques — détection comportementale et threat intelligence partagée.","Protection collaborative contre les attaques. Détection comportementale et partage de threat intelligence avec la communauté.",{"name":108,"slug":109,"categorySlug":12,"categoryName":96,"categoryColor":97,"logo":110,"tagline":111,"description":112},"Fail2Ban Enhanced","fail2ban-enhanced","https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fselfhst\u002Ficons\u002Fpng\u002Ffail2ban.png","Blocage automatique des intrusions — configuration durcie pour la production, prête à l'emploi.","Blocage automatique des tentatives d'intrusion avec configuration optimisée pour la production et alertes en temps réel.",[114,115,116],"self-host-logto-vps","heberger-bastion-host-vps","securiser-vps-crowdsec",{"key":118,"slug":12,"name":96,"objective":119,"icon":118,"color":97},"security","Renforcer la sécurité des infrastructures.",1793820295872]