正如您可以在 VMware Identity Manager 服务上设置速率限制一样,您也可以在 VMware Identity Manager Connector 上设置速率限制。
对于连接器,您可以对每分钟允许的登录请求数设置限制。达到该限制后,后续请求会被拒绝。设置速率限制有助于防止系统过载。
例如,如果您将登录请求的速率限制设置为 100,则每分钟的前 100 个登录请求会被接受,但从第 101 个起的请求会被拒绝。
对于 VMware Identity Manager Connector 群集,该限制适用于群集中的每个节点。例如,如果将具有 NodeA、NodeB 和 NodeC 的群集的登录请求速率限制设置为 100,则 NodeA、NodeB 和 NodeC 都是每分钟可以处理 100 个登录请求。无法为每个节点设置单独的登录限制。
![登录屏幕错误消息](images/GUID-C212BF9C-179D-4F14-B37A-BBC472347334-low.png)
默认情况下不设置速率限制。
您可以使用 REST API 来设置速率限制。可使用 REST 客户端(如 Postman)来调用 VMware Identity Manager 服务。
所做的更改大约在一小时后生效。如果希望所做的更改立即生效,请重新启动连接器。
要重新启动基于 Linux 的连接器虚拟设备,请登录到该虚拟设备并运行以下命令:
service horizon-workspace restart
要重新启动 Windows 连接器,请运行以下脚本:
install_dir\usr\local\horizon\scripts\horizonService.bat restart
设置速率限制
可使用以下 API 来为 VMware Identity Manager Connector 设置速率限制。
端点: https://hostname/SAAS/jersey/manager/api/system/tuning/resiliency/tenant/orgResiliencyConnectorConfiguration?tenantId=tenantId
方法:PUT
描述:设置 VMware Identity Manager Connector 每分钟允许的最大登录请求数。
标头:
内容类型 | application/vnd.vmware.horizon.manager.system.tuning.resiliency.config+json;charset=UTF-8 |
接受 | application/vnd.vmware.horizon.manager.system.tuning.resiliency.config+json |
授权 | HZN cookie_value 要获取 |
路径参数:
hostname |
VMware Identity Manager 服务或负载平衡器的完全限定域名。 |
tenantId |
VMware Identity Manager 服务的租户 ID。租户 ID 是在 VMware Identity Manager 控制台右上角显示的租户名称。 |
请求正文:
{ "config": { "rateLimitingDisabled": false, "rateLimits": { "login": { "requestsPerMinute": n } } } }
请求正文参数
login requestsPerMinute | 指定每分钟允许的最大登录请求数。
注: 请考虑以下事项:可能需要多个 API 请求才能完成一个登录请求,并且每个 API 调用都会计入速率限制。例如,密码身份验证涉及两个 API 调用,一个用于呈现登录页面,另一个用于提交凭据。
|
查看速率限制
可使用以下 API 来查看当前在 VMware Identity Manager Connector 上设置的速率限制。
端点: https://hostname/SAAS/jersey/manager/api/system/tuning/resiliency/tenant/orgResiliencyConnectorConfiguration?tenantId=tenantId
方法:GET
描述:检索当前为 VMware Identity Manager Connector 的登录请求设置的速率限制。
标头:
授权 | HZN cookie_value 要获取 |
路径参数:
hostname |
VMware Identity Manager 服务或负载平衡器的完全限定域名。 |
tenantId |
VMware Identity Manager 服务的租户 ID。租户 ID 是在 VMware Identity Manager 控制台右上角显示的租户名称。 |
示例输出:
{ "config": { "rateLimitingDisabled": false, "rateLimits": { "login": { "requestsPerMinute": 100 } } } }
login requestsPerMinute | 每分钟允许的最大登录请求数。 |