Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X. информация
Симптом
В Edge для частного облака при отслеживании API в пользовательском интерфейсе Edge вы видите ответ HTTP 304 в столбце «Состояние» окна трассировки:
Сообщения об ошибках
Сообщений об ошибках нет — вызов прокси-сервера API фактически возвращает ответ об успешном выполнении, например HTTP 200. Однако в окне трассировки пользовательского интерфейса Edge отображается ответ HTTP 304, и данные трассировки не собираются.
Возможные причины
В Edge для частного облака пользовательский интерфейс Edge пытается отследить прокси-сервер API, к которому осуществляется доступ с частного IP-адреса.
Инструмент трассировки в пользовательском интерфейсе Edge имеет возможность отправлять запрос API на любой URL-адрес. В сценарии развертывания, когда пользовательский интерфейс Edge размещается совместно с другими внутренними службами, злоумышленник может неправильно использовать инструмент трассировки для отправки запросов к службам через частный IP-адрес, например localhost или 127.0.0.1.
В производственной среде вы обычно оставляете значение по умолчанию, чтобы пользователи не могли отслеживать частный IP-адрес. Например, именно так развертывается общедоступная версия пользовательского интерфейса Edge .
Однако для внутренней среды разработки или тестирования вы можете переопределить это значение по умолчанию, чтобы позволить разработчикам API отслеживать любой IP-адрес. Обычно среда разработки/тестирования находится за брандмауэром, который не допускает публичного доступа.
Примечание. Рекомендуется оставить значение по умолчанию без изменений, чтобы предотвратить доступ к отслеживанию частных IP-адресов даже в среде разработки/тестирования, если только вы не столкнетесь с ситуацией, когда вам придется его включить.
Причина: попытка доступа к прокси-серверу API через частный IP-адрес.
По умолчанию пользовательский интерфейс Edge для частного облака не позволяет пользователям отслеживать вызовы API, выполняемые через частные IP-адреса. В список частных IP-адресов входят:
- Адрес обратной связи (127.0.0.1 или локальный хост)
- Локальные адреса сайта (для IPv4 — 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)
- Любой локальный адрес (любой адрес, разрешающийся в localhost)
Например, следующая команда Curl вызывает прокси-сервер API, используя IP-адрес 127.0.0.1, который считается частным IP-адресом:
curl http://127.0.0.1:9001/myapiproxy
В окне трассировки этого вызова вы увидите ответ HTTP 304, даже если команда Curl вернулась успешно.
Разрешение
Чтобы пользовательский интерфейс Edge мог отслеживать частные IP-адреса для Edge для частного облака, установите следующий токен в ui.properties
:
conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"
Чтобы установить это свойство:
- Откройте файл
ui.properties
в редакторе. Если файл не существует, создайте его.vi /opt/apigee/customer/application/ui.properties
- Установите для следующих свойств значение true:
conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"
- Сохраните изменения в
ui.properties
. - Убедитесь, что файл свойств принадлежит пользователю apigee:
chown apigee:apigee /opt/apigee/customer/application/ui.properties
- Перезапустите пользовательский интерфейс Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Пользовательский интерфейс Edge теперь может получать доступ к частным IP-адресам в инструменте трассировки.
Чтобы позже отключить отслеживание запросов пользовательского интерфейса через частные IP-адреса, отредактируйте ui.properties
, установив для свойства значение false
, а затем перезапустите пользовательский интерфейс Edge.
Сопутствующие документы (необязательно)
Дополнительные сведения см. в разделе Разрешение пользовательскому интерфейсу Edge доступа к локальным IP-адресам .