InfoGrab DocsInfoGrab Docs

서비스 계정

요약

서비스 계정은 개별 사람보다는 비인간 엔티티를 나타내는 사용자 계정입니다. 서비스 계정은 개인 액세스 토큰으로 인증합니다. 서비스 계정 API를 통해 서비스 계정을 관리할 수도 있습니다. 만들 수 있는 서비스 계정 수는 구독 및 제품에 따라 다릅니다:

히스토리
  • Free 티어 서비스 계정:
  • Introduced in GitLab 18.10
  • Generally available in GitLab 18.11. Feature flag removed.
  • Project service accounts introduced in GitLab 18.10
  • Subgroup service accounts introduced in GitLab 18.10
  • 서브그룹 및 프로젝트 서비스 계정 generally available in GitLab 18.11. Feature flags allow_subgroups_to_create_service_accounts and allow_projects_to_create_service_accounts removed.

서비스 계정은 개별 사람보다는 비인간 엔티티를 나타내는 사용자 계정입니다. 자동화된 작업을 수행하거나 데이터에 액세스하거나 예약된 프로세스를 실행하는 데 서비스 계정을 사용합니다. 서비스 계정은 팀 구성원의 변경에 관계없이 자격 증명이 안정적으로 유지되어야 하는 파이프라인 또는 타사 통합에서 일반적으로 사용됩니다.

서비스 계정은 개인 액세스 토큰으로 인증합니다. 패키지 및 컨테이너 레지스트리와 상호 작용하고, Git 작업을 수행하고, API에 액세스할 수 있습니다.

서비스 계정의 특성:

  • 시트를 사용하지 않습니다.
  • 청구 대상 사용자 또는 내부 사용자가 아닙니다.
  • 항상 외부 사용자로 표시됩니다.
  • UI를 통해 GitLab에 로그인할 수 없습니다.
  • LDAP과 같은 서비스를 통해 관리할 수 없습니다.
  • 서브그룹 또는 프로젝트에서 프로비저닝할 때 최상위 그룹 또는 다른 서비스 계정을 만들 수 없습니다.
  • 일반 사용자가 아닌 서비스 계정으로 그룹 및 프로젝트 구성원 목록에 표시됩니다.
  • 사용자 정의 이메일 주소를 추가하지 않는 한 알림 이메일을 받지 않습니다.
  • GitLab의 평가판에서 사용 가능합니다. GitLab.com에서 최상위 그룹의 소유자는 먼저 신원을 확인해야 합니다.

서비스 계정 API를 통해 서비스 계정을 관리할 수도 있습니다. 서비스 계정의 SSH 키를 관리하려면 사용자 SSH 및 GPG 키 API를 사용합니다. GitLab UI를 통해 SSH 키를 관리할 수는 없습니다.

만들 수 있는 서비스 계정 수는 구독 및 제품에 따라 다릅니다:

  • GitLab Premium 및 Ultimate에서는 모든 제품에 대해 무제한으로 서비스 계정을 만들 수 있습니다.
  • GitLab Free에서는 제품에 따라 제한이 다릅니다:
    • GitLab.com의 경우 각 최상위 그룹당 최대 100개의 서비스 계정을 만들 수 있습니다. 여기에는 서브그룹 또는 프로젝트에서 만든 서비스 계정이 포함됩니다.
    • GitLab Self-Managed의 경우 인스턴스 전체에서 최대 100개의 서비스 계정을 만들 수 있습니다. 여기에는 인스턴스, 그룹 또는 프로젝트 수준에서 만든 서비스 계정이 포함됩니다.

서비스 계정 유형#

서비스 계정에는 세 가지 유형이 있으며 각각 다른 범위와 사전 요구 사항이 있습니다:

인스턴스 서비스 계정은 관리자 영역을 통해 만들어지며 인스턴스의 모든 그룹이나 프로젝트에 초대할 수 있습니다.

