Set up SSO
How to set up Single Sign-On (SSO) in your enterprise by using the SonarQube Cloud setup assistant.
This feature requires the SonarQube Cloud's Enterprise licence.
Before starting, read Before setting up SSO and provisioning.
If you don't intend to use SCIM provisioning, you must first create manually the user groups in your SonarQube Cloud organizations or verify your existing groups as described in Managing groups in SonarQube Cloud if using JIT provisioning.
To set up SSO with Okta Express Configuration, see Using Okta Express Configuration.
To set up SSO in your enterprise, you must be the administrator of the enterprise in SonarQube Cloud.
Start the SSO setup assistant
In SonarQube Cloud, retrieve your enterprise. See Retrieving and viewing your enterprise for more details.
Go to Administration > SSO & Provisioning. The SSO & Provisioning page opens.

Expand the Single sign-on & Domain verification section and select Set up Configuration. A new page opens.
In the bottom-right corner, select Get Started. The Configure Your Connection page opens.
Select Single Sign-On. The SSO setup assistant opens.

Select your identity provider or protocol, and select Next.
The SSO setup assistant opens. Follow the instructions below depending on your selection:
If using Okta OIDC

Step 1: Create application
In Okta, go to Applications > Applications and select Create App Integration.

In the dialog:
In Sign-in method, select OIDC - OpenID Connect. The Application type section shows up.
In Application type, select Web application.
Select Next.
Fill in the fields and options as described below.
General settings:
App integration name: the SonarQube Cloud application name.
Example: SonarQube Cloud.
Sign-in redirect URIs: Copy-paste the Callback URL field value from the setup assistant.
Assignments Select the following options:
Controlled access > Allow everyone in your organization to access
Enable immediate access > Enable immediate access with Federation Broker Mode
Select Save.
In the setup assistant, select Next to go to the step 2. Configure Connection.
Step 2: Configure connection
In Okta’s SonarQube Cloud application, go to General > Client Credentials.
Copy the value of the Client ID field.

Paste the copied value to the Client ID field in the setup assistant page.
Go back to your Okta's SonarQube Cloud application and copy the client secret.

Paste the copied value to the Client Secret field in the setup assistant page.
Go back to Okta and select your account / name in the top-right corner.
Copy your Okta organization URL / domain.

Paste the copied value to the Okta Domain field in the setup assistant.

In the bottom right corner of the assistant, select Create Connection and then Proceed. SonarQube Cloud is trying to connect to your Identity Provider. If the connection is established, the assistant moves to step 3. Claims Mapping.
Step 3: Claims Mapping
In your Okta’s SonarQube Cloud application, go to Sign On.
Go down to the Token claims section and open the Show legacy configuration panel.
Select Edit.
Set the fields as follows:
Groups claim type: Filter
Groups claim filter:
First field:
groupsSecond field: Select Matches regex and set the value to
.*to synchronize all groups from Okta or use a more restrictive expression depending on your needs.

Regardless of your chosen provisioning method, you must configure the groups attribute in the OIDC payload. If you use SCIM provisioning, ensuring this value aligns with the data SCIM transmits to SonarQube Cloud is essential. See Group setup is mandatory for more details.
Select Save.
In the SonarQube Cloud's setup assistant, select Next to go to the step 4. Assign Access.
Step 4: Assign Access
In your Okta’s SonarQube Cloud application, go to Assignments.
Select Assign, then Assign to Groups.
Select the groups to assign to the application.
Select Done.
In the SonarQube Cloud's setup assistant, select Next to go to the step 5. Test SSO.
To ensure users can reach their organization, you must assign groups to your application. Access via SSO is strictly limited to users who are members of a group within that specific organization. If you use SCIM, the mapping of groups to organizations is done during the SCIM setup. If you use the JIT provisioning, you must create the groups manually in SonarQube Cloud's organizations as described in Managing groups in SonarQube Cloud if using JIT provisioning.
Step 5: Test SSO
Select the Test Connection button. The test is started and the results are displayed on the page.
Verify the JSON response. In particular, verify that the email and groups attributes are correct. If the test was successful, select Enable Connection and Proceed.
Enable the connection by selecting the Enable Connection button in the top-right corner.

You can now verify your company's email domain to avoid one-time email verification during SSO login. To do so, select Domain Configuration to open the Domain Configuration assistant. See Step 2: Verify your domain in the assistant for detailed instructions.
Next steps
Go to the Set up SCIM step if you want to set up SCIM provisioning.
Go to the Invite users to sign in step to terminate your setup.
If using Entra ID OIDC

