Inscription libre

Par défaut, personne ne peut créer de compte : on entre sur invitation, d’un propriétaire de logement ou de l’administrateur de l’instance. Vous pouvez ouvrir l’inscription à tout le monde avec HOUSECAIRN_SIGNUP_OPEN=true (ADR 0024). Faites-le quand l’instance est exploitée pour de bon : l’inscription libre attire les robots.

Ce qu’il faut pour ouvrir l’inscription

  • L’envoi d’e-mails. Chaque adresse est vérifiée par e-mail avant que le compte puisse se connecter (ACCOUNT_EMAIL_VERIFICATION vaut alors mandatory). Sans EMAIL_HOST, l’instance refuse de démarrer (housecairn.E001). Voir E-mail.

  • HTTPS, pour que le contrôle anti-robot ci-dessous s’exécute dans le navigateur.

Ce qui la protège

  • Preuve de travail. La page d’inscription demande au navigateur un petit calcul pendant que le formulaire est rempli, et le bouton l’attend. Cela coûte du travail à un robot pour chaque compte, ne demande rien à la personne et n’utilise aucun service tiers. HOUSECAIRN_SIGNUP_POW_BITS règle le travail : 16 (le défaut) prend une seconde ou quelques-unes, 8 à 24 sont acceptés, chaque bit doublant le travail. Un défi ne fonctionne qu’une fois, pour le visiteur à qui il a été donné, pendant 30 minutes. Il faut JavaScript et une connexion sécurisée : sinon la page le dit.

  • Limite de débit : la page d’inscription répond 429 au-delà de 10 tentatives par minute et 60 par jour depuis une même adresse client. Voir Limites de débit.

  • Domaines. HOUSECAIRN_SIGNUP_ALLOWED_DOMAINS (séparés par des virgules : seulement ces domaines, sous-domaines compris) et HOUSECAIRN_SIGNUP_BLOCKED_DOMAINS (jamais ceux-là). Aucune des deux listes ne s’applique aux personnes invitées, ni aux comptes que l’administrateur crée. Elles s’appliquent aussi à l’inscription libre par authentification unique (HOUSECAIRN_OIDC_SIGNUP=open).

  • Pas d’énumération. S’inscrire avec une adresse qui a déjà un compte reçoit exactement la même réponse que pour une nouvelle adresse, et le compte existant en est averti par e-mail. La réinitialisation du mot de passe répond de la même façon.

Rien de tout cela n’arrête un attaquant disposant de puissance de calcul et de nombreuses adresses ; ces mesures donnent un coût à l’inscription en masse. Si des abus surviennent, fermez l’inscription et passez par l’invitation.