사전 요구 사항:

  • 인스턴스에 대한 관리자 액세스.

그룹 서비스 계정은 특정 그룹에 의해 만들어지며 만들어진 그룹 또는 하위 서브그룹이나 프로젝트에 초대할 수 있습니다. 최상위 그룹 또는 서비스 계정을 만들 수 없습니다.

사전 요구 사항:

  • GitLab.com에서는 그룹에 대한 소유자 역할이 있어야 합니다.
  • GitLab Self-Managed 또는 GitLab Dedicated에서는 다음 중 하나여야 합니다:

프로젝트 서비스 계정은 특정 프로젝트에 의해 만들어지며 해당 프로젝트에서만 사용 가능합니다. 최상위 그룹 또는 서비스 계정을 만들 수 없습니다.

사전 요구 사항:

  • GitLab.com에서는 프로젝트에 대한 유지 관리자 또는 소유자 역할이 있어야 합니다.
  • GitLab Self-Managed 또는 GitLab Dedicated에서는 다음 중 하나여야 합니다:
    • 인스턴스 관리자.
    • 프로젝트에서 유지 관리자 또는 소유자 역할.

서비스 계정 보기 및 관리#

히스토리
  • Introduced for GitLab.com in GitLab 17.11

서비스 계정 페이지는 그룹, 프로젝트 또는 인스턴스의 서비스 계정에 대한 정보를 표시합니다. 각 그룹, 프로젝트 및 GitLab Self-Managed 인스턴스에는 별도의 서비스 계정 페이지가 있습니다. 이 페이지에서 다음을 수행할 수 있습니다:

  • 그룹 또는 인스턴스의 모든 서비스 계정 보기.
  • 서비스 계정 삭제.
  • 서비스 계정의 이름 또는 사용자 이름 편집.
  • 서비스 계정의 개인 액세스 토큰 관리.

전체 인스턴스의 서비스 계정을 보려면:

  1. 오른쪽 상단에서 관리자를 선택합니다.
  2. 왼쪽 사이드바에서 설정 > 서비스 계정을 선택합니다.

그룹의 서비스 계정을 보려면:

  1. 상단 바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. 왼쪽 사이드바에서 설정 > 서비스 계정을 선택합니다.

프로젝트의 서비스 계정을 보려면:

  1. 상단 바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 왼쪽 사이드바에서 설정 > 서비스 계정을 선택합니다.

서비스 계정 만들기#

히스토리
  • Introduced for GitLab.com in GitLab 16.3
  • Top-level group owners can create Service accounts introduced in GitLab 17.5 with a feature flag named allow_top_level_group_owners_to_create_service_accounts for GitLab Self-Managed. Disabled by default.
  • Top-level group owners can create Service accounts generally available in GitLab 17.6. Feature flag allow_top_level_group_owners_to_create_service_accounts removed.

GitLab.com에서는 최상위 그룹 소유자만 서비스 계정을 만들 수 있습니다.

기본적으로 GitLab Self-Managed 및 GitLab Dedicated에서는 관리자만 두 유형의 서비스 계정을 만들 수 있습니다. 그러나 최상위 그룹 소유자가 그룹 서비스 계정을 만들 수 있도록 인스턴스를 구성할 수 있습니다.

만들 수 있는 서비스 계정 수는 구독 및 제품에 따라 다릅니다:

  • GitLab Premium 및 Ultimate에서는 모든 제품에 대해 무제한으로 서비스 계정을 만들 수 있습니다.
  • GitLab Free에서는 제품에 따라 제한이 다릅니다:
    • GitLab.com의 경우 각 최상위 그룹당 최대 100개의 서비스 계정을 만들 수 있습니다. 여기에는 서브그룹 또는 프로젝트에서 만든 서비스 계정이 포함됩니다.
    • GitLab Self-Managed의 경우 인스턴스 전체에서 최대 100개의 서비스 계정을 만들 수 있습니다. 여기에는 인스턴스, 그룹 또는 프로젝트 수준에서 만든 서비스 계정이 포함됩니다.

