Search Results :

×

Invision Community SSO integration using Drupal as OAuth / OpenID Connect Provider


The Drupal OAuth/OIDC Server module enables Single Sign-On i.e. SSO between the Drupal site and any Client application that supports the OAuth or OpenID Connect protocol. Here, we go through the steps to connect the module with the Invision Community. In this Integration of Drupal and Invision Community, Drupal acts as an Identity Provider i.e. users will be logging into Invision Community using their Drupal credentials.

Installation Steps:


  • Download the module:
    composer require 'drupal/oauth_server_sso'
  • Go to Extend menu on your Drupal admin console and enable the module by enabling the checkbox and click on Install button.
  • Configure the module at:
    {BaseURL}/admin/config/people/oauth_server_sso/config_client
  • Install the module:
    drush en oauth_server_sso
  • Clear the cache:
     drush cr
  • Configure the module at:
    {BaseURL}/admin/config/people/oauth_server_sso/config_client
  • Navigate to Extend menu on your Drupal admin console and click on Install new module.
  • Install the Drupal OAuth / OIDC Provider - Single Sign On (SSO) module either by downloading the zip or from the URL of the package (tar/zip).
  • Click on Enable newly added modules.
  • Enable this module by checking the checkbox and click on Install button.
  • Configure the module at
    {BaseURL}/admin/config/people/oauth_server_sso/config_client

Configure an OAuth / OIDC Application in the Invision:

  • Log into the Invision Community using the administrator credentials.
  • Navigate to the Settings -> Login & Registration tab from the left navigation panel.
  •  Drupal Invision Community OAuth OIDC Provider - Go to Settings then Login & Registration tab
  • Click on the Create New button, then select Other OAuth 2.0 and click on the Continue button.
  •  Drupal Invision Community OAuth OIDC Provider - Click on Create New and select Other OAuth 2.0 -> Continue
  • Enter an Application Name under the Name text field and then copy the Redirect URL value from the Application Settings section.
  •  Drupal Invision Community OAuth OIDC Provider - Enter Application name and copy Callback Redirect URL-> Continue

Configure Drupal as an OAuth Server:

Note: Please ensure that the Drupal site is hosted on a server accessible from the internet, as Invision Community won't be able to reach the Drupal endpoints if the Drupal site is running on localhost.

  • On the Drupal site, go to the Configuration -> miniOrange OAuth server configuration -> OAuth Client.
  • Click on the Add Client button.
  • Enter the Application Name under the Application Name text field.
  • Paste the copied Callback URL under the Callback/Redirect URL text field.
  • Multiple Callback URLs can be added by clicking on the Add More button next to the text field.
  • Click on the Save button and copy the Client ID and Client Secret.

Integrating Invision Community with Drupal:

  • Navigate to the Invision dashboard.
  • Select the Grant Type as Authorization Code.
  • Paste the copied Client ID under the Client Identifier text field and Client Secret under the Client Secret text field.
  •  Integrating Invision with Drupal OAuth/OIDC Provider - Provide Client ID and Client Secret in invision community application
  • Add the Scope and Endpoints as specified in the table below (You can also get the same from the Scope & Endpoints section of the Drupal site -> Configuration -> miniOrange OAuth server configuration -> OAuth Client):
    Scopes to request profile openid email
    Authorization Endpoint {base_url_of_the_drupal_site}/mo/oauth2/authorize
    Authorization Endpoint for AdminCP & Reauthorizations Use the same endpoint as normal logins
    Token Endpoint {base_url_of_the_drupal_site}/mo/oauth2/token
    User Information Endpoint {base_url_of_the_drupal_site}/mo/oauth2/userinfo
  •  Integrating Invision with Drupal OAuth/OIDC Provider - Provide Scope and Endpoints in Invision Application
  • Under the User ID Parameter enter the Unique identifier of the user like email or name.
  •  Integrating Invision with Drupal OAuth/OIDC Provider - On the User ID Parameter, enter Unique identifier such as email or name
  • Please keep the remaining fields default if not sure of the configurations. Scroll down, and click on the Save button.
  •  Integrating Invision with Drupal OAuth/OIDC Provider - Keep the remaining fields as default, if not sure of the configuration

You have successfully configured Invision Community as an OAuth Client and Drupal as an OAuth server.

Let’s see how this works:

  • Open a new window/private browser and navigate to the login page of the Invision Community website.
  • Click on the Login with Drupal button.
  • Test Single Sign-On working with invison using Drupal OIDC Provider - Keep the remaining fields as default, if not sure of the configuration
  • Browser will be redirected to the Drupal site login page. Enter the Drupal credentials and click on the Log in button.
  • Login into invison using Drupal OIDC Provider
  • On successful authentication, browser will be redirected back with successful login into the Invision Community.

You have successfully performed the SSO between Invision Community and Drupal!

Need Assistance?

If you face any issues during the configuration or if you want some additional features, please contact us at drupalsupport@xecurify.com.

Additional Features:

 Case Studies
miniOrange has successfully catered to the use cases of 400+ trusted customers with its highly flexible/customizable Drupal solutions. Feel free to check out some of our unique case studies using this link.
 Other Solutions
Feel free to explore other Drupal solutions that we offer here. The popular solutions used by our trusted customers include Two Factor Authentication - 2FA, Website Security, REST & JSON API Authentication, User Provisioning and Sync. 
  24*7 Active Support
The Drupal developers at miniOrange offer quick and active support for your queries. We can assist you from choosing the best solution for your use case to deploying and maintaining the solution.
Hello there!

Need Help? We are right here!

support
Contact miniOrange Support
success

Thanks for your inquiry.

If you dont hear from us within 24 hours, please feel free to send a follow up email to info@xecurify.com