Discourse user provisioning and SSO via DiscourseConnect

domain: discourse.org · 5 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Enable DiscourseConnect on the target instance (enable_discourse_connect) and configure discourse_connect_url (your identity provider's login endpoint) and discourse_connect_secret (shared secret), per Discourse's official SSO guide.
  2. On login, Discourse redirects the user to your discourse_connect_url with a signed sso + sig payload; your IdP must verify the HMAC-SHA256 signature with the shared secret before responding.
  3. Respond with a base64-encoded payload containing at minimum external_id (a permanent, never-changing user identifier) plus profile fields like email/username/name.
  4. Enable auto-provisioning so matching accounts are created transparently on first login instead of showing Discourse's own signup screen, per Discourse's auto-provisioning docs.
  5. Treat external_id as immutable for the lifetime of the user — it is the join key between your system and the Discourse account.

Known gotchas

Related routes

Choose and implement JIT provisioning vs SCIM for enterprise SSO customers
identity-general · 6 steps · unrated
Discourse REST API: create topics and posts programmatically
discourse.org · 5 steps · unrated
Build a SCIM 2.0 user provisioning endpoint that an identity provider can call
simplecloud.info · 6 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans