Skip to content

NodeBB/nodebb-plugin-sso-oauth2-multiple

Repository files navigation

NodeBB OAuth2 Multiple Client SSO

This NodeBB plugin allows you to configure logins to multiple configurable OAuth2 endpoints, via the admin backend. Use this plugin if you have a separate database of users and you'd like to allow access to the forum to those users via that database.

Caveat

Different OAuth2 providers adhere to the standard differently. This plugin is tested primarily against the following providers:

Support for other OAuth2 providers is explicitly not guaranteed. If you'd like to help this plugin play nice with other providers, please open an issue.

Profile Updates

v1.4.0 of this plugin introduces the ability to update a user's full name and picture with data supplied by the remote userinfo endpoint. The functionality (including which fields to sync/ignore) can be configured on a per-strategy basis, under the "Adjustments" menu when editing a strategy.

Role-Based Access Control

This plugin is able to sort users into specific user groups based on user roles. You can maintain a map of roles to user groups, and further limit access via standard category privileges in NodeBB.

The role-based access control functionality was sponsored by Outplayed.

Screenshots

OAuth2 Strategy Editing

For Developers

Other plugins can interact with this plugin, as it fires the following hooks:

  1. On successful login — action:oauth2.login — passes in (name, user, profile)
    • name is the strategy name.
    • user is the local NodeBB user (probably just the uid).
    • profile is the remote profile as retrieved by this plugin.

About

NodeBB Plugin for configuring multiple OAuth2 endpoints for login

Resources

License

Stars

Watchers

Forks

Packages

No packages published