Hello.

On utilise KeyCloak depuis quelques temps via SAML2 et oAuth/OpenID avec un backend Active Directory.
Et rien a redire, ca fonctionne très bien, c'est facile a configurer, mettre a jour et personaliser (On construit notre propre container pour rajouter nos propres templates et quelque custom config pour notre C.A interne).
Tu a du 2FA intégré par défaut via Google Authenticator et pas mal de plugins pour d'autre systèmes si besoin (genre Duo Login, etc.)
Je crois qu'il y a aussi un mode qui permet de l'utiliser comme proxy pour les apps qui ne supportent pas es auth standard genre oAuth/SAML et qui va injecter du BASIC auth aux requetes qui passent par le proxy, mais je n'ai jamais utilisé ce mode.
Ca nous sert aussi de portail self-service pour permettre aux users de reset leur password Active Directory si il a expiré ou ils ne s'en rappellent plus (Avec un lien sur leur boite mail corpo), ils ont aussi dans ce même portail la possibilité de voir toutes leurs sessions et de les fermer manuellement par exemple (Ainsi que configurer leur OTP).

Voila voila.


---- On Thu, 17 Jan 2019 18:52:20 +0100 DUVERGIER Claude <frsag.ml@claude.duvergier.fr> wrote ----

Pré-scriptum : Premier message sur cette liste, je suis FRnOG depuis
quelques temps mais je n'ai découvert FRsAG que récemment. Donc j'en
profite pour adresser un *bonjour à tous* et me présenter en quelques
mots clés : homme, admin réseau, admin serveur, debian, open-source,
lyon, ~120 utilisateurs.

Chez mon employeur, pour gérer les informations sur les utilisateurs
(nom, prénom, e-mail, uid, nom d'utilisateur, mot de passe, etc.) on
dispose d'un serveur LDAP ce qui permet à chacun de n'avoir qu'un seul
mot de passe pour accéder à toutes les applications Web qu'on utilise
(via connecteur LDAP dans l'application ou via module Apache/Nginx style
"mod_authnz_ldap").

Mais pour (enfin) pouvoir :
* Proposer du SSO aux utilisateurs ("sign-on" et "sign-out")
* Contrôler/gérer/contrôler tout ça (d'un endroit unique)
* S'ouvrir aux autres applications via les standard tels que OAuth,
OpenID, etc.

J'envisage de monter un serveur "IdP", j'ai donc regardé les solutions
qu'on pouvait installer sur nos propres serveur et j'ai retenu :
* Keycloak
* Gluu
* LemonLDAP::NG

J'ai trouvé la documentation de *Keycloak* est assez bien faite et ça
m'a permit d'appréhender l'étendue des possibilités : ça semble bien
correspondre à mes besoins. Seul petit hic, c'est en Java.

Pour *Gluu*, je trouve la documentation un peu moins précise et il reste
quelques points d'ombre sur les possibilités offertes. Point noir : il
utilise, en interne, un serveur LDAP et rajouter des métadonnées aux
utilisateurs semble compliqué. Bon point : il est distribué sous forme
de package .deb.

J'avais déjà découvert *LemonLDAP::NG* il y a des années (sans m'en
servir) et ça me branchait bien. Je dirais qu'il semble moins joli que
Keycloak mais tout aussi performant.
A l'époque, l'intégration du SSO sur les applications web maison m'avait
paru aisée (Apache seulement).

Je vais donc tester Keycloak et LemonLDAP::NG, mais avez-vous d'autres
produits à conseiller (tant que je suis lancé) ?

J'ajoute que, dans un futur proche, j'aimerais disposer d'un serveur
RADIUS. Ça me permettra de faire de la restriction d'accès sur des
équipements réseau (eg. bornes WiFi) : mais j'ignore encore quelle
passerelle il pourrait y avoir entre RADIUS et un des IdP testé plus
haut. Je sais juste que si je n'avais pas ce projet d'IdP, je
connecterais tout simplement le serveur RADIUS sur le serveur LDAP.

Merci pour votre attention :)


--
DUVERGIER Claude
_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/