[Galette-devel] Galette & OAuth |
[ Thread Index | Date Index | More lists.galette.eu/devel Archives ]
Salut, Je me suis récemment penché sur la question de l'intégration de « OAuth » dans Galette. À l'heure où j'écris ces lignes, je ne sais même pas encore vraiment si c'est réellement envisageable, mais... Tout ceci part du besoin exprimé de pouvoir lier Galette à d'autres systèmes, pour de l'authentification notamment (et plus si affinités ?). Le truc, c'est que je n'y connais absolument rien, et que c'est quelque chose qui ne semble pas forcément facile à faire. Bon, soit, c'est mon taff me direz-vous ;) En revanche, j'ai tout de même des interrogations et points à soulever ; j'aimerai vous en faire part et avoir vos avis :) L'idée, c'est donc que Galette devienne un serveur OAuth pour des services tiers (sites, forums, etc...) pour le peu qu'ils fournissent un client OAuth (normalement, c'est au moins possible sous forme de plugins dans la plupart des systèmes « majeurs », non ?). Je pense que l'on pourrait ainsi authentifier pour un forum un adhérent pour lui donner automatiquement l'accès à des parties du forum restreintes aux seuls membres. Je suppose que l'inverse pourrait aussi avoir du sens, mais à mon avis, c'est un peu moins intéressant bien que ce serait certainement moins compliqué. Chaque chose en son temps de toutes façons. Sur l'aspect technique, j'ai un peu regardé ce que propose phpleague et ça m'a semblé pas mal : https://oauth2.thephpleague.com Tout cela requiert pas mal de travail, notamment à priori pour implémenter toutes les interfaces nécessaires et les adapter à Galette (voir l'exemple fourni par league : https://github.com/thephpleague/oauth2-server/tree/master/examples/src). Plusieurs modes d'authentification semble disponibles, je ne sais pas encore s'il est obligatoire/nécessaire de tout implémenter, ni ce que ça représente exactement. Je ne sais pas non plus si/comment limiter les application autorisées à se connecter via Galette par ce protocole, ... De ce que j'en vois, il faudrait certainement ajouter quelques tables en base (et tout ce qui va autour), pour le reste, ça sera basé principalement sur l'adhérent et les méthodes d'authentification existantes. L'installation côté utilisateur est un peu compliquée aussi, d'après ce que j'en ai compris. Il nous faut une clé générée par openssl que Galette ne peut pas fournir (en termes de sécurité, ça ne serait pas top), et une clé de chiffrement (il est possible d'en générer une à l'installation/mise à jour et de la stocker dans les données de configuration de Galette). Voilà voilà, si vous avez des remarques ou questions sur le sujet, ça m'intéresserait très fortement de vous lire :) ++ -- Johan
Attachment:
signature.asc
Description: OpenPGP digital signature
Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |