Configure GitLab for OAuth 2 SSO

This guide is intended for Admins setting up OAuth 2 SSO with GitLab.

When you configure Single Sign-on (SSO) with GitLab, your users will be able to create and sign into their Baserow accounts using GitLab.

If you are looking for information on setting up SSO with other providers:

Single Sign-On feature is a part of the Baserow Enterprise offering. Instance-wide features are only available on the self-hosted Enterprise plan. To learn more about the Baserow enterprise plan, visit our pricing page.

Here’s how to set up OAuth 2 SSO with GitLab to sign in to your Baserow account.

Set up OAuth 2 SSO with GitLab

Sign in or create a GitLab account. Go to User settings → Applications at https://gitlab.com/-/profile/applications.

Add a new application:

enter image description here

Next, log in to Baserow. Go to the Admin > Authentication > Provider. Retrieve your Callback URL from your Baserow admin settings modal, following the steps in this guide.

To set up the new application,

  • Fill in the Application name as Baserow
  • Fill in the Redirect URI. This is the Baserow Callback URL you will find in the Baserow Provider Settings where you create or edit the authentication provider.
  • Set the Confidential checkbox.
  • Allow the read_user scope.

enter image description here

Click the Save application button.

Once created, you will use the credentials to configure a new GitLab provider in Baserow:

  • Application ID is the Baserow Client ID.
  • Secret is the Baserow Secret.

enter image description here

After you’ve accessed this information from the application, copy and paste the information from GitLab into Baserow.

Connect GitLab to your Baserow Account

Head back to Baserow Admin > Authentication > Provider.

Configure GitLab by inputting the Client ID and secret information into the corresponding fields in your Baserow Admin Dashboard, following the steps in this guide.

enter image description here

You should be able to log in with GitLab after completing these steps by visiting your Baserow servers login page. Your users will now be taken to a GitLab sign-in flow when they attempt to log into Baserow. After logging in with their GitLab credentials, they will be redirected to the app.

enter image description here

Understanding Baserow’s authentication system

By default, Baserow restricts users to logging in only with the same authentication method they used for signing up. For instance, if a user creates an account with a username and password, they won’t be able to log in through SSO without further configuration.

Troubleshooting error for SSO Login

You might encounter an error message — “Something went wrong: please use the provider that you originally signed up with” — when you attempt to log in via SSO.

This error message indicates a conflict between your initial sign-up method and your attempt to log in via SSO after initially signing up for Baserow with a username and password.

Here are the primary options to address this error:

Option 1: Enable multiple authentication methods

Set the environment variable BASEROW_ALLOW_MULTIPLE_SSO_PROVIDERS_FOR_SAME_ACCOUNT=true. After setting this variable, restart the Airtable instance. This allows users to log in with either a password or SSO.

This option increases security risk, especially if you have multiple OAuth providers enabled. An attacker who gains access to a user’s account on any external provider could potentially use that access to log in to the associated Baserow account.

For optimal security, we recommend maintaining consistent authentication methods unless necessary. If enabling multiple login methods is essential, implement additional security measures to mitigate potential risks.

Option 2: Maintain consistent authentication method

Users can continue logging in with the authentication method they signed up with. This avoids changing Baserow’s default behavior and maintains existing security measures.

Option 3: Delete user from Admin panel and re-login via SSO

You can delete the user from the Baserow admin panel. Upon logging in via SSO, Baserow will recreate the user, automatically setting SSO as their default authentication method.

Deleting the user permanently removes all their associated data within Baserow. This option should only be considered if data loss is acceptable and after ensuring all data is backed up elsewhere.

Always prioritize data security when modifying your authentication settings.


Still need help? If you’re looking for something else, please feel free to make recommendations or ask us questions—we’re ready to assist you.

   Ask the Baserow community

   Contact support for questions about Baserow or help with your account.