Saludos,
Estamos intentando implementar foros de Discourse en modo producción. Estamos utilizando nuestro propio proveedor de OAuth y, por lo tanto, usamos el plugin discourse-oauth2-basic para habilitarlo.
Estamos viendo el siguiente error al iniciar sesión con nuestro proveedor de OAuth personalizado:
Después de algunas pruebas de depuración, se observa que el “omniauth.state” falta en la sesión después de que ocurre la redirección y, por lo tanto, no se puede validar el campo state en /auth/oauth2_callback. Cualquier ayuda sería apreciada.
Nota: Toda la configuración funciona correctamente en modo de desarrollo.
Sí @david, la autenticación está iniciando y finalizando en el mismo navegador. No se ha modificado el valor de same_site_cookies. Está configurado por defecto en “Lax”.
Hola @david, estamos implementando Discourse usando contenedores Docker. El archivo Docker que estamos utilizando es discourse_docker/image/base at master · discourse/discourse_docker · GitHub. Dado que no existe un script para iniciar Discourse dentro del contenedor Docker, hemos añadido un pequeño script de inicio que precompila e inicia Discourse.
RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production bundle exec rake assets:precompile
RAILS_ENV=production bundle exec rails server --binding=0.0.0.0
Por desgracia, nos resulta muy difícil ofrecer soporte comunitario aquí para instalaciones personalizadas. Por favor, intenta configurar Discourse utilizando la guía oficial. Si no puedes hacerlo, tal vez alguien en Marketplace pueda ayudarte a cambio de una tarifa.