--- stage: Govern group: Authentication info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments type: reference --- # Example group SAML and SCIM configurations **(PREMIUM SAAS)** These are notes and screenshots regarding Group SAML and SCIM that the GitLab Support Team sometimes uses while troubleshooting, but which do not fit into the official documentation. GitLab is making this public, so that anyone can make use of the Support team's collected knowledge. Refer to the GitLab [Group SAML](index.md) documentation for information on the feature and how to set it up. When troubleshooting a SAML configuration, GitLab team members will frequently start with the [SAML troubleshooting section](index.md#troubleshooting). They may then set up a test configuration of the desired identity provider. We include example screenshots in this section. ## SAML and SCIM screenshots This section includes relevant screenshots of the following example configurations of [Group SAML](index.md) and [Group SCIM](scim_setup.md): - [Azure Active Directory](#azure-active-directory) - [Google Workspace](#google-workspace) - [Okta](#okta) - [OneLogin](#onelogin) WARNING: These screenshots are updated only as needed by GitLab Support. They are **not** official documentation. If you are currently having an issue with GitLab, you may want to check your [support options](https://about.gitlab.com/support/). ## Azure Active Directory This section has screenshots for the elements of Azure Active Directory configuration. ### Basic SAML app configuration ![Azure AD basic SAML](img/AzureAD-basic_SAML.png) ### User claims and attributes ![Azure AD user claims](img/AzureAD-claims.png) NOTE: Attribute names starting with phrases such as `http://schemas.microsoft.com/ws/2008/06/identity/claims/` are not supported. ### SCIM mapping Provisioning: ![Azure AD SCIM Provisioning](img/AzureAD-scim_provisioning.png) ### Attribute mapping ![Azure AD SCIM Attribute Mapping](img/AzureAD-scim_attribute_mapping.png) ### Group Sync ![Azure Group Claims](img/azure_configure_group_claim.png) Using the **Group ID** source attribute requires users to enter the group ID or object ID when configuring SAML group links. If available, you can add user-friendly group names instead. When setting up Azure group claims: 1. Select the **sAMAccountName** source attribute. 1. Enter a group name. You can specify a name up to 256 characters long. 1. To ensure the attribute is part of the assertion, select **Emit group names for cloud-only groups**. [Azure AD limits the number of groups that can be sent in a SAML response to 150](https://support.esri.com/en-us/knowledge-base/000022190). If a user is a member of more than 150 groups, Azure does not include that user's group claim in the SAML response. ## Google Workspace ### Basic SAML app configuration ![Google Workspace basic SAML](img/GoogleWorkspace-basic-SAML_v14_10.png) ### User claims and attributes ![Google Workspace user claims](img/GoogleWorkspace-claims_v14_10.png) ### IdP links and certificate NOTE: Google Workspace displays a SHA256 fingerprint. To retrieve the SHA1 fingerprint required by GitLab for configuring SAML, download the certificate and calculate the SHA1 certificate fingerprint. ![Google Workspace Links and Certificate](img/GoogleWorkspace-linkscert_v14_10.png) ## Okta ### Basic SAML app configuration for GitLab.com groups ![Okta basic SAML](img/Okta-GroupSAML.png) ### Basic SAML app configuration for GitLab self-managed ![Okta admin panel view](img/Okta-SM.png) ### User claims and attributes ![Okta Attributes](img/Okta-attributes.png) ### Group Sync ![Okta Group attribute](img/Okta-GroupAttribute.png) ### Advanced SAML app settings (defaults) ![Okta Advanced Settings](img/Okta-advancedsettings.png) ### IdP links and certificate ![Okta Links and Certificate](img/Okta-linkscert.png) ### SAML sign on settings ![Okta SAML settings](img/okta_saml_settings.png) ### SCIM settings Setting the username for the newly provisioned users when assigning them the SCIM app: ![Assigning SCIM app to users on Okta](img/okta_setting_username.png) ## OneLogin ### Basic SAML app configuration ![OneLogin application details](img/OneLogin-app_details.png) ### Parameters ![OneLogin application details](img/OneLogin-parameters.png) ### Adding a user ![OneLogin user add](img/OneLogin-userAdd.png) ### SSO settings ![OneLogin SSO settings](img/OneLogin-SSOsettings.png) ## SAML response example When a user signs in using SAML, GitLab receives a SAML response. The SAML response can be found in `production.log` logs as a base64-encoded message. Locate the response by searching for `SAMLResponse`. The decoded SAML response is in XML format. For example: ```xml http://www.okta.com/exk2y6j57o1Pdr2lI8qh7 neiQvv9d3OgS4GZW8Nptp4JhjpKs3GCefibn+vmRgk4= dMsQX8ivi...HMuKGhyLRvabGU6CuPrf7== MIIDq...cptGr3vN9TQ== http://www.okta.com/exk2y6j57o1Pdr2lI8qh7 MaIsoi8hbT9gsi/mNZsz449mUuAcuEWY0q3bc4asOQs= dMsQX8ivi...HMuKGhyLRvabGU6CuPrf7==< MIIDq...cptGr3vN9TQ== useremail@domain.com https://gitlab.example.com/ urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport useremail@domain.com John Doe Super-awesome-group ```