Sicurezza dell'ultimo miglio

Questa pagina si applica a Apigee e Apigee ibridi.

Visualizza documentazione di Apigee Edge.

La sicurezza dell'ultimo miglio protegge i servizi di backend inviati tramite proxy dai servizi API. Il principale l'obiettivo della sicurezza dell'ultimo miglio è prevenire le cosiddette "end-run" in cui uno sviluppatore di app rileva l'URL di un servizio di backend e ignora eventuali proxy API per raggiungere direttamente il backend URL.

Di seguito sono riportate le opzioni principali per configurare la sicurezza dell'ultimo miglio:

  • TLS/SSL client
  • Autenticazione in uscita

TLS/SSL client

Il meccanismo principale per proteggere l'ultimo miglio è il protocollo TLS/SSL del client, noto anche come "autenticazione reciproca".

Vedi Opzioni per la configurazione di TLS.

Autenticazione in uscita

La sicurezza dell’ultimo miglio può essere rafforzata anche richiedendo al proxy API di presentare una credenziale a il servizio di backend.

Ad esempio, potresti voler fare in modo che un proxy API presenti una chiave API al servizio di backend. Tu puoi anche chiedere a un proxy API di ottenere e presentare un token di accesso alle credenziali del client OAuth.

Chiave API

Le chiavi API possono essere applicate alle richieste in uscita dai proxy API ai servizi di backend. Questo presuppone che il servizio di backend sia un'API in grado di emettere e convalidare l'API chiave.

Se configuri un proxy API per presentare una chiave API nelle richieste in uscita, devi archiviare Chiave API in un luogo in cui può essere recuperata dal proxy API in fase di runtime. Un luogo disponibile per l'archiviazione delle chiavi API è una mappa chiave/valore. Consulta le operazioni di mappatura dei valori chiave .

Puoi utilizzare il tipo di criterioAssignMessage per aggiungere la chiave API come intestazione HTTP, query parametro o elemento payload alla richiesta in uscita. Vedi Assegna criteri per i messaggi.

Credenziali client OAuth

Le credenziali client OAuth possono essere utilizzate per aggiungere un livello di revocabilità alle chiavi API. Se le tue di backend supportano le credenziali client OAuth, puoi configurare un proxy API per presentare il token di accesso alle credenziali del client per ogni richiesta.

Il proxy API deve essere configurato in modo da eseguire un callout per ottenere il token di accesso dal tuo dell'endpoint del token. Il proxy API è necessario anche per memorizzare nella cache il token di accesso, per evitare che ottenere un nuovo token di accesso per ogni chiamata.

È possibile adottare diversi approcci per implementare le credenziali client in uscita.

Puoi modificare questo esempio in modo da chiamare l'endpoint del token per ottenere un token di accesso. Questo esempio utilizza JavaScript per collegare il token alla richiesta in uscita come intestazione di autorizzazione HTTP. Tu puoi anche utilizzare Assegna Criteri relativi ai messaggi.

SAML

Il tipo di criterio Genera SAMLAssertion può essere utilizzato per collegare un'asserzione SAML a un Messaggio di richiesta XML, dal proxy API a un servizio di backend. Ciò consente al servizio di backend eseguire l'autenticazione e l'autorizzazione sulle richieste ricevute dai proxy API.

Vedi Asserzione SAML .