Search Results :

×

SSO Login into Joomla using Drupal as an OAuth / OpenID Connect Provider

SSO Login into Joomla using Drupal as an OAuth / OpenID Connect Provider


Drupal SSO integration will allow the users to log in to Joomla using the Drupal site Credentials. This SSO integration is achieved by the miniOrange OAuth / OpenID Connect server module which uses the OAuth 2.0 and OpenID Connect protocol. The module is compatible with all OAuth / OpenID Connect clients and is available for Drupal 7, Drupal 8, Drupal 9, and Drupal 10.

In this setup guide, we will help you configure the Single Sign-on login using the OAuth protocol between the Drupal site and the Joomla.

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

Setup Joomla as OAuth Client

  • Download the miniOrange OAuth Client plugin for Joomla.
  • Login into your Joomla site’s administrator console.
  • From the left Toggle Menu, navigate to System -> Extensions.
  • drupal oauth server joomla install
  • Upload the downloaded zip file to install the Joomla OAuth Client plugin.
  • drupal oauth server joomla upload file
  • From the Toggle Menu, go to Components -> miniOrange OAuth Client -> Configure OAuth tab.
  • Select Custom OAuth or Custom OpenID Connect App.
  • Joomla OAuth Client Single Sign-On - Select Custom Application
  • Copy the Callback URL.
  • Joomla OAuth Client Single Sign-On - Copy Redirect Callback URL

Configure Drupal as an OAuth Server:

  • Navigate to the Drupal site and go to the Configuration -> miniOrange OAuth server configuration -> OAuth Client tab.
  • Click on the Add Client button to add a new application.
  • Drupal OAuth/OIDC Provider - Click on Add Client
  • Enter the name of your application under the Application Name text field.
  • Paste the copied Redirect/Callback URL from the Joomla site under the Callback/Redirect URL text field.
  • You can add multiple Callback URLs by clicking on the Add More button next to the Callback/Redirect URL text field.
  • Drupal OAuth/OIDC Provider - Click on Add More to next the Callback URL field
  • Click on the Save button and copy the Client ID and Client Secret.

Configure Joomla as an OAuth Client:

  • Navigate to the Joomla dashboard and paste the copied Client ID and Client Secret into the respective field.
  • Joomla OAuth Client Single Sign-On - Paste the copied Client ID and Client Secret into respective text fields
  • Add the 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):-

    Scope openid profile email
    Authorize Endpoint {base_url_of_the_drupal_site}/mo/oauth2/authorize
    Token Endpoint {base_url_of_the_drupal_site}/mo/oauth2/token
  • Joomla OAuth Client Single Sign-On - Paste the Endpoints into the corresponding fields
  • Click on the Save Settings after that the Test Configuration button.
  • Joomla OAuth Client Single Sign-On - Click on Save Settings then Test Configuration button
  • Once the test is successful, scroll down to the Attribute Mapping section, and from the Email Attribute dropdown select the Drupal attribute name in which the email is received from Drupal.
  • Joomla OAuth Client Single Sign-On - Select Email Attribute
  • From the Username Attribute dropdown select the Drupal attribute in which the username is received from Drupal.
  • Joomla OAuth Client Single Sign-On - Select Username Attribute from drop-down
  • Click on the Save Attribute Mapping button.
  • Joomla OAuth Client Single Sign-On - Click on Save Attribute Mapping

Let’s see how this works:

  • Copy the Login / SSO URL from the Joomla dashboard.
  • Joomla OAuth Client Single Sign-On - Copy Login / SSO URL
  • Open a new window/private browser and navigate to the link copied. It will redirect you to the Drupal login page.
  • Enter the Drupal Credentials and click on the Log in button.
  • Enter the Drupal credentials in Drupal login page

You will be logged into Joomla using Drupal credentials.

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