Les objectifs de ce plugin
L’objectif est d’utiliser le login et le mot de passe stocké dans un serveur d’authentification OpenID Connect (OIDC) au lieu de ceux qui sont stockés dans SPIP.
Cela évite à l’utilisateur de gérer ses mots de passe dans plusieurs sites (ou applications) et cela lui évite de s’authentifier à nouveau lorsqu’il passe d’un site à un autre.
Par ailleurs, OpenID Connect permet d’obtenir des informations sur l’utilisateur (par exemple : le prénom et le nom).
Enfin, le protocole OpenID Connect (OIDC) sécurise les échanges entre le client OIDC et le serveur OIDC.
Pourquoi OpenID Connect (OIDC) et pas OpenID ?
Les protocoles OpenID 1.0 et OpenID 2.0 ont été abandonnés (« deprecated ») et il est proposé d’utiliser OpenID Connect (OIDC) à la place.
OpenID Connect est de plus en plus utilisé. Plus de 3600 entreprises utilisent ce protocole selon le site theirstack.
La librairie utilisée par ce plugin
Ce plugin utilise la librairie Jumbojett/OpenID-Connect-PHP. Elle est livrée avec le plugin afin d’éviter de devoir l’installer.
Les fonctionnalités ajoutées par ce plugin
On peut configurer ce plugin pour offrir une authentification OIDC ou bien une authentification hybride (SPIP ou un serveur OIDC).
Il est possible d’offrir à l’utilisateur le choix entre plusieurs serveurs OIDC, en configurant des serveurs OIDC additionnels.
Il affiche automatiquement le bouton AgentConnect lorsque l’adresse du serveur d’authentification est une adresse de AgentConnect. Idem pour FranceConnect et ProConnect.
Par configuration on peut choisir de comparer l’identifiant renvoyé par le serveur OIDC au contenu du champ de SPIP contenant l’email des auteurs, ou bien à celui contenant le login des auteurs.
L’authentification sur le site public redirige ensuite vers la page en cours, idem lors de la déconnexion.
On peut configurer le plugin CIOIDC pour que, si l’authentification sur le serveur OIDC a réussi mais que l’auteur n’existe pas dans SPIP, l’auteur soit créé automatiquement (avec le statut “rédacteur” ou bien “visiteur”).
Il offre un pipeline pour effectuer d’autres actions dans le cas précité.
Les auteurs dont le statut est “à la poubelle” ne sont jamais pris en compte.
Il ajoute un pipeline pour effectuer d’autres actions avec les informations sur l’utilisateur (par exemple : identifiant, prénom et nom).
Il permet d’activer une sécurité anti hack, pour empêcher certaines manipulation d’identifiant dans SPIP.
Il permet d’activer une sécurité anti BOT.
Un paramétrage par fichier est possible. Il est prioritaire sur la configuration du plugin dans l’espace privé.
Si le plugin CICAS est actif, le fonctionnement du plugin CIOIDC est suspendu.
Documentation
Pour en savoir plus, consulter la documentation ci-jointe (fichier au format PDF).
Installation
L’installation est décrite dans le fichier suivant, qui figure à la racine du plugin : cioidc/README.md
Compatibilité
La compatibilité avec les versions de SPIP et de PHP est décrite dans le fichier suivant, qui figure à la racine du plugin : cioidc/README.md
Paramétrage par constantes
Il convient de consulter le fichier suivant, qui figure à la racine du plugin : cioidc/_config_cioidc.txt
Pipelines offerts
Il convient de consulter le fichier suivant, qui figure à la racine du plugin : cioidc/README.md
Existe-t-il un serveur de test ?
Il existe un serveur de test (oidctest.wsweet.org). Pour tester, suivre la procédure ci-dessous :
a) Configurer le plugin de la manière suivante :
Mode d’authentification : OpenID Connect ou SPIP
Nom du serveur d’authentification [Obligatoire] : oidc Test
URL du serveur OpenID Connect [Obligatoire] : https://oidctest.wsweet.org/
Nom du client [Obligatoire] : private
Secret du client [Obligatoire] : tardis
Identifiant de l’utilisateur dans SPIP [Obligatoire] : email
Identifiant de l’utilisateur dans le serveur OpenID Connect [Obligatoire] : email
Scopes additionnels : email
Le serveur OpenID Connect accepte-t-il le point d’interrogation dans la l’adresse de redirection ? : oui
Utiliser un serveur proxy : oui (si nécessaire) ou non (si pas nécessaire)
b) Créer un auteur dans SPIP avec l’email : dwho@badwolf.org
c) S’authentifier avec “oidc Test” :
Se déconnecter du site SPIP.
Se connecter sur le site SPIP en cliquant sur “Se connecter”.
Cliquer sur le bouton “oidc Test”.
Une page avec le logo “oidc Test” s’affiche.
Renseigner le login : dwho
Renseigner le password : dwho
On doit alors être connecté sur le site SPIP.
A noter que oidctest.wsweet.org ne vérifie pas l’adresse de redirection vers le client.
Attention : avec OpenID Connect, il est généralement nécessaire de renseigner, dans le serveur OpenID Connect, l’adresse de redirection vers le client.
No discussion
Add a comment
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Follow the comments:
|
