{{< details >}}

  • Tier: 专业版,旗舰版
  • Offering: JihuLab.com

{{< /details >}}

{{< history >}}

  • 引入于极狐GitLab 15.5。

{{< /history >}}

使用此 API 管理群组中的 SCIM 身份。

先决条件:

此 API 与 内部群组 SCIM API实例 SCIM API 不同:

  • 此 API:
    • 不实现 RFC7644 协议。
    • 获取、检查、更新和删除群组中的 SCIM 身份。
  • 内部群组和实例 SCIM API:
    • 用于 SCIM 提供商集成的系统使用。
    • 实现 RFC7644 协议。
    • 获取群组或实例的 SCIM 配置用户列表。
    • 为群组或实例创建、删除和更新 SCIM 配置用户。

获取群组的 SCIM 身份

{{< history >}}

  • 引入于极狐GitLab 15.5。

{{< /history >}}

GET /groups/:id/scim/identities

支持的属性:

属性 类型 必需 描述
id integer/string 群组的 ID 或 URL 编码路径

如果成功,将返回 200 和以下响应属性:

属性 类型 描述
extern_uid string 用户的外部 UID
user_id integer 用户的 ID
active boolean 身份的状态

示例响应:

[
    {
        "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 身份

{{< history >}}

  • 引入于极狐GitLab 16.1。

{{< /history >}}

GET /groups/:id/scim/:uid

支持的属性:

属性 类型 必需 描述
id integer 群组的 ID 或 URL 编码路径
uid string 用户的外部 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 字段

{{< history >}}

  • 引入于极狐GitLab 15.5。

{{< /history >}}

可以更新的字段有:

SCIM/IdP 字段 极狐GitLab 字段
id/externalId extern_uid
PATCH /groups/:groups_id/scim/:uid

参数:

属性 类型 必需 描述
id integer/string 群组的 ID 或 URL 编码路径
uid string 用户的外部 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 身份

{{< history >}}

  • 引入于极狐GitLab 16.5。

{{< /history >}}

DELETE /groups/:id/scim/:uid

支持的属性:

属性 类型 必需 描述
id integer 群组的 ID 或 URL 编码路径
uid string 用户的外部 UID。

示例请求:

curl --location --request DELETE "https://gitlab.example.com/api/v4/groups/33/scim/yrnZW46BrtBFqM7xDzE7dddd" --header "PRIVATE-TOKEN: <your_access_token>"

示例响应:

{
    "message" : "204 No Content"
}