서비스 계정을 만들려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정 추가를 선택합니다.
  3. 서비스 계정의 이름을 입력합니다. 이름을 기반으로 사용자 이름이 자동으로 생성됩니다. 필요한 경우 사용자 이름을 수정할 수 있습니다.
  4. 서비스 계정 만들기를 선택합니다.

서비스 계정 편집#

히스토리
  • Added username limits for service accounts with composite identities in GitLab 18.9.

서비스 계정의 이름 또는 사용자 이름을 편집할 수 있습니다.

Note

합성 ID와 연결된 서비스 계정의 사용자 이름은 업데이트할 수 없습니다.

서비스 계정을 편집하려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 편집을 선택합니다.
  4. 서비스 계정의 이름 또는 사용자 이름을 편집합니다.
  5. 변경 사항 저장을 선택합니다.

그룹 또는 프로젝트에 서비스 계정 추가#

서비스 계정은 그룹 또는 프로젝트의 구성원으로 추가될 때까지 제한된 액세스 권한을 가집니다. 그룹 또는 프로젝트에 원하는 수의 서비스 계정을 추가할 수 있으며 각 서비스 계정은 각 그룹, 서브그룹 또는 프로젝트에서 다른 역할을 가질 수 있습니다.

서비스 계정 액세스는 서비스 계정 유형에 따라 다릅니다:

  • 인스턴스 서비스 계정: 인스턴스의 모든 그룹 또는 프로젝트에 초대할 수 있습니다.
  • 그룹 서비스 계정: 만들어진 그룹 또는 하위 서브그룹이나 프로젝트에 초대할 수 있습니다.
  • 프로젝트 서비스 계정: 만들어진 프로젝트에만 초대할 수 있습니다.

그룹이 다른 그룹과 공유되면 서비스 계정을 포함한 해당 그룹의 모든 구성원이 공유 그룹에 대한 액세스 권한을 얻습니다.

다음을 사용하여 그룹 및 프로젝트에 서비스 계정을 할당할 수 있습니다:

Note

전역 SAML 그룹 구성원 잠금 또는 전역 LDAP 그룹 구성원 잠금 설정이 활성화된 경우 API를 사용하여 서비스 계정 구성원을 제어해야 합니다.

서비스 계정으로 프로젝트 포크#

서비스 계정은 프로젝트 포크 API를 통해 프로젝트를 포크할 수 있지만 개인 네임스페이스로 포크할 수는 없습니다. 서비스 계정으로 포크할 때는 대상 그룹 네임스페이스를 지정해야 합니다.

사전 요구 사항:

  • 서비스 계정이 대상 그룹의 구성원이며 개발자 역할을 가집니다.
  • 서비스 계정의 개인 액세스 토큰에 api 범위가 설정되어 있습니다.

서비스 계정을 사용하여 프로젝트를 포크하려면:

  1. 포크가 만들어질 대상 그룹을 식별합니다.

  2. 서비스 계정이 적절한 권한이 있는 해당 그룹의 구성원인지 확인합니다.

  3. namespace_id 또는 namespace_path를 사용하여 프로젝트 포크 API를 사용합니다:

     curl --request POST --header "PRIVATE-TOKEN: <service_account_token>" \
       --data "namespace_path=target-group" \
       "https://gitlab.example.com/api/v4/projects/<project_id>/fork"
    

서비스 계정 삭제#

서비스 계정을 삭제하면 해당 계정이 수행한 기여가 유지되고 소유권이 고스트 사용자에게 이전됩니다. 이러한 기여에는 머지 리퀘스트, 이슈, 프로젝트, 그룹과 같은 활동이 포함될 수 있습니다.

서비스 계정을 삭제하려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 계정 삭제를 선택합니다.
  4. 서비스 계정의 이름을 입력합니다.
  5. 사용자 삭제를 선택합니다.

