项目 API 的速率限制
Version history
- 引入于 15.10 版本,功能标志为
rate_limit_for_unauthenticated_projects_api_access
,默认禁用。 - 在私有化部署版上默认启用于 16.0 版本。
- 在极狐GitLab Generally available in GitLab 16.0. Feature flag
rate_limit_for_unauthenticated_projects_api_access
removed. - Rate limit for group and projects API introduced in GitLab 17.1. with a flag named
rate_limit_groups_and_projects_api
. Disabled by default.
- 引入于 15.10 版本,功能标志为
rate_limit_for_unauthenticated_projects_api_access
,默认禁用。- 极狐GitLab 16.0 中为私有化部署版本默认开启。
- 极狐GitLab 16.0 GA 并已移除功能开关
rate_limit_for_unauthenticated_projects_api_access
。- 针对群组和项目 API 的速率限制自极狐GitLab 17.1 引入,并使用名为
rate_limit_groups_and_projects_api
的功能开关。默认禁用。
您可以为下列[项目 API] 的每一个 IP 地址和用户配置速率限制。
限制 | 默认值 | 查询间隔 |
---|---|---|
GET /projects (unauthenticated requests) | 400 | 10 分钟 |
GET /projects (authenticated requests) | 2000 | 10 分钟 |
GET /projects/:id | 400 | 1 分钟 |
GET /users/:user_id/projects | 300 | 1 分钟 |
GET /users/:user_id/contributed_projects | 100 | 1 分钟 |
GET /users/:user_id/starred_projects | 100 | 1 分钟 |
更改速率限制:
- 在左侧导航栏底部,选择 管理中心。
- 选择 设置 > 网络。
- 展开 项目 API 速率限制。
- 在 每个 IP 地址每 10 分钟的最大请求数 文本框中,输入新值。
- 选择 保存更改。
速率限制:
- 适用于每个 IP 地址。
- 不适用于经过身份验证的请求。
- 可以设置为 0 来禁用速率限制。
- 除了对
GET /projects API
的未认证请求外,rate_limit_groups_and_projects_api
背后还有其他限制。
超过速率限制的请求将记录到 auth.log
文件中。
例如,您将限制设置为 400,则会阻止在 10 分钟内超过 400 速率的对 GET /projects/:id
API 端点的未经身份验证的请求。十分钟后恢复对端点的访问。