Search Results :

×

SSO Login into Bitbucket using Drupal as OAuth / OpenID Connect Provider

SSO Login into Bitbucket 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 Bitbucket. In this Integration of Drupal and Bitbucket, Drupal acts as an Identity Provider i.e. users will be logging into Bitbucket 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

Set up Bitbucket as an OAuth Client:

  • Log into the Bitbucket server.
  • Click on the Settings icon in the top right corner.
  •  Drupal bitbucket OAuth OIDC Provider - Login into Bitbucket, click on Settings from top right corner
  • Scroll down to the Add-ons section and click on the Find new apps link.
  •  Drupal bitbucket OAuth OIDC Provider - Scroll to Add-ons and click Find new apps
  • Search for mO OAuth under the search bar and install it.
  •  Drupal bitbucket OAuth OIDC Provider - Search mO OAuth
  • Once the app is installed, click on the Overview -> miniOrange OAuth client from the left navigation menu.
  •  Drupal bitbucket OAuth OIDC Provider - Click on Overview - miniOrange OAuth Client
  • Copy the Callback URL and keep it handy.
  •  Drupal bitbucket OAuth OIDC Provider - Copy Callback Redirect URL
  • From the Select Application dropdown, select Custom OAuth App.
  •  Drupal bitbucket OAuth OIDC Provider - Select Custom OAuth App from Select Application drop-down
  • Enter the Application Name in the App Name text field.
  •  Drupal bitbucket OAuth OIDC Provider - Enter Application name

Create SSO Application in Drupal:

  • 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.
  • Enter the name of your application under the Application Name text field.
  • Paste the copied Callback URL into 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.
  • Click on the Save button.

Integrating Bitbucket with Drupal:

  • Go to the OAuth Client tab of the Drupal OAuth Server module, Navigate to the Configure Applications section, and copy the Client ID.
  • Paste the copied Client ID into the Client ID text field of the app in the Bitbucket dashboard.
  •  Integrating bitbucket with Drupal OAuth/OIDC Provider - Paste client id into client id field in bitbucket
  • Navigate back to the Drupal site and copy the Client Secret.
  • Paste the copied Client Secret into the Client Secret text field of the app in the Bitbucket dashboard.
  •  Integrating bitbucket with Drupal OAuth/OIDC Provider - Paste client secret into client secret field in bitbucket
  • 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):

    Scope profile openid email
    Authorization Endpoint {base_url_of_the_drupal_site}/mo/oauth2/authorize
    Token Endpoint {base_url_of_the_drupal_site}/mo/oauth2/token
    Get User Information Endpoint {base_url_of_the_drupal_site}/mo/oauth2/userinfo
 Integrating bitbucket with Drupal OAuth/OIDC Provider - Provide Scope and Endpoints in bitbucket Application
  • Click on the Save button to save your configurations.
  • Navigate to the Sign In Settings tab.
  •  Integrating bitbucket with Drupal OAuth/OIDC Provider - Click on Save then navigate to Sign In Settings
  • Enable the Enable or disable SSO for your Bitbucket server radio button.
  •  Integrating bitbucket with Drupal OAuth/OIDC Provider - Enabling the checkbox enable or disable SSO for your Bitbucket server
  • Under the Login Button Text, enter the text that you wish to show on the SSO Login button. Click on the Save button to save your changes.

Test Connection between Bitbucket and Drupal:

  • Click on the Test Configuration button in the app at the Bitbucket dashboard. to test the connection between the Drupal site and Bitbucket Application.
  •  Integrating bitbucket with Drupal OAuth/OIDC Provider - checking the Bitbucket and Drupal SSO connections

You have successfully configured Bitbucket as an OAuth Client and Drupal as an OAuth Server.

Let’s see how it works:

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

You have successfully performed the SSO between Bitbucket 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