SSH 签名密钥的 REST API 端点
使用 REST API 管理已验证用户的 SSH 签名密钥。
关于 SSH 签名密钥管理
如果请求 URL 不包含 {username}
参数,则响应将针对已登录用户(且你必须随请求传递 身份验证信息)。当通过 OAuth 身份验证且具有 user
范围时,将包括其他私人信息,例如用户是否启用了双重身份验证。
列出已验证用户的 SSH 签名密钥
列出已验证用户 GitHub 帐户的 SSH 签名密钥。
OAuth 应用令牌和个人访问令牌(经典)需要 read:ssh_signing_key
范围才能使用此端点。
“列出已验证用户的 SSH 签名密钥”的细粒度访问令牌
此端点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限设置
- “SSH 签名密钥”用户权限(读取)
“列出已验证用户的 SSH 签名密钥”的参数
名称、类型、说明 |
---|
accept string 建议设置为 |
名称、类型、说明 |
---|
per_page integer 每页结果数(最大 100)。有关详细信息,请参阅“在 REST API 中使用分页”。 默认: |
页面 整数 要获取的结果的页码。有关详细信息,请参阅“在 REST API 中使用分页”。 默认: |
“列出已验证用户的 SSH 签名密钥”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | 确定 |
304 | 未修改 |
401 | 需要身份验证 |
403 | 禁止 |
404 | 找不到资源 |
“列出已验证用户的 SSH 签名密钥”的代码示例
请求示例
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/user/ssh_signing_keys
响应
状态: 200
[ { "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234", "id": 2, "url": "https://api.github.com/user/keys/2", "title": "ssh-rsa AAAAB3NzaC1yc2EAAA", "created_at": "2020-06-11T21:31:57Z" }, { "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJy931234", "id": 3, "url": "https://api.github.com/user/keys/3", "title": "ssh-rsa AAAAB3NzaC1yc2EAAB", "created_at": "2020-07-11T21:31:57Z" } ]
为已验证用户创建 SSH 签名密钥
为已验证用户的 GitHub 帐户创建 SSH 签名密钥。
OAuth 应用令牌和个人访问令牌(经典)需要 write:ssh_signing_key
范围才能使用此端点。
“为已验证用户创建 SSH 签名密钥”的细粒度访问令牌
此端点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限设置
- “SSH 签名密钥”用户权限(写入)
“为已验证用户创建 SSH 签名密钥”的参数
名称、类型、说明 |
---|
accept string 建议设置为 |
名称、类型、说明 |
---|
标题 字符串 新密钥的描述性名称。 |
密钥 字符串 必需要添加到 GitHub 帐户的公共 SSH 密钥。有关详细信息,请参阅“检查现有 SSH 密钥”。 |
“为经过身份验证的用户创建 SSH 签名密钥”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
201 | 已创建 |
304 | 未修改 |
401 | 需要身份验证 |
403 | 禁止 |
404 | 找不到资源 |
422 | 验证失败,或端点已受到垃圾邮件攻击。 |
“为经过身份验证的用户创建 SSH 签名密钥”的代码示例
请求示例
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/user/ssh_signing_keys \ -d '{"key":"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234","title":"ssh-rsa AAAAB3NzaC1yc2EAAA"}'
响应
获取经过身份验证用户的 SSH 签名密钥
获取 SSH 签名密钥的扩展详细信息。
OAuth 应用令牌和个人访问令牌(经典)需要 read:ssh_signing_key
范围才能使用此端点。
“获取经过身份验证用户的 SSH 签名密钥”的细粒度访问令牌
此端点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限设置
- “SSH 签名密钥”用户权限(读取)
“获取经过身份验证用户的 SSH 签名密钥”的参数
名称、类型、说明 |
---|
accept string 建议设置为 |
名称、类型、说明 |
---|
ssh_signing_key_id integer 必填SSH 签名密钥的唯一标识符。 |
“获取经过身份验证用户的 SSH 签名密钥”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | 确定 |
304 | 未修改 |
401 | 需要身份验证 |
403 | 禁止 |
404 | 找不到资源 |
“获取经过身份验证用户的 SSH 签名密钥”的代码示例
请求示例
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/user/ssh_signing_keys/SSH_SIGNING_KEY_ID
响应
删除经过身份验证用户的 SSH 签名密钥
从经过身份验证用户的 GitHub 帐户中删除 SSH 签名密钥。
OAuth 应用令牌和个人访问令牌(经典版)需要 admin:ssh_signing_key
范围才能使用此端点。
“删除经过身份验证用户的 SSH 签名密钥”的细粒度访问令牌
此端点适用于以下细粒度令牌类型
细粒度令牌必须具有以下权限设置
- “SSH 签名密钥”用户权限(写入)
“删除经过身份验证用户的 SSH 签名密钥”的参数
名称、类型、说明 |
---|
accept string 建议设置为 |
名称、类型、说明 |
---|
ssh_signing_key_id integer 必填SSH 签名密钥的唯一标识符。 |
“删除经过身份验证用户的 SSH 签名密钥”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | 无内容 |
304 | 未修改 |
401 | 需要身份验证 |
403 | 禁止 |
404 | 找不到资源 |
“删除经过身份验证用户的 SSH 签名密钥”的代码示例
请求示例
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/user/ssh_signing_keys/SSH_SIGNING_KEY_ID
响应
状态:204
列出用户的 SSH 签名密钥
列出用户的 SSH 签名密钥。此操作可供任何人访问。
“列出用户的 SSH 签名密钥”的细粒度访问令牌
此端点适用于以下细粒度令牌类型
细粒度令牌不需要任何权限。
如果仅请求公共资源,则无需身份验证即可使用此端点。
“列出用户的 SSH 签名密钥”的参数
名称、类型、说明 |
---|
accept string 建议设置为 |
名称、类型、说明 |
---|
username string 必需GitHub 用户帐户的句柄。 |
名称、类型、说明 |
---|
per_page integer 每页结果数(最大 100)。有关详细信息,请参阅“在 REST API 中使用分页”。 默认: |
页面 整数 要获取的结果的页码。有关详细信息,请参阅“在 REST API 中使用分页”。 默认: |
“列出用户的 SSH 签名密钥”的 HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | 确定 |
“列出用户的 SSH 签名密钥”的代码示例
请求示例
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/users/USERNAME/ssh_signing_keys
响应
状态: 200
[ { "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234", "id": 2, "url": "https://api.github.com/user/keys/2", "title": "ssh-rsa AAAAB3NzaC1yc2EAAA", "created_at": "2020-06-11T21:31:57Z" }, { "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJy931234", "id": 3, "url": "https://api.github.com/user/keys/3", "title": "ssh-rsa AAAAB3NzaC1yc2EAAB", "created_at": "2020-07-11T21:31:57Z" } ]