SAML Single Sign On (SSO) into Bitbucket using OpenAM


Bitbucket SAML app gives the ability to enable SAML Single Sign On for Bitbucket Software. Bitbucket Software is compatible with all SAML Identity Providers. Here we will go through a guide to configure SSO between Bitbucket and your Identity Provider. By the end of this guide, users from your Identity Provider should be able to login and register to Bitbucket Software.



Pre-requisites

To integrate your Identity Provider(IDP) with Bitbucket, you need the following items:

  • Bitbucket should be installed and configured.
  • Bitbucket Server is https enabled (optional).
  • Admin credentials are set up in Bitbucket.
  • Valid Bitbucket Server and Data center Licence.

Download And Installation



  • Log into your Bitbucket instance as an admin.
  • Navigate to the settings menu and Click Manage Apps.
  • Click Find new apps or Find new add-ons from the left-hand side of the page.
  • Locate Single Sign-On (SAML SSO) Bitbucket SSO SAML+User Sync/SCIM via search.
  • Click Try free to begin a new trial or Buy now to purchase a license for Single Sign-On (SAML SSO) Bitbucket SSO SAML+User Sync/SCIM.
  • Enter your information and click Generate license when redirected to MyAtlassian.
  • Click Apply license.
SAML Single Sign On (SSO) into Bitbucket

Step 1: Setup OpenAM as Identity Provider

All the information required to configure in the OpenAM i.e. plugin’s metadata is given in the Service Provider Info tab of the miniOrange plugin.


SAML Single Sign On (SSO) using OpenAM Identity Provider,OpenAM SSO Login  Create OpenAM as a Hosted Identity Provider

Note: – You can skip this step and navigate to Configure Remote Service Provider if you have already configured OpenAM hosted IDP.

    • Login to the OpenAM admin console.
    • From the REALMS, select realms, under which you want to create hosted IDP. You will be redirected to the Realm overview page.
    • Click on Create SAMLv2 Providers in the Realm Overview page.

      SAML Single Sign On (SSO) using OpenAM Identity Provider, Select Identity Provider Profile
    • Click on Create Hosted Identity Provider. You will be redirected to the configuration page.

      SAML Single Sign On (SSO) using OpenAM Identity Provider, Register IDP
    • Configure IDP as given below.

      • Name: Name of the IDP
      • Signing Key: Select the signing key from the dropdown.
      • New Circle of Trust: Provide a name of the groups of IDP and SP that trust each other.
      • Attribute Mapping: Configure user profile attributes to be sent to the Service Provider application.

        SAML Single Sign On (SSO) using OpenAM Identity Provider, Configure Identity Provider
      • Click on the Configure button on the top right corner.
      • Verify the configuration from the Federation tab of OpenAM.
    SAML Single Sign On (SSO) using OpenAM Identity Provider,OpenAM SSO Login  Configure Remote Service Provider.

      • Login to the OpenAM admin console.
      • From the REALMS, select realms, under which you want to configure your application. You will be redirected to the Realm overview page.
      • Click on Create SAMLv2 Providers.

        SAML Single Sign On (SSO) using OpenAM Identity Provider, Select Service Provider Profile
      • Click on Register Remote Service Provider. You will be redirected to the configuration page.

        SAML Single Sign On (SSO) using OpenAM Identity Provider, Register SAML Service Provider
      • Configure the Service Provider as given below.

        • Where does the metadata file reside: URL.
        • URL of metadata: Configure miniOrange plugin's metadata here.
        • Circle of Trust: Add to existing.
        • Existing Circle of Trust: Select the Circle of Trust (group) in which your hosted IDP is located.
        • Attribute Mapping: Configure user profile attributes for mapping.

          SAML Single Sign On (SSO) using OpenAM Identity Provider, Configure Service Provider details
      • Click on the Configure button on the top right corner.
      • Verify the configuration from the Federation tab of OpenAM.
      • Provide OpenAM SAML metadata to Service Provider application(miniOrange SAML plugin).
      • You can download the OpenAM metadata using the URL given below.
        [OpenAM ServerURL]/saml2/jsp/exportmetadata.jsp
      • In case if you have multiple realms and hosted identity Provider configured then use the URL given below.
        [OpenAM ServerURL]/saml2/jsp/exportmetadata.jsp?entityid=[IdPentityID]&realm=/realmname

