Necesito ayuda para configurar SSO sin correos electrónicos

Mi sitio web (un wiki basado en MediaWiki) solo utiliza nombre de usuario y contraseña (el correo electrónico es opcional para que los usuarios se registren). Tengo Discourse instalado y funcionando, y he activado SSO en la configuración de administración. Al hacer clic en «Iniciar sesión» en Discourse, se redirige a la página de inicio de sesión de mi sitio con un nonce.

Estoy siguiendo las instrucciones oficiales de SSO de Discourse, donde se indica:

:warning: Discourse utiliza correos electrónicos para asociar usuarios externos con usuarios de Discourse y asume que los correos electrónicos externos son seguros. SI NO VALIDAS LAS DIRECCIONES DE CORREO ELECTRÓNICO ANTES DE ENVIARLAS A DISCOURSE, ¡TU SITIO SERÁ EXTREMADAMENTE VULNERABLE!

Tengo algunas preguntas sobre SSO:

  1. Solo para aclarar: una vez que SSO funcione, ¿todos los usuarios registrados en mi sitio podrán acceder a Discourse «con sesión iniciada» sin necesidad de registrarse primero en Discourse, correcto?
  2. Quiero desactivar todas las funciones relacionadas con el correo electrónico en Discourse (ya que en nuestro sitio web no se exige el correo electrónico). Es decir, ni correos desde Discourse ni hacia Discourse (para respuestas, etc.).
  3. Si creo un correo electrónico ficticio en el código SSO de mi sitio (algo como unique_id@dominio.xyz) para cada usuario y lo envío en el payload, ¿será suficiente?
  4. ¿Cómo puedo hacer que SSO funcione en mi caso? ¿Alguna otra sugerencia o consejo?

¡Gracias!

2 Me gusta

No. Se requieren correos electrónicos válidos para que Discourse funcione en su nivel más básico. Si necesitas soporte sin correo electrónico, quizás desees elegir otro software libre y de código abierto.

1 me gusta

Gracias por tu respuesta, Jeff.

Estaba revisando este hilo (consecuencias de no validar correos electrónicos) y tus comentarios en él; y creo que mi situación es bastante similar:

  1. Logré que SSO funcione y he desactivado los registros/inicios de sesión locales en Discourse. Por lo tanto, al hacer clic en ‘iniciar sesión’ en los foros, los usuarios son redirigidos a la página de inicio de sesión de mi sitio y, tras la validación, vuelven a ser redirigidos a los foros (con la carga útil, que incluye un ID de correo electrónico ficticio pero único).
  2. También he desactivado todos los correos electrónicos desde la configuración de administración de Discourse (por lo tanto, Discourse no enviará NINGÚN correo electrónico en absoluto).
  3. No he establecido require_activation en true.

Si todos los correos electrónicos de Discourse están desactivados y estoy usando SSO, ¿los correos ficticios seguirán siendo un problema? ¿Podrías explicar por qué los correos válidos son esenciales y qué falla con los correos ficticios únicos?

¡Gracias!

2 Me gusta

Si SSO está funcionando, eso podría estar bien… Creo que necesitas convertir estas direcciones de correo electrónico falsas en direcciones de un dominio específico para evitar cualquier intento de envío de correos, pero no recuerdo los detalles. ¿Lo recuerdas, @gerhard?

1 me gusta

Configurar adecuadamente la opción de sitio disable_emails debería ser suficiente, pero es una buena idea usar la extensión de dominio .invalid por si acaso habilitas el envío de correos electrónicos en el futuro. Algo como unique_id@algo.invalid, por ejemplo.

1 me gusta