允许边缘界面访问本地 IP 地址

Edge for Private Cloud v4.18.01

Edge 界面可能会尝试访问本地 IP 地址。这些本地 IP 地址可能对应于不应向外部用户公开的私有资源或其他受保护资源:

  • Edge 界面中的 Trace 工具能够向任何指定的网址发送和接收 API 请求。在某些部署场景中,Edge 组件与其他内部服务共同托管,恶意用户可能会通过向专用 IP 地址发出请求来滥用 Trace 工具的功能。
  • 根据 OpenAPI 规范创建 API 代理时,该规范会描述 API 的基本路径、路径和动词、标头等元素。作为规范的一部分,恶意用户可以指定引用专用 IP 地址的代理的基本路径。
  • 从本地文件系统中的 WSDL 文件创建 API 代理时。

出于安全原因,默认情况下,Edge 界面无法引用专用 IP 地址。专用 IP 地址列表包括:

  • 环回地址(127.0.0.1 或 localhost)
  • 站点本地地址(对于 IPv4 - 10.0.0.0/8、172.16.0.0/12、192.168.0.0/16)
  • 任何本地地址(解析为 localhost 的任何地址)。

如果您希望启用 Edge 界面来访问专用 IP 地址,请设置以下令牌:

  • 对于 Trace 工具,conf_apigee-base_apigee.feature.enabletraceforinternaladdresses 属性默认处于停用状态。将其设置为 true 可启用对专用 IP 地址的 Trace 工具访问权限。
  • 对于 OpenAPI 规范,conf_apigee-base_apigee.feature.enableopenapiforinternaladdresses 属性默认处于停用状态。将其设置为 true 可启用对专用 IP 地址的 OpenAPI 访问。
  • 对于 WSDL 文件,conf_apigee-base_apigee.feature.enablewsdlforinternaladdresses 属性默认处于停用状态。将其设置为 true,以允许从专用 IP 地址上传 WSDL 文件。

如需将这些属性设置为 true,请执行以下操作:

  1. 在编辑器中打开 ui.properties 文件。如果该文件不存在,请创建它。
    > vi /opt/apigee/customer/application/ui.properties
  2. 将以下属性设置为 true:
    conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"
    conf_apigee-base_apigee.feature.enableopenapiforinternaladdresses="true"
    conf_apigee-base_apigee.feature.enablewsdlforinternaladdresses="true"
  3. 将更改保存到 ui.properties。
  4. 确保属性文件归“apigee”用户所有:
    > chown apigee:apigee /opt/apigee/customer/application/ui.properties
  5. 重启 Edge 界面:
    > /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

Edge 界面现在可以访问本地 IP 地址。