Step 2: Setup Bitbucket as Service Provider

    With the Quick Setup method, you can get the SP metadata from the first step of adding an IDP. The steps to initiate Quick Setup are given below :


      • Click on the Add New IDP button in the Configured IDPs section
      • SAML Single Sign On (SSO) into Jira, Add an IDP
      • Select the Quick Setup option in the pop-up that opens
      • SAML Single Sign On (SSO) into Jira, Add IDP pop-up
      • Select your IDP from the list of IDPs displayed

    After completing the above steps, you will see the first step of the Quick Setup process. This step deals with setting up your IDP.


    Step 2.1: Service Provider Metadata

        Here you will find your SP's metadata. You will need to provide this metadata to your IDP. There are two ways to add this metadata to your IDP.


         Import the metadata

          • If your IDP supports importing the metadata, then you can choose By providing a metadata URL to the IDP.
          • Depending on how your IDP accepts the metadata, you can either provide the metadata URL or you can use the Download Metadata button to download an XML file for the same.
          • SAML Single Sign On (SSO) into BitBucket, Quick Setup sp metadata url

        Manually add the metadata

            If you wish to add the metadata manually, then you can choose By manually configuring the metadata on your IDP You will find the following information. These details will need to be provided to your IDP


          • SP Entity ID
          • ACS URL
          • SP Certificate
          • SAML Single Sign On (SSO) into BitBucket, Quick Setup sp metadata manual

    The next step of the Quick Setup flow deals with setting up IDP metadata on SP. We will pick this up in the next section of the setup guide.

    If you have chosen to add your IDP using the Quick Setup flow then you have already completed the first step, which is to add SP metadata to your IDP. Now you can proceed with the second step of the Quick Setup method

    Step 2.2: Configuring your Identity Provider

        This step is where you will be adding your IDP metadata.


         Custom IDP name

          • You can enter a name for your IDP int the Custom IDP Name field. In-case your use-case requires multiple IDPs, the SSO button for this IDP on the login page will display the custom name. If you do not wish to add a custom name, simply click on the corresponding drop-down and select no.
          • SAML Single Sign On (SSO) into Jira, Quick Setup custom name for IDP

         Adding the IDP metadata

          There are 3 ways in which you can add your IDP metadata. Use the drop-down to select any of the following methods :

            •   I have the metadata URL for my IDP

              Add your metadata URL in the Enter Metadata URL field.

              SAML Single Sign On (SSO) into BitBucket, Quick Setup metadata url
            •   I have a file which contains the metadata

              Use the Choose File button to browse for your metadata file.

              SAML Single Sign On (SSO) into BitBucket, Quick Setup metadata file
            •   I want to manually configure the IDP

              To configure the IDP manually, you will need to have the following details from your IDP's metadata.

              • Single Sign On URL
              • IDP Entity ID
              • IDP Signing Certificate
              • SAML Single Sign On (SSO) into BitBucket, Quick Setup metadata manual
            •   Testing the configuration

                Once you have added the IDP metadata, click on Save. If the IDP has been added successfully, then you will see a Test and Get Attributes URL. Copt this Url and paste it in separate window to Get the Attributes from IDP.

    Step 2.3: User Profile

    In this step you will be setting up basic user profile attributes for your SP

       Matching a user

      • When the user logs into Atlassian Application, one of the user's data/attribute coming in from the IDP is used to search the user in Atlassian Application. This is used to detect the user in Atlassian Application and log in the user to the same account. You can choose which attribute will be used for this purpose using the drop-down provided.
      • SAML Single Sign On (SSO) into Atlassian Application, Quick Setup login attribute

       Setting profile attributes

      • Setting up both Username and Email is required if you want to let users register. If the Test Configuration performed in the previous step was successful, then the inputs for the username and email attributes will be drop-downs. These drop-downs will contain all of the user's attribute names sent from the IDP. You will need to select the appropriate options containing the user's username and email.
      • SAML Single Sign On (SSO) into BitBucket, Quick Setup login attribute

    step 2.4: User Groups - Default groups

    • Select the users's default groups in this step. You can use the Default Groups to do this. Multiple groups can be set as default groups. The user will be assigned to these groups by default after successfully logging in via SSO.
    • SAML Single Sign On (SSO) into Jira, Quick Setup default groups
    • You can enable default groups for All Users or New Users using the Enable Default Groups for drop-down. Select None if you don't want to assign any default group to SSO users.
    • SAML Single Sign On (SSO) into Jira, Quick Setup enable default groups

    Step 2.5: Troubleshooting and Support

      • This step marks the end of the Quick Setup flow. In case you faced any issues or encountered any errors while setting up your IDP you can use the steps given in the Troubleshooting section to get in touch with us.
      • You will also be able to see the results of a successful test configuration on this page. This includes the attributes received from your IDP, the SAML request sent and the SAML response received.
      • Adding your IDP via this method will setup basic SSO for your end-users. You can always customise your setup further using the full set of features that we provide. To do this use the Edit drop-down for your IDP in the Configured IDPspage. From here you will be able to access your SP Metadata and customise your User Profile and User Groups settings. You can read more about these settings in the Custom Setup section of this guide.

    Step 2.1: Service Provider Metadata

        If you plan on customizing your IDP setup from the get go, you can find the metadata in the SP Metadata. Here you will find your SP's metadata. You will need to provide this metadata to your IDP. There are multiple ways to add this metadata to your IDP :


        miniOrange logo  Import the metadata

          Depending on how your IDP accepts the metadata, you can either provide the metadata URL or you can use the Download Metadata button to download an XML file for the same.


        miniOrange logo  Manually add the metadata

          If you wish to add the metadata manually,you will find the following information in this section. These details will need to be provided to your IDP.

          • SP Entity ID
          • ACS URL
          • SP Certificate
          SAML Single Sign On (SSO) into BitBucket, Custom Setup sp metadata url

    Step 2.2: Configuring your Identity Provider

        The custom setup flow allows you to dive into the complete set of configurations that we provide to add a SAML Identity Provider. The steps to configure an IDP using the Custom Setup option are :


         Adding IDP Metadata

        miniOrange logo By Metadata URL

          • Click on the Import from Metadata tab.
          • Select IDP: Import From Metadata URL.
          • Enter IDP metadata URL: Enter your metadata URL.
          • If your IDP changes certificates at intervals (Eg. Azure AD), you can refresh your IDP metadata accordingly :
                • Navigate to the Advanced SSO options from the menu on the left-hand side of the page.
                • Enter your metadata URL in the Certificate Rollover field.
                • Select the Refresh Certificate periodically option.
                • Use the drop-down provided to set the interval for a periodic refresh.Select 5 minutes for the best results.
          • Click Import.
          • SAML Single Sign On (SSO) into Jira, Import IDP through Metadata URL

        miniOrange logo By Uploading Metadata XML File

          • Click on the Import from Metadata tab.
          • Select IDP: Import from Metadata File.
          • Upload metadata file.
          • Click Import.
          • SAML Single Sign On (SSO) into Jira, Import IDP through Metadata File

        miniOrange logo Manual Configuration

          Go to Manual Configuration tab and enter the following details:

            • IDP Entity ID
            • Single Sign On URL
            • Single Logout URL
            • X.509 Certificate
            • SAML Single Sign ON (SSO) into Jira, Configure IDP Manually

    Step 2.3: User Profile

        Next we will be setting up user profile attributes for Atlassian Application. The settings for this can be found in the User Profile section.

        SAML Single Sign On (SSO) into BitBucket, User profile Settings

        a. Finding correct attributes
          • Go to IDP Configuration section. Scroll down and click on Test Configuration.
          • You will see all the values returned by your IDP to Atlassian Application in a table. If you don't see value for First Name,Last Name, Email or Username, make the required settings in your IDP to return this information.
          • Once you see all the values in Test Configuration, keep the window open and go back to theUser Profile section.
        b. Setting profile attributes
          • In this tab, fill the values by matching the name of the attribute. For instance, if the Attribute Name in the Test Configuration window is NameID, enter NameID against Username
          • Setting up both Username and Email is required if you want to let users register. If you want existing users to only login, configure the attribute using which you will match the user in Atlassian Application.
        c. Matching a User

            When the user logs into Atlassian Application, one of the user's data/attribute coming in from the IDP is used to search the user in Atlassian Application. This is used to detect the user in Atlassian Application and log in the user to the same account.
            You can configure it using steps given below:

          • Select Username or Email for Login user account by
          • Enter the attribute name from IDP which corresponds to Username or Email using Finding Correct Attributes

    Step 2.4: User Groups

        Now we will be setting up user group attributes for Atlassian Application. You can replicate your user's groups present on IDP in your SP. There are multiple ways of doing this.

        a. Setting default group
          • Select the users' Default Group in the tab User Groups. If no group is mapped, users are added by default to this group.
          • You can enable default groups for All Users or New Users using the option.Select None if you don't want to assign any default group to SSO users. Using the option Enable Default Groups for.
          • SAML Single Sign On (SSO) into BitBucket, Default groups in group mapping
        b. Finding Group Attribute
          • Just like we found Attribute Name for User Profile attributes, we find the group attribute.
          • Go to IDP Configuration section. Scroll down and click on Test Configuration.
          • You will see all the values returned by your IDP to Atlassian Application in a table. If you don't see value with groups, make the required settings in your IDP to return group names.
          • Once you see all the values in Test Configuration, keep the window open and go to User Groups tab.
          • Enter the Attribute Name of group against Group Attribute.
          • Check Disable Group Mapping option if you don't want to update groups of existing users.
        c. Group Mapping
            Group Mapping can be done in two ways:

          • Manual group mapping: If the names of groups in Atlassian Application are different than the corresponding groups in IDP, then you should use Manual group mapping.
          • On-The-Fly group mapping: If the names of groups in Atlassian Application and IDP are same, you should use On-The-Fly group mapping.

        I. Manual Group Mapping
          • Check Restrict User Creation Based on Group Mapping option if you want new users to be created only if at least one of the user's IDP groups is mapped to a group in the application.
          • For mapping, first select a Atlassian Application group from the dropdown which lists all groups present in that application and then enter the name of the IDP group to be mapped in the textbox beside.
          • For example, if you want all users in 'dev' group in IDP to be added to software-users, you will need to select software-users from the dropdown and enter 'dev' against software-users.
          • Use '+1' and '+10' buttons to add extra mapping fields.
          • Use '-' button next to each mapping to delete that mapping.
          • SAML Single Sign On (SSO) into BitBucket, Manual group mapping
        II. On-The Fly Group Mapping
          • Check Create New Groups option if you want new groups from IDP to be created if not found in Atlassian Application.
          • If the user is part of some group in Atlassian Application and that group is not present in the SAML response returned by IDP, then the user will be removed from that group in Atlassian Application.
          • If you don't want On-The-Fly group mapping to affect Atlassian Application's groups which are managed locally then add those groups in Exclude Groups field.
          • SAML Single Sign On (SSO) into BitBucket, On the fly group mapping

    Step 2.5: Troubleshooting and Support

      • You can verify if your SAML SSO configuration is correct by clicking the Test Configuration button on the IDP configuration tab of the plugin.
      • After the successful test configuration, you will also be able to see the results on the Troubleshooting and Support page. This includes the attributes received from your IDP, the SAML request sent and the SAML response received.
      • In case you faced any issues or encountered any errors while setting up your IDP you can use the steps given in the Troubleshooting section to get in touch with us.