서비스 계정과 해당 계정이 수행한 기여를 삭제할 수도 있습니다. 이러한 기여에는 머지 리퀘스트, 이슈, 그룹, 프로젝트와 같은 활동이 포함될 수 있습니다.

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 계정 및 기여 삭제를 선택합니다.
  4. 서비스 계정의 이름을 입력합니다.
  5. 사용자 및 기여 삭제를 선택합니다.

API를 통해 서비스 계정을 삭제할 수도 있습니다.

서비스 계정의 개인 액세스 토큰 보기 및 관리#

개인 액세스 토큰 페이지는 최상위 그룹 또는 인스턴스의 서비스 계정과 관련된 개인 액세스 토큰에 대한 정보를 표시합니다. 이 페이지에서 다음을 수행할 수 있습니다:

  • 개인 액세스 토큰 필터링, 정렬 및 세부 정보 보기.
  • 개인 액세스 토큰 교체.
  • 개인 액세스 토큰 취소.

API를 통해 서비스 계정의 개인 액세스 토큰을 관리할 수도 있습니다.

서비스 계정의 개인 액세스 토큰 페이지를 보려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 액세스 토큰 관리를 선택합니다.

서비스 계정에 대한 개인 액세스 토큰 만들기#

서비스 계정을 사용하려면 요청을 인증하기 위한 개인 액세스 토큰을 만들어야 합니다.

서비스 계정에 대한 개인 액세스 토큰을 만들려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 액세스 토큰 관리를 선택합니다.
  4. 새 토큰 추가를 선택합니다.
  5. 토큰 이름에 토큰의 이름을 입력합니다.
  6. 선택 사항. 토큰 설명에 토큰의 설명을 입력합니다.
  7. 만료 날짜에 토큰의 만료 날짜를 입력합니다.
    • 토큰은 해당 날짜 UTC 자정에 만료됩니다. 만료 날짜가 2024-01-01인 토큰은 2024-01-01 00:00:00 UTC에 만료됩니다.
    • 만료 날짜를 입력하지 않으면 만료 날짜는 자동으로 현재 날짜로부터 365일 후로 설정됩니다.
    • 기본적으로 이 날짜는 현재 날짜로부터 최대 365일 후까지 가능합니다. GitLab 17.6 이상에서는 이 제한을 400일로 연장할 수 있습니다.
  8. 원하는 범위를 선택합니다.
  9. 개인 액세스 토큰 만들기를 선택합니다.

개인 액세스 토큰 교체#

현재 토큰을 무효화하고 새 값을 생성하기 위해 개인 액세스 토큰을 교체할 수 있습니다.

Warning

이 작업은 취소할 수 없습니다. 교체된 토큰에 의존하는 서비스가 작동을 멈춥니다.

서비스 계정에 대한 개인 액세스 토큰을 교체하려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 액세스 토큰 관리를 선택합니다.
  4. 활성 토큰 옆에서 세로 줄임표(⋮)를 선택합니다.
  5. 교체를 선택합니다.
  6. 확인 대화 상자에서 교체를 선택합니다.

개인 액세스 토큰 취소#

현재 토큰을 무효화하기 위해 개인 액세스 토큰을 취소할 수 있습니다.

Warning

이 작업은 취소할 수 없습니다. 취소된 토큰에 의존하는 서비스가 작동을 멈춥니다.

서비스 계정에 대한 개인 액세스 토큰을 취소하려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 액세스 토큰 관리를 선택합니다.
  4. 활성 토큰 옆에서 세로 줄임표(⋮)를 선택합니다.
  5. 취소를 선택합니다.
  6. 확인 대화 상자에서 취소를 선택합니다.

속도 제한#

서비스 계정에는 속도 제한이 적용됩니다:

관련 항목#

서비스 계정

GitLab v19.2
Tier: Free, Premium, Ultimate
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
원문 보기
요약

