Paramètre du site pour désactiver les inscriptions locales

Bonjour,

Je recherche un paramètre de site qui désactive les inscriptions locales tout en maintenant les inscriptions de nouveaux comptes via OpenID Connect.

En examinant les rapports d’utilisateurs de janvier, la majorité pointaient vers un texte de site : « C’était le message d’erreur : Les inscriptions de nouveaux comptes ne sont pas autorisées pour le moment. » et m’auraient incité à activer Allow_new_registrations.

En parcourant tous les paramètres disponibles, je ne vois aucun paramètre explicite autorisant les inscriptions via OIDC tout en les interdisant sur le site local.

J’ai toutefois utilisé une requête Data Explorer pour vérifier s’il y avait des utilisateurs (agissant en violation des CGU, bien sûr) ayant utilisé leurs DevTools pour réafficher le bouton d’inscription ou désélectionner un redirection JS :

SELECT
  u.id,
  u.username,
  u.name,
  ue.email,
  u.active,
  u.approved,
  u.created_at,
  u.last_seen_at
FROM users u
LEFT JOIN user_associated_accounts uaa
  ON uaa.user_id = u.id
LEFT JOIN user_emails ue
  ON ue.user_id = u.id
 AND ue.primary = true
WHERE uaa.user_id IS NULL
  AND u.staged = false
ORDER BY u.last_seen_at DESC NULLS LAST, u.created_at DESC

Je reconnais que l’utilisateur agissant contre ma politique devrait toujours vérifier son adresse e-mail. Cependant, je ne souhaite pas que des utilisateurs s’inscrivent s’ils ne disposent pas d’un compte auprès de l’institution qui gère mes besoins OIDC.

on pourrait éventuellement restreindre must_approve_users avec un must_approve_local_users

mais cela supprimerait la possibilité de désactiver la page initiale qui redirige vers /login comme effet secondaire de la résolution de cette vulnérabilité de sécurité.

Décochez enable local logins. Cela permettra toujours les inscriptions/connexions via des méthodes externes, comme un fournisseur OpenID.

Le principal problème avec la désactivation de cette option est que mon forum redirige alors directement vers Entra, ce qui donne l’impression que mon forum est géré par une institution (ce qui n’est pas le cas).

Votre site nécessite-t-il une connexion ? Si oui, consultez ce paramètre :

Oui, c’est activé. C’est le paramètre pour lequel j’ai envoyé une demande de fusion : supprimer le mot « externe » de la description du paramètre.

Donc, si vous souhaitez afficher un écran de démarrage sur le site tout en ayant OIDC activé comme unique méthode de connexion, vous devez :

  • décocher « activer les connexions locales »
  • décocher « authentification immédiate »
  • avoir une méthode de connexion externe activée

Une fois ces conditions remplies, les utilisateurs verront un écran indiquant que la connexion est requise, comme ceci :

Les deux boutons ici (s’inscrire / se connecter) redirigeront vers votre unique méthode de connexion externe.

Oui, c’est exactement ce que j’ai fait pour https://physicswithethan.discourse.diy

J’ai également désactivé mon composant personnalisé « Remplacements d’inscription ».

1 « J'aime »

Alors, tout est prêt, ou le bouton S’inscrire manque-t-il ? Vous pouvez maintenant autoriser les nouvelles inscriptions ; cela activera uniquement l’inscription via OIDC.

Désactiver auth immédiatement empêche-t-il les utilisateurs de créer un nouveau compte via le flux de connexion OIDC ?

Non, cela contrôle uniquement si le splash s’affiche ou si les utilisateurs sont redirigés immédiatement vers la passerelle de connexion.

D’accord, j’ai ajusté à la fois login_required.welcome_message et site_description, ce qui a rendu la page d’accueil beaucoup plus personnalisée.

J’ai également désactivé Auto_skip_create_confirm afin que mon login_required.welcome_message soit précis concernant le choix du nom d’utilisateur.

2 « J'aime »

Est-il possible de désactiver le bouton S'inscrire sur l’écran de démarrage sans utiliser de CSS ? (Activer les connexions locales sur OUI plutôt que sur NON)

Par conséquent, les utilisateurs devront s’inscrire via un lien d’invitation pour les comptes locaux. Cependant, je crains que l’activation du paramètre Invitation uniquement ne cause des problèmes après post-OIDC-create_confirm.

ask.discourse.com m’indique

Cette combinaison serait une solution au problème décrit dans mon message précédent, si elle fonctionne.

Je pense qu’il a trouvé cette information sur Invite Only and Auth skip create confirm settings show signup popup when using together

Cependant, je note que ce rapport de bug concerne Oauth2, et non le plugin OpenID Connect.