Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione
Documentazione di Apigee X. Informazioni
Sintomo
In Edge per il cloud privato, quando tracci un'API nella UI Edge, puoi vedere una risposta HTTP 304 nella colonna Stato della finestra di traccia:
Messaggi di errore
Non vengono visualizzati messaggi di errore: la chiamata proxy API restituisce effettivamente un esito positivo come HTTP 200. Tuttavia, la finestra della traccia nella UI di Edge una risposta HTTP 304 e non vengono raccolti dati di traccia.
Possibili cause
In Edge per il cloud privato, la UI Edge sta tentando di tracciare un proxy API a cui si accede da un indirizzo IP privato.
Lo strumento di traccia nella UI perimetrale può inviare richieste API a qualsiasi URL. In uno scenario di deployment in cui la UI Edge è co-ospitata con altri servizi un utente malintenzionato potrebbe fare un uso improprio dello strumento di traccia per effettuare richieste tramite un indirizzo IP privato, come localhost o 127.0.0.1.
In un ambiente di produzione, solitamente lasci l'impostazione predefinita così com'è per evitare agli utenti di riuscire a tracciare un indirizzo IP privato. Ad esempio, ecco come la versione pubblica della UI Edge viene eseguito il deployment.
Tuttavia, per un ambiente di sviluppo o test interno, puoi sostituire questa impostazione predefinita consente agli sviluppatori API di tracciare qualsiasi indirizzo IP. In genere, un ambiente di sviluppo/test è protetto da un firewall che non consentire l'accesso pubblico.
Nota : come best practice, lascia invariata l'impostazione predefinita. per impedire l'accesso traccia agli indirizzi IP privati, anche in un ambiente di sviluppo/test, a meno che non ti trovi in una situazione in cui devi abilitarla.
Causa: tentativo di accedere a un proxy API tramite un indirizzo IP privato
Per impostazione predefinita, la UI Edge per Edge per il cloud privato impedisce agli utenti di tracciamento delle chiamate API effettuate tramite indirizzi IP privati. L'elenco degli indirizzi IP privati include:
- Indirizzo di loopback (127.0.0.1 o localhost)
- Indirizzi locali del sito (per IPv4: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)
- Qualsiasi indirizzo locale (qualsiasi indirizzo che risolve il problema con localhost)
Ad esempio, il seguente comando curl effettua una chiamata a un proxy API utilizzando 127.0.0.1, che è considerato un indirizzo IP privato:
curl http://127.0.0.1:9001/myapiproxy
Nella finestra della traccia per questa chiamata viene visualizzata una risposta HTTP 304 anche se il comando curl ha restituito un esito positivo.
Risoluzione
Per consentire alla UI di Edge di tracciare gli indirizzi IP privati per Edge per il
Cloud privato, imposta il seguente token in ui.properties
:
conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"
Per impostare questa proprietà:
- Apri il file
ui.properties
in un editor. Se il file non esiste, devi crearlo.
vi /opt/apigee/customer/application/ui.properties
- Imposta le seguenti proprietà su true:
conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"
- Salva le modifiche apportate a
ui.properties
. - Assicurati che il file delle proprietà appartenga all'elemento 'apigee' utente:
chown apigee:apigee /opt/apigee/customer/application/ui.properties
- Riavvia la UI Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
La UI Edge può ora accedere agli indirizzi IP privati nello strumento di traccia.
Per impedire alla UI di tracciare le richieste tramite indirizzi IP privati,
modifica ui.properties
per impostare la proprietà su false
e
quindi riavvia la UI Edge.
Documenti correlati (facoltativo)
Per ulteriori informazioni, vedi Consentire alla UI perimetrale di accedere agli indirizzi IP locali.