서비스 계정은 개별 사람보다는 비인간 엔티티를 나타내는 사용자 계정입니다. 서비스 계정은 개인 액세스 토큰으로 인증합니다. 서비스 계정 API를 통해 서비스 계정을 관리할 수도 있습니다. 만들 수 있는 서비스 계정 수는 구독 및 제품에 따라 다릅니다:

히스토리
  • Free 티어 서비스 계정:
  • Introduced in GitLab 18.10
  • Generally available in GitLab 18.11. Feature flag removed.
  • Project service accounts introduced in GitLab 18.10
  • Subgroup service accounts introduced in GitLab 18.10
  • 서브그룹 및 프로젝트 서비스 계정 generally available in GitLab 18.11. Feature flags allow_subgroups_to_create_service_accounts and allow_projects_to_create_service_accounts removed.

서비스 계정은 개별 사람보다는 비인간 엔티티를 나타내는 사용자 계정입니다. 자동화된 작업을 수행하거나 데이터에 액세스하거나 예약된 프로세스를 실행하는 데 서비스 계정을 사용합니다. 서비스 계정은 팀 구성원의 변경에 관계없이 자격 증명이 안정적으로 유지되어야 하는 파이프라인 또는 타사 통합에서 일반적으로 사용됩니다.

서비스 계정은 개인 액세스 토큰으로 인증합니다. 패키지 및 컨테이너 레지스트리와 상호 작용하고, Git 작업을 수행하고, API에 액세스할 수 있습니다.

서비스 계정의 특성:

  • 시트를 사용하지 않습니다.
  • 청구 대상 사용자 또는 내부 사용자가 아닙니다.
  • 항상 외부 사용자로 표시됩니다.
  • UI를 통해 GitLab에 로그인할 수 없습니다.
  • LDAP과 같은 서비스를 통해 관리할 수 없습니다.
  • 서브그룹 또는 프로젝트에서 프로비저닝할 때 최상위 그룹 또는 다른 서비스 계정을 만들 수 없습니다.
  • 일반 사용자가 아닌 서비스 계정으로 그룹 및 프로젝트 구성원 목록에 표시됩니다.
  • 사용자 정의 이메일 주소를 추가하지 않는 한 알림 이메일을 받지 않습니다.
  • GitLab의 평가판에서 사용 가능합니다. GitLab.com에서 최상위 그룹의 소유자는 먼저 신원을 확인해야 합니다.

서비스 계정 API를 통해 서비스 계정을 관리할 수도 있습니다. 서비스 계정의 SSH 키를 관리하려면 사용자 SSH 및 GPG 키 API를 사용합니다. GitLab UI를 통해 SSH 키를 관리할 수는 없습니다.

만들 수 있는 서비스 계정 수는 구독 및 제품에 따라 다릅니다:

  • GitLab Premium 및 Ultimate에서는 모든 제품에 대해 무제한으로 서비스 계정을 만들 수 있습니다.
  • GitLab Free에서는 제품에 따라 제한이 다릅니다:
    • GitLab.com의 경우 각 최상위 그룹당 최대 100개의 서비스 계정을 만들 수 있습니다. 여기에는 서브그룹 또는 프로젝트에서 만든 서비스 계정이 포함됩니다.
    • GitLab Self-Managed의 경우 인스턴스 전체에서 최대 100개의 서비스 계정을 만들 수 있습니다. 여기에는 인스턴스, 그룹 또는 프로젝트 수준에서 만든 서비스 계정이 포함됩니다.

서비스 계정 유형#

서비스 계정에는 세 가지 유형이 있으며 각각 다른 범위와 사전 요구 사항이 있습니다:

인스턴스 서비스 계정은 관리자 영역을 통해 만들어지며 인스턴스의 모든 그룹이나 프로젝트에 초대할 수 있습니다.

사전 요구 사항:

  • 인스턴스에 대한 관리자 액세스.

