Как разрешить доступ к локальным IP-адресам в интерфейсе Edge

Edge for Private Cloud версии 4.16.05

Есть несколько мест, где Edge UI пытается получить доступ к локальному IP-адресу:

  • Инструмент Trace в интерфейсе Edge может отправлять и получать запросы к API по любому указанному URL. В некоторых сценариях развертывания, когда компоненты Edge размещаются совместно с другими внутренними сервисами, злоумышленник может злоупотребить возможностями инструмента Trace, отправляя запросы на частные IP-адреса.
  • При создании прокси-сервера API на основе спецификации OpenAPI в ней описываются такие элементы API, как базовый путь, пути и глаголы, заголовки и т. д. В спецификации можно указать базовый путь прокси-сервера, который ссылается на частный IP-адрес.
  • При создании прокси-сервера API из WSDL-файла, расположенного в локальной файловой системе.

По умолчанию Edge UI не может ссылаться на частные 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, чтобы разрешить инструменту Trace доступ к частным IP-адресам.
  • Для спецификаций OpenAPI свойство conf_apigee-base_apigee.feature.enableopenapiforinternaladdresses по умолчанию отключено. Установите значение True, чтобы разрешить доступ OpenAPI к частным IP-адресам. Требуется Edge 4.16.09.01. Дополнительную информацию можно найти в примечаниях к выпуску Edge for Private Cloud 4.16.05.05.
  • Для файлов WSDL свойство conf_apigee-base_apigee.feature.enablewsdlforinternaladdresses по умолчанию отключено. Установите значение true, чтобы разрешить загрузку WSDL-файла с частных IP-адресов.

Чтобы задать для этих свойств значение true, выполните следующие действия:

  1. Откройте файл ui.properties в редакторе. Если файла нет, создайте его.
    > vi /<inst_root>/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. Перезапустите Edge UI:
    > /<inst_root>/apigee/apigee-service/bin/apigee-service edge-ui restart

Теперь у Edge UI есть доступ к локальным IP-адресам.