Skip to content

The GitLab Service Account Credential Provider Integration allows you to create a Managed GitLab Account Credential Provider, which provides credential lifecycle management and rotation capabilities for secure authentication between your GitLab instances and other Client Workloads. This page details everything you need to create a GitLab Service Account Credential Provider Integration.

This integration requires the use of two types of GitLab accounts:

  • GitLab Administrator account. This administrator account performs the initial authorization for the Aembit Credential Provider Integration to start communicating with GitLab.

  • GitLab Service Account that the preceding GitLab Administrator account eventually creates. This service account performs credential lifecycle management for the Managed GitLab Account Credential Provider.

See How the GitLab Service Account integration works for more details.

Configure a GitLab service account integration

Section titled “Configure a GitLab service account integration”

To create a GitLab service account integration, follow these steps:

  1. Log into your Aembit Tenant, and go to Credential Providers -> Integrations in the left sidebar.

    Credential Provider - Integrations tab

  2. (Optional) In the top right corner, select the Resource Set that you want this Credential Provider Integration to reside.

  3. Click + New, which displays the Integration pop out menu.

  4. Select GitLab Service Account, and enter a Display Name and optional Description.

  5. Fill out the remaining fields:

    • Token Endpoint URL - Enter the URL of your GitLab Dedicated or GitLab Self-Managed instance.

      See GitLab subscriptions for more details.

    • Top Level Group ID - n/a
      Aembit disables this field when using GitLab Dedicated or Self-Managed instance URLs.

    • Personal Access Token - Enter the GitLab Personal Access Token that’s associated with your instance-level Administrator service account that must have api and self_rotate scopes.

      If you don’t already have a GitLab service account with a PAT, see Create a GitLab service account and PAT.

    The form should look similar to the following screenshot:

    Completed GitLab Service Account Credential Provider Integration

  6. Click Save.

    Aembit displays the new integration in the list of Credential Provider Integrations.

To create a GitLab service account PAT, you must have Administrator access to your GitLab Admin area and GitLab APIs.

This process has two main parts:

  1. Create a PAT for your GitLab Administrator account using the GitLab UI.

  2. Create a GitLab service account and PAT using either the GitLab UI or GitLab API.

To create a PAT for your GitLab Administrator account, follow these steps:

  1. Log into your GitLab Admin area with an Administrator user account.

  2. See Create a personal access token in the GitLab docs to create a PAT for your Administrator user account (not the service account).

  3. Keep the GitLab Admin area UI open, as you need it in the next step.

To create a GitLab service account and PAT, use either the GitLab UI or GitLab API:

  1. Follow GitLab’s documentation to Create a Service Account using the GitLab UI.

  2. Follow GitLab’s documentation to Create a Personal Access Token for the service account you just created.
    Ensure that you select the following scopes:

    • api
    • self_rotate
  3. Copy the token value and store it in a secure location as you won’t be able to view it again.

  4. Use this token to create the GitLab Service Account Credential Provider Integration in your Aembit Tenant.