Discourse is an open source Internet forum software application built by the team behind the Stack Exchange and Stack Overflow networks.

This module provides a Single Sign On integration for a Discourse forum. It means that users that are logged in to your Drupal site are automatically logged in to your Discourse site/forum when they access it. If the user is not logged in to your Drupal site (s)he will redirected to Drupal login page. After successfully logging in the automatic authentication and redirection to Discourse site is performed.

Features

  • SSO (Single Sign On) integration for Discourse forum software with your Drupal site. Drupal users are automatically logged in the Discourse forum when they are logged in to your Drupal site.
  • Provides "Discourse forum link" block with link to your Discourse site/forum (the link is in format: "[discourse url]/session/sso" so it causes automatic authentication if needed).

Requirements

  • A running instance of a Discourse forum.
  • Configuration of SSO settings (one checkbox and two text fields) in the Discourse admin section.

Installation

  • Download and enable this module.
  • Set the Discourse site/forum url and SSO secret (will be used for safe communication, the same must be set in Discourse site/forum administration) at /admin/config/services/discourse-sso .
  • Log into the Discourse site/forum as an admin and enable SSO, set the SSO url (sso_url) and SSO secret (sso_secret) according to Official Single-Sign-On for Discourse guide, all necessary instructions and illustration images are present there.
    sso_url: the offsite URL users will be sent to when attempting to log on.
    sso_secret: a secret string used to hash SSO payloads. Ensures payloads are authentic.
  • Move the "Discourse forum link" block to some region or create your own link to Discourse site/forum. If the link is in format: "[discourse url]/session/sso" then it will automatically auto-login the user or redirect them to the Drupal login page. [The link is of course just OPTIONAL.]
  • Your Single Sign On authentication integration between Discourse and Drupal should be configured and functional now.

Discourse version

Tested with Discourse Version: 1.9.0
Drupal 8 Version tested with Discourse 2.2.0-beta2

Discourse Sync

The Drupal 8 version includes a submodule for synchronizing Drupal user roles to Discourse.

Supporting organizations: 
Development Drupal 8 version
Development Drupal 10 version

Project information

Releases