Sommaire
Pour simplifier le parcours client et éviter les abandons à la connexion, le plugin Social login pour Sylius permet aux utilisateurs de s’identifier via des fournisseurs OAuth connus, tout en gardant une configuration exploitable par les équipes projet depuis le Back Office.
Le besoin : une connexion rapide, mais maîtrisable
Ajouter un bouton « Se connecter avec Google » ou « Se connecter avec Facebook » peut sembler simple au départ. En pratique, l’intégration devient vite plus sensible :
- chaque fournisseur OAuth a ses propres URLs de callback, scopes et options ;
- les identifiants clients et secrets doivent rester sécurisés ;
- une boutique Sylius peut avoir plusieurs channels avec des besoins différents ;
- les équipes métier doivent parfois activer, désactiver ou renommer un bouton sans redéployer l’application ;
- les erreurs OAuth doivent ramener l’utilisateur vers un parcours compréhensible.
Le plugin a été conçu pour traiter ces sujets comme des sujets de production, pas comme une simple couche de boutons dans un template.
Ce que fait le plugin
Le plugin Social login pour Sylius permet de configurer plusieurs fournisseurs OAuth depuis le Back Office Sylius :
- Google ;
- Apple ;
- Facebook ;
- GitHub ;
- Microsoft ;
- LinkedIn.
Chaque fournisseur peut être activé ou désactivé, associé à un ou plusieurs channels, ordonné dans l’affichage front, et traduit via un libellé par locale.
Côté boutique, les boutons de connexion apparaissent sur les pages de login et d’inscription uniquement lorsque le fournisseur est activé pour le channel courant. Cela évite d’exposer un bouton non configuré, ou un fournisseur réservé à un autre contexte commercial.

Une configuration OAuth pilotée depuis le Back Office
Le point important du plugin est son approche de configuration runtime.
Dans beaucoup d’intégrations OAuth, les credentials sont posés dans des fichiers YAML ou des variables d’environnement. C’est robuste, mais peu pratique quand il faut gérer plusieurs providers, plusieurs channels, ou permettre à une équipe projet de vérifier une configuration.
Ici, les credentials sont stockés en base et appliqués au moment de la requête OAuth. Le plugin s’appuie sur HWIOAuthBundle, tout en remplaçant les valeurs statiques par les valeurs configurées dans Sylius.
Concrètement, un administrateur peut :
- créer une configuration OAuth ;
- renseigner le Client ID et le secret ;
- ajouter les champs spécifiques Apple ou Microsoft ;
- sélectionner les channels concernés ;
- copier l’URL de callback générée ;
- tester la configuration avant de l’activer.
Cette approche réduit les allers-retours entre Back Office, console provider et fichiers de déploiement.


Sécurité : secrets chiffrés et champs write-only
Les secrets OAuth ne sont pas des paramètres anodins. Le plugin les chiffre au repos avec une clé dédiée, ou avec APP_SECRET si aucune clé spécifique n’est fournie.
En production, il est recommandé de définir une valeur stable :
ACSEO_SOCIAL_LOGIN_ENCRYPTION_KEY=change-me-in-production
Les secrets restent également write-only dans l’édition d’un fournisseur existant : un administrateur peut remplacer une valeur, mais pas relire le secret déjà enregistré.
Cette logique limite l’exposition accidentelle des credentials dans le Back Office, les exports ou les captures d’écran.
Une logique channel-aware, adaptée à Sylius
Sylius est souvent utilisé pour des contextes multi-marques, multi-pays ou multi-domaines. Le social login doit suivre cette réalité.
Le plugin permet d’associer chaque fournisseur à des channels précis. Une boutique B2C peut proposer Google et Apple, tandis qu’un autre channel peut n’afficher que Microsoft ou LinkedIn. L’ordre des boutons est lui aussi géré depuis la configuration.
L’objectif est de garder une expérience front propre, cohérente avec le channel courant, sans multiplier les conditions custom dans les templates.
Pour les équipes techniques
Le plugin fournit la documentation d’installation, les routes, la configuration de firewall Sylius et les callbacks provider. Il inclut aussi une commande de diagnostic :
php bin/console acseo:social-login:debug
Elle permet d’inspecter les fournisseurs configurés, leurs channels, leurs scopes, leurs callbacks et la présence des credentials.
Cette commande est utile pour les environnements de recette et de production, où les erreurs OAuth viennent souvent d’une différence entre l’URL publique, le channel, la console provider et la configuration applicative.
En résumé
Le plugin Social login apporte à Sylius une intégration social login orientée production :
- providers OAuth courants ;
- configuration depuis le Back Office ;
- support multi-channel ;
- libellés traduisibles ;
- secrets chiffrés ;
- URLs de callback visibles et copiables ;
- diagnostic CLI ;
- intégration front sur les pages login et inscription.
Le plugin s’adresse aux projets Sylius qui veulent réduire la friction de connexion client, tout en gardant une configuration claire, sécurisée et exploitable par les équipes projet.
Installez le Plugin social login pour Sylius dès maintenant ! (lien à venir)
Poursuivez votre lecture
Consultez nos autres contenus pour enrichir les fonctionnalités et l’administration de votre boutique Sylius :