SCIM API
Tier: Premium, Ultimate
Offering: GitLab.com
- GitLab 15.5에서 소개되었습니다.
GitLab SCIM API는 그룹 내에서 SCIM 신원을 관리하고 /groups/:groups_id/scim/identities
및 /groups/:groups_id/scim/:uid
엔드포인트를 제공합니다. 기본 URL은 <http|https>://<GitLab 호스트>/api/v4
입니다.
이 API를 사용하려면 그룹 SSO를 그룹에 대해 활성화해야 합니다. 이 API는 그룹 SSO용 SCIM이 활성화된 경우에만 사용됩니다. 이것은 SCIM 신원의 생성에 선행 조건입니다.
이 API는 내부 그룹 SCIM API 및 인스턴스 SCIM API와 다릅니다.
- 이 API:
- RFC7644 프로토콜을 구현하지 않습니다.
- 그룹 내에서 SCIM 신원을 가져오고 확인하며 업데이트하고 삭제합니다.
- 내부 그룹 및 인스턴스 SCIM API:
- SCIM 제공자 통합을 위한 시스템 사용을 위한 것입니다.
- RFC7644 프로토콜을 구현합니다.
- 그룹 또는 인스턴스에 대해 SCIM으로 제공된 사용자 디렉터리을 가져옵니다.
- 그룹 또는 인스턴스에 대해 SCIM으로 제공된 사용자를 생성, 삭제 및 업데이트합니다.
그룹의 SCIM 신원 가져오기
- GitLab 15.5에서 소개되었습니다.
GET /groups/:id/scim/identities
지원되는 속성:
속성 | 타입 | 필수 | 설명 |
---|---|---|---|
id
| 정수/문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
성공하면 200
및 다음 응답 속성을 반환합니다:
속성 | 타입 | 설명 |
---|---|---|
extern_uid
| 문자열 | 사용자의 외부 UID |
user_id
| 정수 | 사용자 ID |
active
| 부울 | 신원의 상태 |
응답 예제:
[
{
"extern_uid": "be20d8dcc028677c931e04f387",
"user_id": 48,
"active": true
}
]
요청 예제:
curl --location --request GET "https://gitlab.example.com/api/v4/groups/33/scim/identities" \
--header "PRIVATE-TOKEN: <PRIVATE-TOKEN>"
단일 SCIM 신원 가져오기
- GitLab 16.1에서 소개되었습니다.
GET /groups/:id/scim/:uid
지원되는 속성:
속성 | 타입 | 필수 | 설명 |
---|---|---|---|
id
| 정수 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
uid
| 문자열 | 예 | 사용자의 외부 UID |
요청 예제:
curl --location --request GET "https://gitlab.example.com/api/v4/groups/33/scim/be20d8dcc028677c931e04f387" --header "PRIVATE-TOKEN: <PRIVATE TOKEN>"
응답 예제:
{
"extern_uid": "be20d8dcc028677c931e04f387",
"user_id": 48,
"active": true
}
SCIM 신원의 extern_uid
필드 업데이트
- GitLab 15.5에서 소개되었습니다.
업데이트할 수 있는 필드:
SCIM/IdP 필드 | GitLab 필드 |
---|---|
id/externalId
| extern_uid
|
PATCH /groups/:groups_id/scim/:uid
파라미터:
속성 | 타입 | 필수 | 설명 |
---|---|---|---|
id
| 정수/문자열 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
uid
| 문자열 | 예 | 사용자의 외부 UID |
요청 예제:
curl --location --request PATCH "https://gitlab.example.com/api/v4/groups/33/scim/be20d8dcc028677c931e04f387" \
--header "PRIVATE-TOKEN: <PRIVATE TOKEN>" \
--form "extern_uid=yrnZW46BrtBFqM7xDzE7dddd"
단일 SCIM 신원 삭제
- GitLab 16.5에서 소개되었습니다.
DELETE /groups/:id/scim/:uid
지원되는 속성:
속성 | 타입 | 필수 | 설명 |
---|---|---|---|
id
| 정수 | 예 | 그룹의 ID 또는 URL 인코딩된 경로 |
uid
| 문자열 | 예 | 사용자의 외부 UID |
요청 예제:
curl --request DELETE --header "Content-Type: application/json" --header "Authorization: Bearer <your_access_token>" "https://gitlab.example.com/api/v4/groups/33/scim/yrnZW46BrtBFqM7xDzE7dddd"
응답 예제:
{
"message" : "204 No Content"
}