Step 1: Create application
Follow the instructions in the first step of the SonarQube Cloud’s setup assistant.
Select Next to go to step 2. Configure Connection.
Step 2: Configure connection
In the setup assistant, paste the secret value copied in the previous step to the Client Secret field.
In your Microsoft Azure application, go to Overview.
In Essentials, copy the Application (client) ID and paste it to the Client ID field in the setup assistant.
Retrieve your domain ID as follows:
In Microsoft Azure, select your account in the top right corner, and select Switch directory in the account menu.
In the list of directories, locate your tenant and copy the value in the Domain column.
Paste this value to the Microsoft Entra ID Domain field in the setup assistant.
Alternatively, retrieve your domain ID from the Settings > Custom domain names page of your application and copy the ID from the Name column.

In the assistant, select Create Connection and then Proceed. SonarQube Cloud is trying to connect to your Identity Provider. If the connection is established, the assistant moves to step 3. Claims Mapping.
Step 3: Claims Mapping
Select Next. The assistant moves to step 4. Assign Access.
Step 4: Assign Access
Follow the instructions in the Specific Users or Groups tab of the setup assistant to assign either all users or a subset of users or groups to the app you created in the first step.
In the assistant, select Next. The assistant moves to step 5. Test SSO.
Step 5: Test SSO
Select the Test Connection button. The test is started and the results are displayed on the page.
Verify the JSON response. In particular, verify the email and groups attributes, and the OID claim. If the test was successful, select Enable Connection and Proceed.
Enable the connection by selecting the Enable Connection button in the top-right corner.

You can now verify your company's email domain to avoid one-time email verification during SSO login. To do so, select Domain Configuration to open the Domain Configuration assistant. See Step 2: Verify your domain in the assistant for detailed instructions.
Next steps
Go to the Set up SCIM step if you want to set up SCIM provisioning.
Go to the Invite users to sign in step to terminate your setup.
If using Custom SAML
Step 1: Create and set up the SonarQube Cloud application in your identity provider
This step depends on your identity provider.
Okta
In Okta, under Applications, select Create App Integration.

In the dialog, select SAML 2.0.
Select Next.
Fill in the fields and options as described below.
General settings:
App name: SonarQube Cloud application name.
Example: SonarQube Cloud.
App visibility: Do not display application icon to users: Select this option. (This is because SonarQube Cloud doesn’t support IdP-initiated SSO)
SAML settings:
Single sign on URL: Copy-paste the Single Sign-On URL field value from the setup assistant.
Audience URI (SP Entity ID): Copy-paste the Service Provider Identity ID field value from the setup assistant.
Response:
SignedAssertion Signature:
SignedSignature Algorithm:
RSA-SHA256
For assertion encryption:
Assertion Encryption: If you want to enable assertion encryption, select Encrypted and fill in the fields below.
Encryption Algorithm: Select
AES256-GCMfor high security.Key Transport Algorithm:
RSA-OAEPEncryption Certificate: The public X.509 certificate used by the identity provider to authenticate SAML messages.
Only a single sign-on URL is allowed. Attempting to configure URLs in Other Requestable SSO URLs will lead to errors in your SSO setup.
In the Feedback dialog, select Finish to confirm the creation of the SonarQube Cloud application.
In the setup assistant, select Next to go to the step 2. Configure Connection.
2. Configure Connection
In Okta’s SonarQube Cloud application, go to Sign On > Settings > Sign on methods. Copy the value of the Metadata URL field

Paste the copied value to the Metadata URL field in the Automatic tab of the setup assistant page.

In the assistant, select Create Connection and Proceed. SonarQube Cloud is trying to connect to your Identity Provider. If the connection is established, the assistant moves to step 3. Attribute Mapping.
3. Attribute Mapping
In Okta’s SonarQube Cloud application, go to Sign On.
Go down to the Attribute statements section and open the Show legacy configuration panel.

Select Edit.
In Profile attribute statements, add the attributes for Name, Login, and Email, and in Group Attribute Statements, add the attribute for Groups, as described below.
Name attribute:
Name: Copy the attribute's Mapping value from the assistant (use the Copy tool).
Name format:
UnspecifiedValue:
user.firstName
Login attribute:
Name: Copy the attribute's Mapping value from the assistant (use the Copy tool).
Name format:
UnspecifiedValue:
user.login
Email attribute:
Name: Copy the attribute's Mapping value from the assistant (use the Copy tool).
Name format:
UnspecifiedValue:
user.email
Groups attribute:
Name: Copy the attribute's Mapping value from the assistant (use the Copy tool).
Name format:
UnspecifiedFilter: Select
Matches regexand set the value to.*to synchronize all groups from Okta or use a more restrictive expression depending on your needs.

