그룹 액세스 토큰 API
Tier: Free, Premium, Ultimate
Offering: GitLab.com, Self-managed, GitLab Dedicated
그룹 액세스 토큰에 대해 더 알아보세요.
그룹 액세스 토큰 목록
- GitLab 14.7에 도입됨.
그룹 액세스 토큰 목록을 가져옵니다.
GET groups/:id/access_tokens
속성 | 유형 | 필수여부 | 설명 |
---|---|---|---|
id
| 정수 또는 문자열 | 예 | 그룹의 ID 또는 URL-인코딩된 경로 |
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/<group_id>/access_tokens"
[
{
"user_id" : 141,
"scopes" : [
"api"
],
"name" : "token",
"expires_at" : "2021-01-31",
"id" : 42,
"active" : true,
"created_at" : "2021-01-20T22:11:48.151Z",
"revoked" : false,
"access_level": 40
}
]
그룹 액세스 토큰 가져오기
- GitLab 14.10에 도입됨.
ID로 그룹 액세스 토큰을 가져옵니다.
GET groups/:id/access_tokens/:token_id
속성 | 유형 | 필수여부 | 설명 |
---|---|---|---|
id
| 정수 또는 문자열 | 예 | 그룹의 ID 또는 URL-인코딩된 경로 |
token_id
| 정수 | 예 | 그룹 액세스 토큰의 ID |
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/<group_id>/access_tokens/<token_id>"
{
"user_id" : 141,
"scopes" : [
"api"
],
"name" : "token",
"expires_at" : "2021-01-31",
"id" : 42,
"active" : true,
"created_at" : "2021-01-20T22:11:48.151Z",
"revoked" : false,
"access_level": 40
}
그룹 액세스 토큰 생성
- GitLab 14.7에 도입됨.
expires_at
속성의 기본값이 GitLab 16.0에 도입되었습니다.
그룹 액세스 토큰을 생성합니다. 그룹 소유자 역할이어야만 그룹 액세스 토큰을 생성할 수 있습니다.
POST groups/:id/access_tokens
속성 | 유형 | 필수여부 | 설명 |
---|---|---|---|
id
| 정수 또는 문자열 | 예 | 그룹의 ID 또는 URL-인코딩된 경로 |
name
| 문자열 | 예 | 그룹 액세스 토큰의 이름 |
scopes
| Array[String]
| 예 | 그룹 액세스 토큰의 스코프 목록 |
access_level
| 정수 | 아니요 | 액세스 레벨. 유효한 값은 10 (게스트), 20 (기록자), 30 (개발자), 40 (유지관리자), 50 (소유자)입니다.
|
expires_at
| 날짜 | 예 | 액세스 토큰의 만료 날짜(ISO 형식으로 YYYY-MM-DD ). 날짜는 액세스 토큰의 최대 허용 수명보다 이후로 설정할 수 없습니다.
|
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" \
--header "Content-Type:application/json" \
--data '{ "name":"test_token", "scopes":["api", "read_repository"], "expires_at":"2021-01-31", "access_level": 30 }' \
"https://gitlab.example.com/api/v4/groups/<group_id>/access_tokens"
{
"scopes" : [
"api",
"read_repository"
],
"active" : true,
"name" : "test",
"revoked" : false,
"created_at" : "2021-01-21T19:35:37.921Z",
"user_id" : 166,
"id" : 58,
"expires_at" : "2021-01-31",
"token" : "D4y...Wzr",
"access_level": 30
}
그룹 접근 토큰 회전
- GitLab 16.0에서 도입됨
전제 조건:
-
api
범위를 가진 개인 액세스 토큰이 있어야 합니다.
그룹 접근 토큰을 회전합니다. 이전 토큰을 폐기하고 1주일 후에 만료되는 새 토큰을 생성합니다.
GitLab 16.6 이상에서 expires_at
매개변수를 사용하여 다른 만료 날짜를 설정할 수 있습니다. 이 비표준 만료 날짜는 회전 날짜로부터 최대 1년까지입니다.
POST /groups/:id/access_tokens/:token_id/rotate
속성 | 유형 | 필수 | 설명 |
---|---|---|---|
id
| 정수 또는 문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
token_id
| 정수 | 예 | 액세스 토큰의 ID |
expires_at
| 날짜 | 아니요 | 액세스 토큰의 만료 날짜(ISO 형식: YYYY-MM-DD ). GitLab 16.6에서 도입됨
|
참고: 관리자가 아닌 사용자는 자신의 토큰을 회전할 수 있습니다. 관리자는 그룹의 모든 사용자의 토큰을 회전할 수 있습니다.
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/<group_id>/access_tokens/<token_id>/rotate"
응답 예시:
{
"id": 42,
"name": "Rotated Token",
"revoked": false,
"created_at": "2023-08-01T15:00:00.000Z",
"scopes": ["api"],
"user_id": 1337,
"last_used_at": null,
"active": true,
"expires_at": "2023-08-15",
"access_level": 30,
"token": "s3cr3t"
}
응답
-
200: OK
: 기존 토큰이 성공적으로 폐기되었고 새 토큰이 생성된 경우 -
400: Bad Request
: 회전에 실패한 경우 -
401: Unauthorized
: 사용자가 다음 중 하나에 해당하는 경우- 지정된 ID의 토큰에 액세스할 수 없는 경우
- 지정된 ID의 토큰이 존재하지 않는 경우
-
404: Not Found
: 사용자가 관리자이지만 지정된 ID의 토큰이 존재하지 않는 경우
자동 재사용 감지
자동 재사용 감지에 대한 자세한 내용은 개인 액세스 토큰의 자동 재사용 감지를 참조하세요.
그룹 접근 토큰 폐기
- GitLab 14.7에서 도입됨
그룹 접근 토큰을 폐기합니다.
DELETE groups/:id/access_tokens/:token_id
속성 | 유형 | 필수 | 설명 |
---|---|---|---|
id
| 정수 또는 문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
token_id
| 정수 | 예 | 그룹 액세스 토큰의 ID |
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/<group_id>/access_tokens/<token_id>"
응답
-
204: No Content
: 성공적으로 폐기된 경우 -
400 Bad Request
또는404 Not Found
: 폐기에 실패한 경우