그룹 서비스 계정은 특정 그룹에 의해 만들어지며 만들어진 그룹 또는 하위 서브그룹이나 프로젝트에 초대할 수 있습니다. 최상위 그룹 또는 서비스 계정을 만들 수 없습니다.

사전 요구 사항:

  • GitLab.com에서는 그룹에 대한 소유자 역할이 있어야 합니다.
  • GitLab Self-Managed 또는 GitLab Dedicated에서는 다음 중 하나여야 합니다:

프로젝트 서비스 계정은 특정 프로젝트에 의해 만들어지며 해당 프로젝트에서만 사용 가능합니다. 최상위 그룹 또는 서비스 계정을 만들 수 없습니다.

사전 요구 사항:

  • GitLab.com에서는 프로젝트에 대한 유지 관리자 또는 소유자 역할이 있어야 합니다.
  • GitLab Self-Managed 또는 GitLab Dedicated에서는 다음 중 하나여야 합니다:
    • 인스턴스 관리자.
    • 프로젝트에서 유지 관리자 또는 소유자 역할.

서비스 계정 보기 및 관리#

히스토리
  • Introduced for GitLab.com in GitLab 17.11

서비스 계정 페이지는 그룹, 프로젝트 또는 인스턴스의 서비스 계정에 대한 정보를 표시합니다. 각 그룹, 프로젝트 및 GitLab Self-Managed 인스턴스에는 별도의 서비스 계정 페이지가 있습니다. 이 페이지에서 다음을 수행할 수 있습니다:

  • 그룹 또는 인스턴스의 모든 서비스 계정 보기.
  • 서비스 계정 삭제.
  • 서비스 계정의 이름 또는 사용자 이름 편집.
  • 서비스 계정의 개인 액세스 토큰 관리.

전체 인스턴스의 서비스 계정을 보려면:

  1. 오른쪽 상단에서 관리자를 선택합니다.
  2. 왼쪽 사이드바에서 설정 > 서비스 계정을 선택합니다.

그룹의 서비스 계정을 보려면:

  1. 상단 바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. 왼쪽 사이드바에서 설정 > 서비스 계정을 선택합니다.

프로젝트의 서비스 계정을 보려면:

  1. 상단 바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 왼쪽 사이드바에서 설정 > 서비스 계정을 선택합니다.

서비스 계정 만들기#

히스토리
  • Introduced for GitLab.com in GitLab 16.3
  • Top-level group owners can create Service accounts introduced in GitLab 17.5 with a feature flag named allow_top_level_group_owners_to_create_service_accounts for GitLab Self-Managed. Disabled by default.
  • Top-level group owners can create Service accounts generally available in GitLab 17.6. Feature flag allow_top_level_group_owners_to_create_service_accounts removed.

GitLab.com에서는 최상위 그룹 소유자만 서비스 계정을 만들 수 있습니다.

기본적으로 GitLab Self-Managed 및 GitLab Dedicated에서는 관리자만 두 유형의 서비스 계정을 만들 수 있습니다. 그러나 최상위 그룹 소유자가 그룹 서비스 계정을 만들 수 있도록 인스턴스를 구성할 수 있습니다.

만들 수 있는 서비스 계정 수는 구독 및 제품에 따라 다릅니다:

  • GitLab Premium 및 Ultimate에서는 모든 제품에 대해 무제한으로 서비스 계정을 만들 수 있습니다.
  • GitLab Free에서는 제품에 따라 제한이 다릅니다:
    • GitLab.com의 경우 각 최상위 그룹당 최대 100개의 서비스 계정을 만들 수 있습니다. 여기에는 서브그룹 또는 프로젝트에서 만든 서비스 계정이 포함됩니다.
    • GitLab Self-Managed의 경우 인스턴스 전체에서 최대 100개의 서비스 계정을 만들 수 있습니다. 여기에는 인스턴스, 그룹 또는 프로젝트 수준에서 만든 서비스 계정이 포함됩니다.

