Cloud Connector: 구성
GitLab Rails 인스턴스는 Cloud Connector Service Access Token을 사용하여 백엔드 서비스에 액세스합니다.
- 이 토큰은 매일 CustomersDot에서 GitLab 인스턴스로 동기화되어 인스턴스의 로컬 데이터베이스에 저장됩니다.
- GitLab.com의 경우, 이 단계는 필요하지 않으며, 대신 각 요청마다 단기 토큰을 발급합니다.
Cloud Connector JWT에는 해당 토큰이 유효한 액세스 범위를 정의하는 액세스 범위 목록을 나타내는 사용자 정의 클레임이 포함되어 있습니다.
구성 구조
유료 기능이 GitLab 티어 및 애드온에 어떻게 번들링되는지에 대한 정보는 YAML 파일에 구성되어 저장됩니다.
services:
code_suggestions:
backend: 'gitlab-ai-gateway'
cut_off_date: 2024-02-15 00:00:00 UTC
min_gitlab_version: '16.8'
bundled_with:
duo_pro:
unit_primitives:
- code_suggestions
duo_chat:
backend: 'gitlab-ai-gateway'
min_gitlab_version_for_beta: '16.8'
min_gitlab_version: '16.9'
bundled_with:
duo_pro:
unit_primitives:
- duo_chat
- documentation_search
용어
구성에는 다음 정보가 포함됩니다.
-
unit_primitives
: 각 단위 기본 요소는 권한/액세스 범위가 조정할 수 있는 가장 작은 논리적 기능을 나타냅니다. 이는 실제 기능을 나타내며, 이 속성의 값은 서비스 액세스 토큰이 발급될 때 범위로 사용됩니다.새로운
unit_primitive
에 대한 권장되는 명명 규칙은$VERB_$NOUN
이어야 합니다. 예:explain_vulnerability
-
service
: 기능 또는 UP(unit primitive)는 기존 서비스(Duo Chat)의 일부로 제공되거나 독립적인 서비스로 제공될 수 있습니다. 예: documentation_search는 Duo Chat 서비스의 일부로 제공되는 단위 기본 요소를 나타냅니다. -
bundled_with
: 애드온 목록을 나타냅니다. 각 단위 기본 요소는 애드온과 번들링됩니다. 예: Code Suggestions와 Duo Chat는DUO PRO
애드온 아래에서 함께 판매되는 두 가지 기능이었습니다. 동일한 단위 기본 요소는 여러 애드온과 번들링될 수 있습니다. 예: Code Suggestions는DUO PRO
및DUO ENTERPRISE
애드온과 모두 사용할 수 있습니다. -
cut_off_date
: 기능이 무료로 더 이상 사용할 수 없는 날짜를 나타냅니다 (실험적인 경우). 설정되지 않은 경우, 기능은 기본적으로 무료로 사용할 수 있습니다. -
min_gitlab_version
: 기능을 사용하기 위해 필요한 최소한의 GitLab 버전을 나타냅니다. 설정되지 않은 경우, 기능은 모든 GitLab 버전에서 사용할 수 있습니다. -
min_gitlab_version_for_free_access
: 무료 액세스 기간 동안 서비스를 사용하기 위해 필요한 최소한의 GitLab 버전을 나타냅니다. 설정되지 않은 경우, 서비스는 모든 GitLab 버전에서 사용할 수 있습니다. -
backend
: 이 기능을 제공하는 백엔드의 이름입니다. 이름은 토큰 청중 클레임으로 사용됩니다. 예:gitlab-ai-gateway
.
CustomersDot 구성
GitLab 전용 및 자체 호스팅 GitLab 인스턴스에 대한 신뢰 위임은 CustomersDot에게 위임됩니다.
구성은 cloud_connector.yml
에 있으며, GitLab.com 구성의 거의 완벽한 사본입니다.
GitLab.com 구성
GitLab.com 배포는 특별한 신뢰를 즐기기 때문에, Cloud Connector 기능에 대한 모든 요청에 대해 자체 서명 및 IJWT를 생성할 수 있는 장점이 있습니다.
적절한 스코프로 토큰을 발급하려면 GitLab.com이 구성에 액세스해야 합니다.
구성은 access_data.yml
에 있으며, CustomersDot 구성의 거의 완벽한 사본입니다.