Regardless of your chosen provisioning method, you must configure the groups attribute in the SAML payload. If you use SCIM provisioning, ensuring this value aligns with the data SCIM transmits to SonarQube Cloud is essential. See Group setup is mandatory for more details.
Select Save.
In the SonarQube Cloud's setup assistant, select Next to go to the step 4. Test SSO. See Set up SSO.
Microsoft Entra ID
Group synchronization doesn’t work with Microsoft Entra ID’s nested groups.
Microsoft Entra ID’s SAML tokens have a limit regarding the number of groups a user can belong to (see the description of groups in the Claims in SAML Token table). In such cases, you might need to reduce the number of groups the user is in.
Proceed as follows:
In Microsoft Entra ID, go to Applications > Enterprise applications > All applications.
Select New application and then Create your own application.
Make sure you choose Create your own application. Do not select the non-affiliated Sonarqube Microsoft Entra Gallery app, which contains configurations that may prevent proper integration.
Fill in the name and select the Integrate any other application you don’t find in the gallery option.
Select Create.
From the Manage section of the SonarQube Cloud application, go to Single sign-on > SAML.
In the Basic SAML Configuration section, select Edit, fill in the Identifier and the Reply URL fields as described below, and save:
Identifier (Entity ID): Copy-paste the Service Provider Identity ID field value from the setup assistant.
Reply URL (Assertion Consumer Service URL): Copy-paste the Single Sign-On URL field value from the setup assistant.
Sign On URL (Optional): Until IdP initiated SSO is available, you can use this URL:
https://sonarcloud.io/login/sso?enterprise_key=<enterprise_key>.
Only a single reply URL is allowed. Attempting to configure multiple reply URLs will lead to errors in your SSO setup.
In the setup assistant, select Next to go to the step 2. Configure Connection.
2. Configure Connection

In your SonarQube Cloud application in Microsoft Entra ID, go to SAML Certificates. Copy the value of the App Federation Metadata Url field and paste it into the Metadata URL field in the Automatic tab of the setup assistant page.
In the assistant, select Create Connection and Proceed. SonarQube Cloud is trying to connect to your Identity Provider. If the connection is established, the assistant moves to step 3. Attribute Mapping.
3. Attribute Mapping
In Microsoft Entra ID, go to he Attributes & Claims section of your SonarQube Cloud application.
Remove the namespaced attributes added by Microsoft Entra ID and listed in the Additional claims section.
Select Add new claim and define a claim for the Email attribute. This attribute is used to manage the email of the user.
In Name, paste the name copied from the Email's Mapping value in SonarQube Cloud's setup assistant.
In Source attribute, select
user.mail.

The figure below shows the setup assistant of SonarQube Cloud. Use the copy tool to copy the Mapping value.

The same way, define a claim for the Login attribute. This attribute is the unique name used to identify the user in SonarQube Cloud. In Source attribute, select
user.userprincipalname.The same way, define a claim for the Name attribute. This attribute is the full name of the user. In Source attribute, select
user.givennameor your own user name attribute.
The default list of attributes includes user.givenname (first name) and user.surname (last name). If you prefer to show the full name, you must create a new claim in MS Entra ID.
Select Add a group claim to define the Groups attribute. Set the parameters as follows:
Which groups associated with the user should be returned in the claim?: Groups assigned to the application
Source attribute: Cloud-only group display names or (if using on-prem Active Directory for group synchronisation) sAMAccountName
Emit group name for cloud-only groups option: If you use sAMAccountName, select the option. Otherwise, ignore the option.
Regardless of your chosen provisioning method, you must configure the groups attribute in the SAML payload. If you use SCIM provisioning, ensuring this value aligns with the data SCIM transmits to SonarQube Cloud is essential. See Group setup is mandatory for more details.
The figure below shows a group attribute definition example.

Save. The option to add a group will be unavailable and the group attribute will be listed with the other attributes in the Additional claims section as illustrated below.

In the setup assistant, select Next to go to the step 4. Test SSO. See Set up SSO.
JumpCloud
In JumpCloud, go to SSO Applications and select + Add New Application.

Select Custom Application and select Next.

Click Next.
Select Manage Single Sign-On (SSO) and Configure SSO with SAML, and select Next.

Enter a display label and select Save Application. The application is created.

Select Configure Application.
In the SSO tab, in the Configuration Settings section, set the parameters as described below:
IdP Entity ID: Don't change the default value.
SP Entity ID: Copy-paste the Single Sign-On URL field value from the setup assistant.
ACS URL: Copy-paste the Single Sign-On URL field value from the setup assistant to Default URL.
Only a single ACS URL is allowed. Attempting to configure multiple ACS URLs will lead to errors in your SSO setup.