Step 3. Redirection on Login Page

    • If you have only one IDP configured, then you can use the features provided on the SSO Settings tab and Redirection tab of the plugin to manage the redirection on the login page.
    • Enable the Auto Redirect to IDP option on the SSO Settings tab if you want to allow users to log in only using IDP.
    • Use the Emergency/Backdoor Login URL to allow all admins to access the Atlassian Application's default login page and log in using Atlassian Application's local credentials. You can also Restrict the access of this URL to some specific set of users (i.e users of particular groups).
    • Use the settings given on Redirection Rules tab to redirect the users on login page based on their email domains, groups and directories. This feature is more useful in case you have multiple IDPs configured. Please refer to the next section.

Step 4. Multiple IDPs

      Step 4.1: Configuring Multiple IDPs

        • If your use case requires multiple IDPs to be configured on your SP, the plugin supports that as well. You can add another IDP by going to the Configured IDPs section and using the Add New IDP button.
        • SAML Single Sign On (SSO) into BitBucket, add a new IDP

      Step 4.2: Managing SSO with multiple IDPs

        • If you have multiple IDPs configured, you can choose how you want your end users to use these IDPs to perform SSO. IDPs to perform SSO.
        • For example you can show the buttons for the different IDPs configured on the login page nad let the users decide which IDP to use for SSO.
        • Or you could force certain users to user a specific IDP based on the domain of their username/email.
        • You will be able to configure these rules in the Redirection Rules section, under the Redirection Rules tab.
        • By default one rule is always configured that will be applicable to all the users, irrespective of their user domains.
        • For instance, if you want to display the login page with SSO buttons for each of the IDPs then your Default Rule will be as follows :
        • SAML Single Sign On (SSO) into Jira, default redirection rule
        • Based on the default rule mentioned above, the login form will contain buttons for each IDP. The users will be free to choose whichever IDP they want to use to initiate SSO.
        • SAML Single Sign On (SSO) into BitBucket, default redirection rule login page
        • You can also configure a rule so that your users will automatically be redirected to an IDP based on their email domains.
        • For example, if you want users with example.com as domain to be redirected to IDP 1 you can add a rule by :

          1. Click on the Add Rule button in the Redirection Rules tab
          2. Enter a name for your rule in Rule Name
          3. In the IF statement select Email Domain in the first drop-down
          4. For the same statement select equals in the second drop-down.
          5. In the last field of the IF statement, enter the email domain(example.com for the purpose of this example)
          6. In the Then Redirect To drop-down, select the IDP you want the users with example.com to be redirected to(IDP 1 in this case)
          7. Click on Save
          8. SAML Single Sign On (SSO) into Jira, example rule
        • When a rule such as an example given above is configured, a login form will be displayed to the users where they will have to input their email address.
        • SAML Single Sign On (SSO) into Jira, Domain mapping form
        • In this section you will also configure an emergency URL to by-pass SSO. This setting can be found under the Sign-In Settings tab in the left side menu.
        • SAML Single Sign On (SSO) into BitBucket, sso settings


miniorange img  Hi! Do you need help with this guide?




 Thank you for your response. We will get back to you soon.

Something went wrong. Please submit your query again

Sync product to woocommerce store from Amrod





Free Trial

If you don't find what you are looking for, please contact us at support-atlassian@miniorange.atlassian.net or raise a support ticket here.