OAuth/OpenID Single Sign On (SSO) into Confluence using Google Apps

OAuth/OpenID Single Sign On (SSO) into Confluence using Google Apps

Confluence OAuth/OpenID app gives the ability to enable OAuth/OpenID Single Sign-On for Confluence. Confluence is compatible with all OAuth/OpenID Providers. Here we will go through a guide to configure SSO between Confluence and your OAuth/OpenID Provider. By the end of this guide, users from your OAuth/OpenID Provider should be able to log in and register to Confluence.

Video Setup Guide

Pre-requisites

To integrate your OAuth/OpenID provider with Confluence, you need the following items:

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

Download and Installation

  • Log into your Confluence 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 Confluence OAuth/OpenID Connect Single Sign On (SSO), Confluence SSO via search.
  • Click Try free to begin a new trial or Buy now to purchase a license for OAuth/OpenID Connect for Confluence SSO.
  • Enter your information and click Generate license when redirected to MyAtlassian.
  • Click Apply license.
  • ”Confluence

Step 1: Set Up Google Apps as OAuth Provider

  • Navigate to the plugin configuration page, click the "Add New Provider" button (located either in the middle or top-right corner), select Google Apps as the application, and copy the callback URL from the plugin and keep it handy, as you'll need it to configure Google Apps as the OAuth provider.
  • OAuth / OPenID Single Sign On (SSO) using ADFS, ADFS Management
  • Login to Google Console: Visit the Google's Developer Console and login to your account.
  • Click Select a project, then NEW PROJECT, and enter a name for the project, and optionally, edit the provided project ID. Then click on Create button.
  • OAuth/OpenID/OIDC Single Sign On (SSO), Google Apps SSO Login Setup Google app OAuth/OpenID/OIDC Single Sign On (SSO), Google Apps SSO Login NEW PROJECT
  • Select your project, click on APIs & Services and select OAuth consent screen option.
  • OAuth/OpenID/OIDC Single Sign On (SSO), Google Apps SSO Login OAuth Consent Screen
  • On the Consent screen page, select the User Type and click on Create. In the next screen, provide Application name and save the changes.
  • Now go to Credentials, click on Create Credentials and select OAuth Client ID.
  • OAuth/OpenID/OIDC Single Sign On (SSO), Google Apps SSO Login Create credentials
  • Select Web Application as application type.
  • OAuth/OpenID/OIDC Single Sign On (SSO), Google Apps SSO Login Application type
  • Click on the Add URI button in Authorized redirect URIs section. Collect the callback URL provided in the plugin and enter it here. Click on Create.
    The callback URL would be {oauth_client_base_url}/plugins/servlet/oauth/callback
  • OAuth/OpenID/OIDC Single Sign On (SSO), Google Apps SSO Login Redirect URI
  • Get Client ID and Client Secret: Copy the client ID and Client Secret to your clipboard, as you will need them when you configure miniOrange plugin.
  • OAuth/OpenID/OIDC Single Sign On (SSO), Google Apps SSO Login Get Client ID
  • To send user's group to the client application, you need to enable Admin SDK and API access. For Admin SDK, navigate to the Dashboard and click on ENABLE APIS AND SERVICES.
  • OAuth/OpenID/OIDC Single Sign On (SSO), Google Apps SSO Login Enable APIS and Services
  • Now search for Admin SDK, select it from the list and then click on ENABLE button.
  • OAuth/OpenID/OIDC Single Sign On (SSO), Google Apps SSO Login Admin SDK
  • To enable API Access you need to login into Google Admin console. In Google Admin Console, go to Security ->Settings.
  • OAuth/OpenID/OIDC Single Sign On (SSO), Google Apps SSO Login Security ->Settings
  • Look for API Permissions -> Enable API access
  • OAuth/OpenID/OIDC Single Sign On (SSO), Google Apps SSO Login API reference

Step 2: Set Up Confluence as OAuth Client

  • Go to Confluence Manage Apps -> click Configure under OAuth/OpenID Connect (OIDC) for Confluence SSO. Then click on Add New Provider button. Select Google Apps as your OAuth provider.
  • Option to select your desired IDP from a list of IDPs
  • Enter Client Id, Client Secret and scope as email. And if you also want to fetch group info of the users then enter email https://www.googleapis.com/auth/admin.directory.group.readonly in the scope field.
  • OAuth/OIDC Configuration screen
  • Verify the Google Administrator Account : Click on Verify Admin Credentials. For fetching the user groups from Google, you need to verify your Google Administrator's Account by clicking on 'Verify Credentials'.

  • NOTE: You need to login with your Google Administrator's account in this step. If you login with an user account, groups will not be fetched from Google.


  • If you are unable to fetch Groups then Go to Permissions and click on REMOVE ACCESS
  • Finally, click on Test Configuration to verify the accuracy of the provided details.
  • Additionally, you can provide the JWKS Endpoint URL or Public Key for signature validation. You can find this option under the Advanced Settings tab.
    OAuth/OIDC Configuration screen