In JumpCloud Metadata in the same section, select the Copy Metadata URL button.

In SonarQube Cloud's SAML SSO setup assistant, go the step 2. Configure Connection and paste the copied value to Metadata URL in the Automatic tab.

Select Create Connection and then Proceed.
In SonarQube Cloud's SAML SSO setup assistant, go the step 3. Attribute Mapping.
In the SSO tab of the JumpCloud's application, go to the Attributes > User Attributes section and add three new attributes with the values described below:
Name attribute:
Service Provider Attribute Name: Paste the name copied from the Mapping value in SonarQube Cloud's setup assistant.
JumpCloud Atttribute Name:
username
Login attribute:
Service Provider Attribute Name: Paste the name copied from the Mapping value in SonarQube Cloud's setup assistant.
JumpCloud Atttribute Name:
displayname
Email attribute:
Service Provider Attribute Name: Paste the name copied from the Mapping value in SonarQube Cloud's setup assistant.
JumpCloud Atttribute Name:
email
Under the Constant Attributes section, select the Include Group Attribute option. Copy the group attribute name from the assistant and paste it into Groups Attribute Name.

Regardless of your chosen provisioning method, you must configure the groups attribute in the SAML payload. If you use SCIM provisioning, ensuring this value aligns with the data SCIM transmits to SonarQube Cloud is essential. See Group setup is mandatory for more details.
Select Save.
In SonarQube Cloud's SAML SSO setup assistant, select Next to go to step 4. Test SSO. See Set up SSO below.
Other identity providers
Create the SonarQube Cloud application in your identity provider.
Copy the Service Provider Identity ID field value from the setup assistant and paste it into the corresponding field in your identity provider.
Copy the Single Sign-On URL field value from the setup assistant and paste it into the corresponding field in your identity provider.
Only a single sign-on URL is allowed. Attempting to configure multiple sign-on URLs in your identity provider will lead to errors in your SSO setup.
In SonarQube Cloud's SSO setup assistant, select Next to go to the step 2. Configure Connection.

2. Configure Connection
The operation is different depending on whether your identity provider supports the SAML metadata URL field (URL used by SonarQube Cloud to access metadata information) or not.
Metadata URL supported
In your SonarQube Cloud application in your identity provider, copy the value of the field corresponding to the SAML metadata URL .
Paste it into the Metadata URL field in the Automatic tab of the setup assistant page.

In the assistant, select Create Connection and Proceed. SonarQube Cloud is trying to connect to your Identity Provider. If the connection is established, the assistant moves to step 3. Attribute Mapping.
Metadata URL not supported
In the assistant, select the Manual tab.

In your identity provider, copy the value of the SSO login URL field and paste it into Single Sign-On Login URL in the assistant.
In your identity provider, download the certificate and upload it to the assistant.
In the assistant, select Create Connection and Proceed. SonarQube Cloud is trying to connect to your Identity Provider. If the connection is established, the assistant moves to step 3. Attribute Mapping.
3. Attribute Mapping
In your identity provider, create the attributes for Name, Login, Email, and Groups (the group attribute is used for automatic group synchronization). To do so, for each attribute, copy the attribute's Mapping value from the assistant (use the Copy tool) and paste it into the attribute’s name field in your identity provider.

Regardless of your chosen provisioning method, you must configure the groups attribute in the SAML payload. If you use SCIM provisioning, ensuring this value aligns with the data SCIM transmits to SonarQube Cloud is essential. See Group setup is mandatory for more details.
In the assistant, select Next to go to step 4. Test SSO. See Set up SSO.
Step 2: Test the SSO connection
In your identity provider, assign the user groups to the SonarQube Cloud application (to be able to perform the test, at least one group or user must be assigned).
To ensure users can reach their organization, you must assign groups to your application. Access via SSO is strictly limited to users who are members of a group within that specific organization. If you use SCIM, the mapping of groups to organizations is done during the SCIM setup. If you use the JIT provisioning, you must create the groups manually in SonarQube Cloud's organizations as described in Managing groups in SonarQube Cloud if using JIT provisioning.
In the SonarQube Cloud's setup assistant, select the Test Connection button. The test is started and the results are displayed on the page as illustrated below.Step b: Test the SSO connection

If the test was successful, select Enable Connection and Proceed.
Enable the connection by selecting the Enable Connection button in the top-right corner.

You can now verify your company's email domain to avoid one-time email verification during SSO login. To do so, select Domain Configuration in the setup assistant. See Domain verification for detailed instructions.
Next steps
Go to the Set up SCIM step if you want to set up SCIM provisioning.
Go to the Invite users to sign in step to terminate your setup.
Related pages
Related online learning
Last updated
Was this helpful?

