Use ºÚÁϺ£½Ç91Èë¿Ú SAML Single Sign On (SSO) to give your users convenient but secure access to all their web applications with a single set of credentials. Integrate your ºÚÁϺ£½Ç91Èë¿Ú account with GitLab through an Identity Management Connector. After you connect ºÚÁϺ£½Ç91Èë¿Ú with GitLab, you can provision, and deprovision users in GitLab through your ºÚÁϺ£½Ç91Èë¿Ú Administrator Portal. Leverage this integration for centralized user lifecycle management and get immediate attribute management of users bound to integrated applications.
Read this article to learn how to configure the GitLab Integration.
Prerequisites
- A ºÚÁϺ£½Ç91Èë¿Ú administrator account
- ºÚÁϺ£½Ç91Èë¿Ú SSO Package or higher or SSO à la carte option
- You must have GitLab SaaS. This is functionality is not available with GitLab self-managed
- You need to have a or higher
- Access to modify the GitLab server per this
- Your GitLab domain and Server URL
Important Considerations
- Â must be enabled for the group. For more information, seeÂ
- SAML SSO is not supported at the subgroup level
- If you delete an integrated GitLab application from your Applications list, the application is removed from ºÚÁϺ£½Ç91Èë¿Ú, but any previously bound users remain active in GitLab. These users will be able log in to GitLab with the password they used prior to enablement of SSO to the GitLab application from your ºÚÁϺ£½Ç91Èë¿Ú account
- If you deactivate the Identity Management on your GitLab application, previously bound users remain active in GitLab and able to authenticate using SSO. No further updates will be made to user accounts via the Identity Management integration
- If you need to update your token, you must deactivate the IdM integration, update the token, and then reactivate the IdM integration
- Account takeovers are not supported. For more information on this take a lookÂ
- If a user is unable to sign in lookÂ
- New users provisioned from ºÚÁϺ£½Ç91Èë¿Ú will receive an email invitation from GitLab
- When SCIM is enabled for a GitLab group, membership of that group is synchronized between GitLab and ºÚÁϺ£½Ç91Èë¿Ú. Groups must be created manually in GitLab and then have SCIM support enabled for it to be managed via SCIM
- When de-provisioning users, the users are removed from the GitLab group. De-provisioning does not delete the user account
- Currently, you can’t update users in GitLab with our Identity Management Connector
- If a user’s password expires in ºÚÁϺ£½Ç91Èë¿Ú, their account becomes suspended and they are deactivated in all applications that have Identity Management configured and, are associated to them. Once the user’s password is updated, the account and previously associated applications are reactivated
Attribute Considerations
- A default set of attributes are managed for users. See the Attribute Mappings section for more details
- °Õ³ó±ðÌý³Ü²õ±ð°ù²Ô²¹³¾±ðÌý²¹²Ô»åÌý±ð³¾²¹¾±±ôÌýshould match
- GitLab generates the username attribute from the ºÚÁϺ£½Ç91Èë¿Ú user email
Creating a new ºÚÁϺ£½Ç91Èë¿Ú Application Integration
- Log in to the .
- Go to USER AUTHENTICATION &²µ³Ù;ÌýSSO Applications.
- Click + Add New Application.
- Type the name of the application in the Search field and select it.
- Click Next.
- In the Display Label, type your name for the application. Optionally, you can enter a Description, adjust the User Portal Image and choose to hide or Show in User Portal.
If this is a Bookmark Application, enter your sign-in URL in the Bookmark URL field.
- Optionally, expand Advanced Settings to specify a value for the SSO IdP URL. If no value is entered, it will default to https://sso.jumpcloud.com/saml2/<applicationname>.
The SSO IdP URL is not editable after the application is created. You will have to delete and recreate the connector if you need to edit this field at a later time.
- Click Save Application.
- If successful, click:
- Configure Application and go to the next section
- Close to configure your new application at a later time
Configuring the SSO Integration
To configure ºÚÁϺ£½Ç91Èë¿Ú
- Create a new application or select it from the Configured Applications list.
- Select the SSO tab.
- Replace any instances of YOURDOMAIN.com and YOUR_GITLAB_SERVER_URL with your GitLab values.
- Click save.
Download the certificate
- Find your application in the Configured Applications list and click anywhere in the row to reopen its configuration window.
- Select the SSO tab and click IDP Certificate Valid > Download certificate.
The certificate.pem will download to your local Downloads folder.
To configure GitLab
- Log in to Gitlab.
- On the left sidebar, select Search or go to and find your group.
- Select Settings > SAML SSO.
- Enter the following information:
- Identity provider single sign-on URL - copy and paste the ºÚÁϺ£½Ç91Èë¿Ú IDP URL.
- Certificate fingerprint field - enter the SHA-1 fingerprint for the certificate downloaded in the previous section.
³§±ð±ðÌýGenerate Custom Certificate and Private Key Pairs for instructions on determining your certificate fingerprint.
- In the Default membership role field, select the role to assign to new users. The default role is Guest. That role becomes the starting role of all users added to the group:
- In and later, group Owners can set a default membership role other than Guest.
- In GitLab 16.7 and later, group Owners can set a as the default membership role.
- Select Enable SAML authentication for this group.
- Optionally, you can select:
- Enforce SSO-only authentication for web activity for this group.
- Enforce SSO-only authentication for Git activity for this group. For more information, see the .
- Click Save changes.
Authorizing User SSO Access
Users are implicitly denied access to applications. After you connect an application to ºÚÁϺ£½Ç91Èë¿Ú, you need to authorize user access to that application. You can authorize user access from the Application Configuration panel or from the Groups Configuration panel.
To authorize user access from the Application Configuration panel
- Log in to the .
- Go to USER AUTHENTICATION > SSO Applications, then select the application to which you want to authorize user access.
- Select the User Groups tab. If you need to create a new group of users, see Get Started: User Groups.
- Select the check box next to the group of users you want to give access.
- Click save.
To learn how to authorize user access from the Groups Configuration panel, see Authorize Users to an SSO Application.
Validating SSO user authentication workflow(s)
IdP-initiated user workflow
- Access the
- Go to Applications and click an application tile to launch it
- ºÚÁϺ£½Ç91Èë¿Ú asserts the user's identity to the SP and is authenticated without the user having to log in to the application
SP-initiated user workflow
- Go to the SP application login - generally, there is either a special link or an adaptive username field that detects the user is authenticated through SSO
This varies by SP.
- Login redirects the user to ºÚÁϺ£½Ç91Èë¿Ú where the user enters their ºÚÁϺ£½Ç91Èë¿Ú credentials
- After the user is logged in successfully, they are redirected back to the SP and automatically logged in
Configuring the Identity Management Integration
To configure GitLab
- On the top bar, select Main menu > Groups and find your group.
- On the left sidebar, select Settings > SAML SSO.
- Select Generate a SCIM token.
- Copy the:
- Token from the Your SCIM token field.
- URL from the SCIM API endpoint URL field.
To configure ºÚÁϺ£½Ç91Èë¿Ú
- Create a new application or select it from the Configured Applications list.
- Select the Identity Management tab.
- Click Configure.
- You are presented with two fields:
- Base URL - enter the SCIM API endpoint URL copied in the previous section.
- Token Key - enter the SCIM token generated in the previous section.
- Click Activate and if successful, click save.
- You will receive a confirmation that the Identity Management integration has been successfully verified.
Attribute Mappings
The following table lists attributes that ºÚÁϺ£½Ç91Èë¿Ú sends to the application. See Attribute Considerations for more information regarding attribute mapping considerations.
Learn about ºÚÁϺ£½Ç91Èë¿Ú Properties and how they work with system users in our .
GitLab User Attributes
ºÚÁϺ£½Ç91Èë¿Ú Property | ºÚÁϺ£½Ç91Èë¿Ú UI | SCIM v2 Mapping | GitLab Value |
---|---|---|---|
Company Email | emails: value | ||
Company Email | userName | userName | |
firstname/lastname | First Name/Last Name | name.formatted | name.formatted |
firstname | First Name | name.givenName | name.givenName |
lastname | Last Name | name.familyName | name.familyName |
id* | extern_uid | ||
externalId* | extern_uid |
Importing Users
This functionality is helpful if users have already been created in the application but have not been created in ºÚÁϺ£½Ç91Èë¿Ú.
- Log in to the .
- Go to USER AUTHENTICATION > SSO Applications.
- Search for the application and click to open its configuration panel.
- Select the Identity Management tab.
- Click manual import.
- Select the users you want to create in ºÚÁϺ£½Ç91Èë¿Ú from the application from the list of users that appear. Users in the list have two import statuses:
- ±·±ð·ÉÌý- user has not been imported
- ±õ³¾±è´Ç°ù³Ù±ð»åÌý- user has been imported and has an account in ºÚÁϺ£½Ç91Èë¿Ú
Tip: Try using the New Users-only filter when selecting users to import. This will move all of your new users to the top of the list, making them easier to identify and select.
- Click import.
- If you are importing less than 100 users, your import results will display in real time and you can continue onboarding your usersÂ
- If you have more than 100 users being imported, ºÚÁϺ£½Ç91Èë¿Ú will send you an email when your import is complete
- You can now connect and grant users access to all their ºÚÁϺ£½Ç91Èë¿Ú resources. Learn more in the Authorize Users to an Application and Connecting Users to Resources articles.
Warning: Imported users must be members of a user group bound to an application for ºÚÁϺ£½Ç91Èë¿Ú to manage their identity in, and access to, the application.
SCIM Directory Insights Events
The following Directory Insights (DI) events provide visibility into failures and detailed information about the user and group data being added or updated from HR or other external solutions to ºÚÁϺ£½Ç91Èë¿Ú.
Customers with no package or the Device Management Package will need to add the Directory Insights à la carte option. Directory Insights is included in all other .
SCIM DI Integration Events
Event Name | Event Description |
---|---|
idm_integration_activate | Logged when an IT admin attempts to activated new SCIM Identity Management integration. |
idm_integration_update | Logged when an IT admin attempts to update a configured and activated SCIM Identity Management integration. |
idm_integration_reauth | Logged when an IT admin attempts to change the credentials for an activated SCIM Identity Management integration. |
idm_integration_delete | Logged when an IT admin attempts to deactivate an activated SCIM Identity Management integration. |
SCIM DI User Events
Event Name | Event Description |
---|---|
user_create_provision | Logged when ºÚÁϺ£½Ç91Èë¿Ú tries to create a new user in service provider application. |
user_update_provision | Logged when ºÚÁϺ£½Ç91Èë¿Ú tries to update an existing user in service provider application. |
user_deprovision | Logged when ºÚÁϺ£½Ç91Èë¿Ú tries to change an existing user to inactive in the service provider application. |
user_delete_provision | Logged when ºÚÁϺ£½Ç91Èë¿Ú tries to delete an existing user in service provider application. |
user_lookup_provision | Logged when ºÚÁϺ£½Ç91Èë¿Ú encounters an issue when trying to lookup a user to determine if the user needs to be created or updated. |
SCIM DI Group Events
These DI events will only be present if SCIM Groups are supported.
Event Name | Event Description |
---|---|
group_create_provision | Logged when ºÚÁϺ£½Ç91Èë¿Ú tries to create a new group in service provider application. |
group_update_provision | Logged when ºÚÁϺ£½Ç91Èë¿Ú tries to update an existing group in service provider application. |
group_delete_provision | Logged when ºÚÁϺ£½Ç91Èë¿Ú tries to delete an existing group in service provider application. |
Removing the Integration
These are steps for removing the integration in ºÚÁϺ£½Ç91Èë¿Ú. Consult your SP's documentation for any additional steps needed to remove the integration in the SP. Failure to remove the integration successfully for both the SP and ºÚÁϺ£½Ç91Èë¿Ú may result in users losing access to the application.
To deactivate the IdM Integration
- Log in to the .
- Go to USER AUTHENTICATION > SSO Applications.
- Search for the application that you’d like to deactivate and click to open its details panel.
- Under the company name and logo on the left hand panel, click the Deactivate IdM connection link.
- Click confirm.
- If successful, you will receive a confirmation message.
To deactivate the SSO Integration or Bookmark
- Log in to the .
- Go to USER AUTHENTICATION > SSO Applications.
- Search for the application that you’d like to deactivate and click to open its details panel.
- Select the SSO or Bookmark tab.
- Scroll to the bottom of the configuration.
- Click Deactivate SSO or Deactivate Bookmark.
- Click save.
- If successful, you will receive a confirmation message.
To delete the application
- Log in to the .
- Go to USER AUTHENTICATION > SSO Applications.
- Search for the application that you’d like to delete.
- Check the box next to the application to select it.
- Click Delete.
- Enter the number of the applications you are deleting
- Click Delete Application.
- If successful, you will see an application deletion confirmation notification.