Step 3: User Profile Mapping

Navigate to the User Profile section at the top to configure user profile attributes for Confluence. If your user directory is read-only, disable the User Profile Mapping option in this tab and then proceed directly to the “Matching a User” step.

OAuth / OpenID Single Sign On (SSO) into Confluence, auth0 single sign on, saml and oauth, atlassian single sign on, Configure User Profile

Click on Test Configuration.

SAML SSO for Confluence using Okta Identity Provider, Okta SSO Login, User Attribute Matching

When a user logs into Confluence, data or attributes from the OAuth/OpenID provider are used to search for that user in Confluence and facilitate login. To match the attributes:

  • Navigate to the User Profile tab.
  • Choose either Username or Email as the login for the Confluence user account.
  • Enter the attribute name from the OAuth/OpenID Provider that corresponds to the Username or Email as identified in the Identifying Correct Attributes step.
  • oauth 2.0, oauth authentication, OAuth / OpenID Single Sign On (SSO) into Confluence, User Profile Mapping tab of the plugin

SAML SSO for Confluence using Okta Identity Provider, Okta SSO Login,  Extended Attribute Mapping

You can configure additional user attributes received in the OAuth/OpenID response using the Configure User Properties (Extended Attributes) section.

  • In the left dropdown, select the Confluence attribute you want to map as User Property Key (for example: Phone, Location).
  • In the right field, input the corresponding value retrieved from the Attributes from Provider in the Test Configuration window.
  • For example, to map user location: select Location on the left dropdown and enter the provider attribute name that returns the user’s location on the right.
  • Click Add Attribute Mapping again to create additional mappings.
  • oauth 2.0 authentication, oauth token, OAuth / OpenID Single Sign On (SSO) into Confluence, provision for configuring additional attributes

Step 4: User Group Mapping

As we proceed to configure user group attributes for Confluence, you have the option to enable group mapping.

If you wish to do so, please ensure to select Enable Group Mapping in the User Groups tab. Alternatively, you can proceed directly to setting the default group.

SAML SSO for Confluence using Okta Identity Provider, Okta SSO Login, 4.1 Setting the Default Group

  • In the User Groups tab, select the default group for users. If no group is mapped, users are automatically added to this group.
  • Using the Assign Default Group To option, you can assign default groups to all users or new users. Choose None if you prefer not to assign any default group to SSO users.
  • oauth api, oauth oidc, oauth sso, OAuth / OpenID Single Sign On (SSO) into Confluence, Default group

SAML SSO for Confluence using Okta Identity Provider, Okta SSO Login, 4.2 Finding Group Attribute

  • To identify group Attribute, click on Test Configuration. Review the values returned by your OAuth/OpenID provider to Confluence in the table. If group values are missing, adjust the settings in your OAuth provider to include group names.
  • Check Enable Group Mapping option if you disable this then group mapping wont be updated for existing users.

SAML SSO for Confluence using Okta Identity Provider, Okta SSO Login, 4.3 Group Mapping

Group mapping can be done manually or on the fly:

  • Manual group mapping: If the names of groups in Confluence are different than the corresponding groups in OAuth/OpenID Provider, then you should use Manual group mapping.
  • On-The-Fly group mapping: If the names of groups in Confluence and OAuth/OpenID Provider are same, you should use On-The-Fly group mapping.
I. Manual group mapping
  • Check the Allow User Creation based on Group Mapping option if you want new users to be created only if at least one of the user's OAuth/OpenID Provider groups is mapped to a group in the application.
  • Select a Confluence group from the dropdown list and enter the name of the OAuth/OpenID Provider group to be mapped in the Groups from Applications textbox.
  • For instance, if you want all users in the 'dev' group of OAuth/OpenID providers to be added to Confluence-software-users, you will need to select Confluence-software-users from the dropdown and enter 'dev' against Confluence-software-users.
  • If you want to add extra mapping fields, click on Add Groups button.
  • oauth client, open id oauth, open authentication oauth, OAuth / OpenID Single Sign On (SSO) into Confluence, Manual group mapping
II. On-The-Fly group mapping
  • If the group names in both Confluence and the OAuth/OpenID provider match, opt for On-The-Fly group mapping.
  • Check the Create New Groups option to create new groups from the OAuth/OpenID Provider if not found in Confluence.
  • Preserve existing user groups by selecting the Keep Existing User Groups option. Unticking this option will remove the user from a Confluence group if it's not present in the OAuth/OpenID response. However you can exclude some groups from removal in the exclude groups field
  • saml oauth and openid connect, sso oauth 2.0, OAuth / OpenID Single Sign On (SSO) into Confluence , provision for on-the-fly group mapping

