Best practice per Advanced API Security

Questa pagina si applica ad Apigee e Apigee hybrid.

Visualizza la documentazione di Apigee Edge.

Questa pagina descrive alcune best practice per lavorare con la sicurezza delle API avanzata.

Configura la risoluzione dell'IP del client

Se l'algoritmo di risoluzione dell'IP client predefinito non funziona per il tuo caso d'uso, può essere personalizzato in base all'ambiente. Consulta la risoluzione dell'indirizzo IP client. La configurazione di questa impostazione consente a Advanced API Security di trovare e utilizzare l'indirizzo IP del client appropriato per ogni richiesta API e garantisce una risoluzione coerente dell'indirizzo IP del client nell'ambiente.

Per utilizzare la risoluzione dell'IP client, devi anche preservare le intestazioni di richiesta X-Forwarded-For.

Mantieni le intestazioni delle richieste X-Forwarded-For

L'intestazione della richiesta X-Forwarded-For (XFF) è un'intestazione standard per identificare gli indirizzi IP di origine dei client che si connettono a un server web tramite un server proxy. Molte piattaforme offrono la possibilità di rimuovere le intestazioni XFF dalle richieste in arrivo per motivi di sicurezza. Tuttavia, questa operazione non è consigliata se utilizzi la Sicurezza API avanzata, perché gli algoritmi di machine learning che utilizzano richiedono le informazioni sull'indirizzo IP per identificare il traffico illecito e per calcolare i punteggi di sicurezza.

Come stabilire se la tua piattaforma sta rimuovendo le intestazioni XFF

Per determinare se la tua piattaforma sta rimuovendo le intestazioni XFF, effettua una chiamata API come la seguente:

curl https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/stats/x_forwarded_for_ip?select=avg(total_response_time)&timeRange=9/24/2018%2000:00~10/25/2018%2000:00&timeUnit=day \
 -H "Authorization: Bearer $TOKEN"

dove ORG è la tua organizzazione e ENV è un ambiente all'interno dell'organizzazione.

Se la tua piattaforma rimuove le intestazioni XFF, restituisce una risposta in cui la prima riga sarà

 "name": "(not set)",

Il valore (not set) nella risposta indica che la tua piattaforma sta rimuovendo le intestazioni XFF.