{{< details >}}
- Tier: 专业版, 旗舰版
- Offering: JihuLab.com
{{< /details >}}
{{< history >}}
- 引入于极狐GitLab 16.4,使用名为
ssh_certificates_rest_endpoints
的功能标志。默认禁用。 - 在极狐GitLab 16.9 中为 JihuLab.com 启用。
- 在极狐GitLab 17.7 中 GA。功能标志
ssh_certificates_rest_endpoints
被移除。
{{< /history >}}
使用此 API 可以创建、读取和删除群组的 SSH 证书。只有顶级群组可以存储 SSH 证书。要使用此 API,您必须以分配有所有者角色的用户身份进行身份验证。
获取特定群组的所有 SSH 证书
GET /groups/:id/ssh_certificates
参数:
属性 | 类型 | 必需 | 描述 |
---|---|---|---|
id |
integer | 是 | 群组的 ID。 |
默认情况下,GET
请求一次返回 20 个结果,因为 API 结果是分页的。阅读更多关于分页的信息。
请求示例:
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://primary.example.com/api/v4/groups/90/ssh_certificates"
响应示例:
[
{
"id": 12345,
"title": "SSH Title 1",
"key": "ssh-rsa AAAAB3NzaC1ea2dAAAADAQABAAAAgQDGbLkF44ScxRQi2FfA7VsHgGqptguSbmW26jkJhEiRZpGS4/+UzaaSqc8Psw2OhSsKc5QwfrB/ANpO4LhOjDzhf2FuD8ACkv3R7XtaJ+rN6PlyzoBfLAiSyzxhEoMFDBprTgaiZKgg2yQ9dRH55w3f6XMZ4hnaUae53nQgfQLxFw== example@gitlab.com",
"created_at": "2023-09-08T12:39:00.172Z"
},
{
"id":12346,
"title":"SSH Title 2",
"key": "ssh-rsa AAAAB3NzaC1ac2EAAAADAQABAAAAgQDTl/hHfu1F/KlR+QfgM2wUmyxcN5YeiaWluEGIrfXUeJuI+bK6xjpE3+2afHDYtE9VQkeL32KRjefX2d72Jeoa68ewt87Vn8CcGkUTOTpHNzeL8pHMKFs3m7ArSBxNg5vTdgAsq5dbDGNtat7b2WCHTNvtWoON1Jetne30uW2EwQ== example@gitlab.com",
"created_at": "2023-09-08T12:39:00.244Z"
}
]
创建 SSH 证书
在群组中创建一个新的 SSH 证书。
POST /groups/:id/ssh_certificates
参数:
属性 | 类型 | 必需 | 描述 |
---|---|---|---|
id |
integer | 是 | 群组的 ID。 |
key |
string | 是 | SSH 证书的公钥。 |
title |
string | 是 | SSH 证书的标题。 |
请求示例:
curl --request POST \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/ssh_certificates?title=newtitle&key=ssh-rsa+REDACTED+example%40gitlab.com"
响应示例:
{
"id": 54321,
"title": "newtitle",
"key": "ssh-rsa ssh-rsa AAAAB3NzaC1ea2dAAAADAQABAAAAgQDGbLkF44ScxRQi2FfA7VsHgGqptguSbmW26jkJhEiRZpGS4/+UzaaSqc8Psw2OhSsKc5QwfrB/ANpO4LhOjDzhf2FuD8ACkv3R7XtaJ+rN6PlyzoBfLAiSyzxhEoMFDBprTgaiZKgg2yQ9dRH55w3f6XMZ4hnaUae53nQgfQLxFw== example@gitlab.com",
"created_at": "2023-09-08T12:39:00.172Z"
}
删除群组 SSH 证书
从群组中删除 SSH 证书。
DELETE /groups/:id/ssh_certificate/:id
参数:
属性 | 类型 | 必需 | 描述 |
---|---|---|---|
id |
integer | 是 | 群组的 ID |
id |
integer | 是 | SSH 证书的 ID |
请求示例:
curl --request DELETE \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/ssh_certificates/12345"