{{< details >}}
- Tier: 基础版, 专业版, 旗舰版
- Offering: 私有化部署
- Status: 实验
{{< /details >}}
使用此 API 可以检索任意令牌的详细信息并撤销它们。与其他暴露令牌信息的 API 不同,此 API 允许您在不知道特定令牌类型的情况下检索详细信息或撤销令牌。
令牌前缀
在进行请求时,personal
、project
或 group access
令牌必须以 glpat
或当前的自定义前缀开头。如果令牌以之前的自定义前缀开头,操作将失败。
先决条件:
- 您必须具有对实例的管理员访问权限。
获取令牌信息
{{< history >}}
- 在极狐GitLab 17.5 中引入,具有名为
admin_agnostic_token_finder
的 FLAG。默认情况下禁用。 - 在极狐GitLab 17.8 中普遍可用。功能 FLAG
admin_agnostic_token_finder
被移除。 - 在极狐GitLab 17.6 中添加了 Feed 令牌。
- 在极狐GitLab 17.7 中添加了 OAuth 应用密钥。
- 在极狐GitLab 17.7 中添加了集群代理令牌。
- 在极狐GitLab 17.7 中添加了 Runner 身份验证令牌。
- 在极狐GitLab 17.7 中添加了流水线触发令牌。
- 在极狐GitLab 17.9 中添加了 CI/CD 任务令牌。
- 在极狐GitLab 17.9 中添加了功能标志客户端令牌。
- 在极狐GitLab 17.9 中添加了极狐GitLab 会话 Cookie。
- 在极狐GitLab 17.9 中添加了传入邮件令牌。
{{< /history >}}
获取给定令牌的信息。此端点支持以下令牌:
- 个人访问令牌
- 模拟令牌
- 部署令牌
- Feed 令牌
- OAuth 应用密钥
- 集群代理令牌
- Runner 身份验证令牌
- 流水线触发令牌
- CI/CD 任务令牌
- 功能标志客户端令牌
- 极狐GitLab 会话 Cookie
- 传入邮件令牌
POST /api/v4/admin/token
支持的属性:
属性 | 类型 | 必需 | 描述 |
---|---|---|---|
token |
string | 是 | 要识别的现有令牌。personal 、project 或 group access 令牌必须以 glpat 或当前的自定义前缀开头。 |
如果成功,将返回 200
并提供关于令牌的信息。
可能返回以下状态代码:
-
200 OK
:令牌信息。 -
401 Unauthorized
:用户未被授权。 -
403 Forbidden
:用户不是管理员。 -
404 Not Found
:未找到令牌。 -
422 Unprocessable
:不支持的令牌类型。
示例请求:
curl --request POST \
--url "https://gitlab.example.com/api/v4/admin/token" \
--header "PRIVATE-TOKEN: <your_access_token>" \
--header 'Content-Type: application/json' \
--data '{"token": "glpat-<example-token>"}'
示例响应:
{
"id": 1,
"user_id": 70,
"name": "project-access-token",
"revoked": false,
"expires_at": "2024-10-04",
"created_at": "2024-09-04T07:19:18.652Z",
"updated_at": "2024-09-04T07:19:18.652Z",
"scopes": [
"api",
"read_api"
],
"impersonation": false,
"expire_notification_delivered": false,
"last_used_at": null,
"after_expiry_notification_delivered": false,
"previous_personal_access_token_id": null,
"advanced_scopes": null,
"organization_id": 1
}
撤销令牌
{{< history >}}
- 在极狐GitLab 17.7 中引入,具有名为
api_admin_token_revoke
的 FLAG。默认情况下禁用。 - 在极狐GitLab 17.9 中添加了集群代理令牌。
- 在极狐GitLab 17.9 中添加了 Runner 身份验证令牌。
- 在极狐GitLab 17.9 中添加了 OAuth 应用密钥。
- 在极狐GitLab 17.9 中添加了传入邮件令牌。
- 在极狐GitLab 17.9 中添加了功能标志客户端令牌。
- 在极狐GitLab 17.10 中添加了流水线触发令牌,具有名为
token_api_expire_pipeline_triggers
的 FLAG。默认情况下禁用。 - 在极狐GitLab 17.11 中添加了极狐GitLab 会话。
{{< /history >}}
{{< alert type=”flag” >}}
此功能的可用性由一个功能 FLAG 控制。有关更多信息,请参阅历史记录。此功能可用于测试,但尚未准备好用于生产环境。
{{< /alert >}}
根据令牌类型撤销、重置或删除给定令牌。此端点支持以下令牌类型:
令牌类型 | 支持的操作 |
---|---|
个人访问令牌 | 撤销 |
模拟令牌 | 撤销 |
项目访问令牌 | 撤销 |
群组访问令牌 | 撤销 |
部署令牌 | 撤销 |
集群代理令牌 | 撤销 |
流水线触发令牌 | 撤销 |
Feed 令牌 | 重置 |
Runner 身份验证令牌 | 重置 |
OAuth 应用密钥 | 重置 |
传入邮件令牌 | 重置 |
功能标志客户端令牌 | 重置 |
极狐GitLab 会话 Cookie | 删除 |
DELETE /api/v4/admin/token
支持的属性:
属性 | 类型 | 必需 | 描述 |
---|---|---|---|
token |
string | 是 | 要撤销的现有令牌。personal 、project 或 group access 令牌必须以 glpat 或当前的自定义前缀开头。 |
如果成功,将返回 204
且不包含内容。
可能返回以下状态代码:
-
204 No content
:令牌已被撤销。 -
401 Unauthorized
:用户未被授权。 -
403 Forbidden
:用户不是管理员。 -
404 Not Found
:未找到令牌。 -
422 Unprocessable
:不支持的令牌类型。
示例请求:
curl --request DELETE \
--url "https://gitlab.example.com/api/v4/admin/token" \
--header "PRIVATE-TOKEN: <your_access_token>" \
--header 'Content-Type: application/json' \
--data '{"token": "glpat-<example-token>"}'