서비스 계정을 만들려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정 추가를 선택합니다.
  3. 서비스 계정의 이름을 입력합니다. 이름을 기반으로 사용자 이름이 자동으로 생성됩니다. 필요한 경우 사용자 이름을 수정할 수 있습니다.
  4. 서비스 계정 만들기를 선택합니다.

서비스 계정 편집#

히스토리
  • Added username limits for service accounts with composite identities in GitLab 18.9.

서비스 계정의 이름 또는 사용자 이름을 편집할 수 있습니다.

Note

합성 ID와 연결된 서비스 계정의 사용자 이름은 업데이트할 수 없습니다.

서비스 계정을 편집하려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 편집을 선택합니다.
  4. 서비스 계정의 이름 또는 사용자 이름을 편집합니다.
  5. 변경 사항 저장을 선택합니다.

그룹 또는 프로젝트에 서비스 계정 추가#

서비스 계정은 그룹 또는 프로젝트의 구성원으로 추가될 때까지 제한된 액세스 권한을 가집니다. 그룹 또는 프로젝트에 원하는 수의 서비스 계정을 추가할 수 있으며 각 서비스 계정은 각 그룹, 서브그룹 또는 프로젝트에서 다른 역할을 가질 수 있습니다.

서비스 계정 액세스는 서비스 계정 유형에 따라 다릅니다:

  • 인스턴스 서비스 계정: 인스턴스의 모든 그룹 또는 프로젝트에 초대할 수 있습니다.
  • 그룹 서비스 계정: 만들어진 그룹 또는 하위 서브그룹이나 프로젝트에 초대할 수 있습니다.
  • 프로젝트 서비스 계정: 만들어진 프로젝트에만 초대할 수 있습니다.

그룹이 다른 그룹과 공유되면 서비스 계정을 포함한 해당 그룹의 모든 구성원이 공유 그룹에 대한 액세스 권한을 얻습니다.

다음을 사용하여 그룹 및 프로젝트에 서비스 계정을 할당할 수 있습니다:

Note

전역 SAML 그룹 구성원 잠금 또는 전역 LDAP 그룹 구성원 잠금 설정이 활성화된 경우 API를 사용하여 서비스 계정 구성원을 제어해야 합니다.

서비스 계정으로 프로젝트 포크#

서비스 계정은 프로젝트 포크 API를 통해 프로젝트를 포크할 수 있지만 개인 네임스페이스로 포크할 수는 없습니다. 서비스 계정으로 포크할 때는 대상 그룹 네임스페이스를 지정해야 합니다.

사전 요구 사항:

  • 서비스 계정이 대상 그룹의 구성원이며 개발자 역할을 가집니다.
  • 서비스 계정의 개인 액세스 토큰에 api 범위가 설정되어 있습니다.

서비스 계정을 사용하여 프로젝트를 포크하려면:

  1. 포크가 만들어질 대상 그룹을 식별합니다.

  2. 서비스 계정이 적절한 권한이 있는 해당 그룹의 구성원인지 확인합니다.

  3. namespace_id 또는 namespace_path를 사용하여 프로젝트 포크 API를 사용합니다:

     curl --request POST --header "PRIVATE-TOKEN: <service_account_token>" \
       --data "namespace_path=target-group" \
       "https://gitlab.example.com/api/v4/projects/<project_id>/fork"
    

서비스 계정 삭제#

서비스 계정을 삭제하면 해당 계정이 수행한 기여가 유지되고 소유권이 고스트 사용자에게 이전됩니다. 이러한 기여에는 머지 리퀘스트, 이슈, 프로젝트, 그룹과 같은 활동이 포함될 수 있습니다.

서비스 계정을 삭제하려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 계정 삭제를 선택합니다.
  4. 서비스 계정의 이름을 입력합니다.
  5. 사용자 삭제를 선택합니다.

