HTTP 304-Antwort in Trace-Sitzung

<ph type="x-smartling-placeholder"></ph> Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

Symptom

In Edge für die Private Cloud wird beim Tracing einer API in der Edge-Benutzeroberfläche Folgendes angezeigt: Eine HTTP 304-Antwort in der Spalte Status des Trace-Fensters:

Fehlermeldungen

Es werden keine Fehlermeldungen angezeigt - der API-Proxy-Aufruf gibt in Wirklichkeit einen Erfolg zurück. wie HTTP 200. Das Trace-Fenster in der Edge-Benutzeroberfläche wird jedoch und es werden keine Trace-Daten erfasst.

Mögliche Ursachen

In Edge für die Private Cloud versucht die Edge-Benutzeroberfläche, einen API-Proxy zu verfolgen Zugriff über eine private IP-Adresse.

Das Trace-Tool in der Edge-Benutzeroberfläche kann API-Anfragen an eine beliebige URL senden. In einem Bereitstellungsszenario, bei dem die Edge-Benutzeroberfläche mit anderen internen Hosts gemeinsam gehostet wird. kann ein böswilliger Nutzer das Trace-Tool missbrauchen, um Anfragen an -Dienste über eine private IP-Adresse, z. B. localhost oder 127.0.0.1.

In einer Produktionsumgebung belassen Sie in der Regel die Standardeinstellung unverändert, um zu verhindern, dass Nutzer private IP-Adressen nicht verfolgen können. So sieht beispielsweise die öffentliche Version der Edge-Benutzeroberfläche aus bereitgestellt wird.

Bei einer internen Entwicklungs- oder Testumgebung können Sie damit Ihre API-Entwickler jede IP-Adresse verfolgen können. Üblicherweise befindet sich eine Entwicklungs-/Testumgebung hinter einer Firewall, die keine den öffentlichen Zugriff zulassen.

Hinweis : Wir empfehlen, die Standardeinstellung unverändert beizubehalten. um Trace-Zugriff auf private IP-Adressen zu verhindern, auch in Entwicklungs-/Testumgebungen. es sei denn, Sie müssen sie aktivieren.

Ursache: Versuch, über eine private IP-Adresse auf einen API-Proxy zuzugreifen

Standardmäßig hindert die Edge-Benutzeroberfläche für Edge für die Private Cloud Benutzer daran, Tracing API-Aufrufe über private IP-Adressen Die Liste der privaten IP-Adressen enthält:

  • Loopback-Adresse (127.0.0.1 oder localhost)
  • Standortlokale Adressen (für IPv4 – 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)
  • Beliebige lokale Adresse (alle Adressen, die für localhost aufgelöst werden)

Der folgende curl-Befehl ruft beispielsweise einen API-Proxy mithilfe von eine IP-Adresse von 127.0.0.1, die als private IP-Adresse betrachtet wird:

curl http://127.0.0.1:9001/myapiproxy

Im Trace-Fenster für diesen Aufruf wird eine HTTP 304-Antwort auch dann angezeigt, wenn der curl-Befehl erfolgreich war.

Auflösung

Um die Edge-Benutzeroberfläche zu aktivieren, um private IP-Adressen für Edge für die Legen Sie für Private Cloud das folgende Token in ui.properties fest:

conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"

So legen Sie diese Eigenschaft fest:

  1. Öffnen Sie die Datei ui.properties in einem Editor. Wenn die Datei nicht vorhanden ist, erstellen Sie es.
    vi /opt/apigee/customer/application/ui.properties
  2. Legen Sie die folgenden Attribute auf „true“ fest:
    conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"
  3. Speichern Sie die Änderungen in ui.properties.
  4. Achten Sie darauf, dass die Eigenschaftendatei dem Apigee gehört Nutzer:
    chown apigee:apigee /opt/apigee/customer/application/ui.properties
  5. Starten Sie die Edge-Benutzeroberfläche neu:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

Die Edge-Benutzeroberfläche kann jetzt im Trace-Tool auf private IP-Adressen zugreifen.

Wenn Sie später verhindern möchten, dass die UI Anfragen über private IP-Adressen verfolgt, Bearbeiten Sie ui.properties, um das Attribut auf false festzulegen, und Starten Sie dann die Edge-Benutzeroberfläche neu.

Weitere Informationen finden Sie unter . Zulassen des Zugriffs auf lokale IP-Adressen der Edge-Benutzeroberfläche.