Step 5: Advanced SSO Configurations

  • Enable PKCE to enhance security by adding an extra layer of protection to the OAuth flow, preventing authorization code interception attacks.
  • Allow User Creation:- Enabling this will allow you to create new users through SSO.
  • Directory for New User:- After a successful SSO, if the user is not found in Confluence , a new user account will be created in the selected user directory.
  • Remote Directory Sync:- The user details will be synced from the remote directory on successful SSO only if the user exists in the remote directory.
  • oauth authentication, single sign on login, OAuth / OpenID Single Sign On (SSO) into Confluence , provision for configuring sign-in settings in the plugin
  • ACR Value: Requests additional information from the OpenID provider to determine the Level of Assurance for user authentication.
  • State Parameter: Protects against CSRF attacks by sending a unique, non-guessable value with the authorization request, mandatory for certain providers.
  • Add Custom Parameters: Allows the inclusion of extra parameters in the authentication request.
  • saml oauth and openid connect, sso oauth 2.0, OAuth / OpenID Single Sign On (SSO) into Confluence , provision for on-the-fly group mapping

Step 6: SSO Setting

The configurations within the SSO Settings tab are pivotal in shaping the user experience for Single Sign-On.

SAML SSO for Confluence using Okta Identity Provider, Okta SSO Login, 6.1 Sign In Settings

  • Enable Auto Redirect to Application to redirect users to the OAuth/OIDC provider when accessing the Confluence login page. You can set a delay before redirection.
  • Next, toggle the Enable Backdoor Login option for emergency access using a backdoor URL. Restrict access to this URL for specific groups if needed.
  • You can use Domain Restriction to allow login for specific user domains and configure multiple allowed domains (semicolon-separated).
  • The Secure Admin Login option ensures the re-authentication of admin users before accessing pages with administrative permissions.
  • oauth authentication, single sign on login, OAuth / OpenID Single Sign On (SSO) into Confluence , provision for configuring sign-in settings in the plugin

SAML SSO for Confluence using Okta Identity Provider, Okta SSO Login, 6.2 Redirection Rules

  • Redirection rules allow you to redirect users to login page or providers based on their email domains, groups, or directories. This functionality is especially useful when multiple providers are configured
  • To create a new rule, go to the Redirection Rules tab and click Add Your First Rule.
  • oauth 2.0 authentication, single sign on authentication, OAuth / OpenID Single Sign On (SSO) into Confluence, Redirection Rules tab with provision for creating new rule
  • Next, give the rule a name and set the conditions for redirection. Click Save Rules once you’re done.
  • saml and oauth, atlassian single sign on, OAuth / OpenID Single Sign On (SSO) into Confluence, Add Rule window in the Redirection Rules tab
  • You can also set a default rule if no other rule conditions are met.
  • oauth authentication, oauth 2.0 authentication, OAuth / OpenID Single Sign On (SSO) into Confluence, provision for setting a default redirection rule
  • Once you set a redirection rule, users who fulfill its conditions will be shown a login form, prompting them to input their username/email address. You can set domain-based rules for directing users to specific providers as well.

SAML SSO for Confluence using Okta Identity Provider, Okta SSO Login, 6.3 Session Management

  • Enable User Session Management option to set Remember Me-Cookie to keep users logged in until they are explicitly logged out.
  • oauth token, oauth api, oauth oidc, OAuth / OpenID Single Sign On (SSO) into Confluence, Global SSO Settings tab in the plugin

SAML SSO for Confluence using Okta Identity Provider, Okta SSO Login, 6.4 Look and Feel

These settings will allow you to change the look and feel of the login page and error message. To access these settings click on the Look and Feel tab from the left sidebar.

  • You can customize the default login button text as well as you can completely design the login page using a customizable template.
  • Atlassian Data Center Single Sign-On (SSO) for OAuth Select Provider Look and Feel
  • The SSO Error Message section allows you to modify how error messages will be displayed to your users.
  • Look and Feel tab with provision for customizing the error messages

SAML SSO for Confluence using Okta Identity Provider, Okta SSO Login, 6.5 Post Logout Configurations

  • If you want to redirect users to an URL after they log out then you can use Custom Logout URL under Post Logout Configuration tab.
  • Similar to the customizable login template, you can also design the Logout page to improve the user experience.
  • Atlassian Data Center Single Sign-On (SSO) for OAuth Select Provider Look and Feel

SAML SSO for Confluence using Okta Identity Provider, Okta SSO Login, 6.6 Global SSO Settings

  • SSO can be enabled/disabled from the Global SSO Settings tab in the left sidebar.
  • You can change additional settings as Allow Users to Change Password, Restrict access to plugin APIs and Auto Activate Users on SSO.
  • Atlassian Data Center Single Sign-On (SSO) for OAuth Select Provider Global SSO Settings

Did this page help you?

miniOrange Atlassian Contact Us

Book a Free Consultation with
Our Experts Today!

Schedule a call now!


Contact Us