用户无法从 Workspace ONE 应用程序或门户中启动负载平衡的 VMware Identity Manager 部署中的应用程序。
问题
如果未正确确定应用程序的客户端 IP 地址,用户将无法从 Workspace ONE 门户或应用程序中启动应用程序。如果 X-Forwarded-For (XFF) 标头包含不正确的 IP 地址,则可能会在负载平衡的 VMware Identity Manager 部署中出现该问题。
检查仪表板中的“审核事件”启动报告,以确认正确解析了客户端 IP 地址。如果未正确解析该地址,请按照该过程解决该问题。
解决方案
要解决该问题,请先使用 clientipresolutioninfo REST API 获取 XFF 标头中列出的 IP 地址列表,然后检查响应。如果它返回负载平衡器或 VMware Identity Manager 服务节点的 IP 地址,请在 runtime-config.properties 文件中设置 service.ipsToIgnoreInXffHeader 属性以筛选出不需要的 IP 地址。
要获取 XFF 标头中的 IP 地址列表,请在以租户管理员身份登录到 VMware Identity Manager 服务时使用 REST 客户端(如 Postman)运行以下 REST API:
方法:GET
路径:/clientipresolutioninfo
HZN cookie_value
HZN
Cookie 值。
响应介质类型:application/vnd.vmware.horizon.manager.clientipresolutionconfig+json
示例 JSON 响应:
{ “xffHeaderIpList":["10.112.68.252”], // the IPs part of XFF header "numberOfLoadBalancers”:0, // number of load balancers configured in runtime-config.properties "configuredIpToIgnoreList":"10.112.68.255”, // the list of ips or subnets to ignore as configured in runtime-config.properties "clientIpDetermined":"10.112.68.252”, // the client IP determined to be used finally for login/access policy "_links":{} }
从输出中,确定不需要的 IP 地址,然后编辑 runtime-config.properties 文件以筛选出这些地址。
- 登录到 VMware Identity Manager 虚拟设备。
- 编辑 /usr/local/horizon/conf/runtime-config.properties 文件并添加以下属性:
service.ipsToIgnoreInXffHeader IPsToIgnore
其中,
IPsToIgnore
是要在 XFF 标头中忽略的逗号分隔 IP 地址列表。 - 重新启动服务。
service horizon-workspace restart