서비스 계정과 해당 계정이 수행한 기여를 삭제할 수도 있습니다. 이러한 기여에는 머지 리퀘스트, 이슈, 그룹, 프로젝트와 같은 활동이 포함될 수 있습니다.

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 계정 및 기여 삭제를 선택합니다.
  4. 서비스 계정의 이름을 입력합니다.
  5. 사용자 및 기여 삭제를 선택합니다.

API를 통해 서비스 계정을 삭제할 수도 있습니다.

서비스 계정의 개인 액세스 토큰 보기 및 관리#

개인 액세스 토큰 페이지는 최상위 그룹 또는 인스턴스의 서비스 계정과 관련된 개인 액세스 토큰에 대한 정보를 표시합니다. 이 페이지에서 다음을 수행할 수 있습니다:

  • 개인 액세스 토큰 필터링, 정렬 및 세부 정보 보기.
  • 개인 액세스 토큰 교체.
  • 개인 액세스 토큰 취소.

API를 통해 서비스 계정의 개인 액세스 토큰을 관리할 수도 있습니다.

서비스 계정의 개인 액세스 토큰 페이지를 보려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 액세스 토큰 관리를 선택합니다.

서비스 계정에 대한 개인 액세스 토큰 만들기#

서비스 계정을 사용하려면 요청을 인증하기 위한 개인 액세스 토큰을 만들어야 합니다.

서비스 계정에 대한 개인 액세스 토큰을 만들려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 액세스 토큰 관리를 선택합니다.
  4. 새 토큰 추가를 선택합니다.
  5. 토큰 이름에 토큰의 이름을 입력합니다.
  6. 선택 사항. 토큰 설명에 토큰의 설명을 입력합니다.
  7. 만료 날짜에 토큰의 만료 날짜를 입력합니다.
    • 토큰은 해당 날짜 UTC 자정에 만료됩니다. 만료 날짜가 2024-01-01인 토큰은 2024-01-01 00:00:00 UTC에 만료됩니다.
    • 만료 날짜를 입력하지 않으면 만료 날짜는 자동으로 현재 날짜로부터 365일 후로 설정됩니다.
    • 기본적으로 이 날짜는 현재 날짜로부터 최대 365일 후까지 가능합니다. GitLab 17.6 이상에서는 이 제한을 400일로 연장할 수 있습니다.
  8. 원하는 범위를 선택합니다.
  9. 개인 액세스 토큰 만들기를 선택합니다.

개인 액세스 토큰 교체#

현재 토큰을 무효화하고 새 값을 생성하기 위해 개인 액세스 토큰을 교체할 수 있습니다.

Warning

이 작업은 취소할 수 없습니다. 교체된 토큰에 의존하는 서비스가 작동을 멈춥니다.

서비스 계정에 대한 개인 액세스 토큰을 교체하려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 액세스 토큰 관리를 선택합니다.
  4. 활성 토큰 옆에서 세로 줄임표(⋮)를 선택합니다.
  5. 교체를 선택합니다.
  6. 확인 대화 상자에서 교체를 선택합니다.

개인 액세스 토큰 취소#

현재 토큰을 무효화하기 위해 개인 액세스 토큰을 취소할 수 있습니다.

Warning

이 작업은 취소할 수 없습니다. 취소된 토큰에 의존하는 서비스가 작동을 멈춥니다.

서비스 계정에 대한 개인 액세스 토큰을 취소하려면:

  1. 서비스 계정 페이지로 이동합니다.
  2. 서비스 계정을 식별합니다.
  3. 세로 줄임표(⋮) > 액세스 토큰 관리를 선택합니다.
  4. 활성 토큰 옆에서 세로 줄임표(⋮)를 선택합니다.
  5. 취소를 선택합니다.
  6. 확인 대화 상자에서 취소를 선택합니다.

속도 제한#

서비스 계정에는 속도 제한이 적용됩니다:

관련 항목#