Opzioni per la configurazione di TLS

Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione Documentazione di Apigee X.
Informazioni

Questo documento contiene una panoramica della configurazione di TLS su Edge per due aree geografiche:

  1. Accesso ai proxy API da parte dei client API. Utilizza host virtuali su Edge Router per configurare TLS.
  2. Accesso ai tuoi servizi di backend da parte di Edge. Usare endpoint di destinazione e target server sul processore di messaggi Edge per configurare TLS.

Di seguito sono riportati entrambi i tipi di accesso:

Informazioni impostare le opzioni TLS in un host virtuale o in un endpoint/server di destinazione

Un host virtuale può essere rappresentato da un oggetto XML, nel formato:

<VirtualHost name="secure">
    ...
    <SSLInfo> 
        <Enabled>true</Enabled> 
        <ClientAuthEnabled>true</ClientAuthEnabled> 
        <KeyStore>ref://myKeystoreRef</KeyStore> 
        <KeyAlias>myKeyAlias</KeyAlias> 
        <TrustStore>ref://myTruststoreRef</TrustStore> 
        <IgnoreValidationErrors>false</IgnoreValidationErrors>
    </SSLInfo>
</VirtualHost>

L'area dell'host virtuale che modifichi per configurare TLS è definita dal tag &lt;SSLInfo&gt;. Puoi utilizzare stesso tag &lt;SSLInfo&gt; per configurare l'endpoint o il server di destinazione.

Nella tabella seguente vengono descritti gli elementi di configurazione TLS utilizzati dal tag &lt;SSLInfo&gt;:

Elemento Descrizione
&lt;Enabled&gt;

Abilita TLS unidirezionale tra Edge e il client API o tra Edge e la destinazione di un backend cloud.

Per un host virtuale, devi definire un archivio chiavi contenente il certificato e chiave.

&lt;ClientAuthEnabled&gt;

Abilita il TLS bidirezionale tra Edge e il client API o tra Edge e la destinazione di un backend cloud.

L'abilitazione del protocollo TLS a due vie in genere richiede la configurazione di un archivio attendibilità su Edge.

&lt;KeyStore&gt; l'archivio chiavi.
&lt;KeyAlias&gt; L'alias specificato quando hai caricato un certificato e una chiave privata nell'archivio chiavi.
&lt;TrustStore&gt; L'archivio attendibilità.
&lt;IgnoreValidationErrors&gt;

Se impostato su true, Edge ignora gli errori del certificato TLS. Valido durante la configurazione di TLS per server ed endpoint di destinazione e durante la configurazione di host virtuali che utilizzano TLS. Il valore predefinito è false.

Se utilizzato con un endpoint/server di destinazione, se il sistema di backend utilizza SNI e restituisce un certificato con un nome distinto (DN) soggetto che non corrisponde al nome host, non c'è modo per ignorare l'errore e la connessione non riesce.

&lt;CommonName&gt;

Se specificato, un valore in base al quale viene convalidato il nome comune del certificato di destinazione. Questo valore è valido solo per le configurazioni TargetEndpoint e TargetServer. Non è valido per le configurazioni VirtualHost.

Per impostazione predefinita, il valore specificato corrisponde esattamente al nome comune del certificato di destinazione. Ad esempio, l'utilizzo di *.myhost.com come valore per <CommonName> corrisponderà solo il nome host di destinazione viene convalidato se il valore esatto *.myhost.com è specificato come nome comune nel certificato di destinazione.

Facoltativamente, Apigee può eseguire la corrispondenza con i caratteri jolly utilizzando l'attributo wildcardMatch.

Ad esempio, un nome comune specificato come abc.myhost.com in un certificato di destinazione viene abbinato e convalidato se il <CommonName> è specificato come segue:

<CommonName wildcardMatch="true">*.myhost.com</CommonName>

Informazioni sull'impostazione del &lt;KeyStore&gt; e <TrustStore> elementi

Nell'esempio di host virtuale riportato sopra, l'archivio chiavi e l'archivio chiavi vengono specificati utilizzando riferimenti, nella forma:

<KeyStore>ref://myKeystoreRef</KeyStore>
<TrustStore>ref://myTruststoreRef</TrustStore>

Apigee consiglia vivamente di utilizzare sempre i riferimenti all'archivio chiavi e all'archivio chiavi. R riferimento è una variabile che contiene il nome dell'archivio chiavi o dell'archivio chiavi, anziché specificando direttamente il nome dell'archivio chiavi. In questo esempio:

  • myKeystoreRef è un riferimento che contiene il nome del un archivio chiavi. In questo esempio, il nome dell'archivio chiavi è myKeystore.
  • myTruststoreRef è un riferimento che contiene il nome del archivio attendibilità. In questo esempio, il nome del truststore è myTruststore.

Quando un certificato scade, devi aggiornare l'host virtuale o l'endpoint/il server di destinazione specificare l'archivio chiavi o l'archivio chiavi in cui si trova il nuovo certificato. Il vantaggio di un riferimento è che puoi modificare il valore del riferimento per cambiare l'archivio chiavi o l'archivio chiavi senza dover modifica l'host virtuale o l'endpoint/il server di destinazione stesso:

  • Per i clienti Cloud: la modifica del valore del riferimento non richiede di contattare l'assistenza Apigee Edge.
  • Per i clienti del cloud privato: la modifica del valore del riferimento non richiede il riavvio dei componenti Edge, come router e processori di messaggi.

In alternativa, puoi specificare direttamente il nome dell'archivio chiavi e il nome dell'archivio chiavi:

<KeyStore>myKeystore</KeyStore>
<TrustStore>myTruststore</TrustStore> 

Se specifichi direttamente il nome dell'archivio chiavi o dell'archivio chiavi, i clienti di Google Cloud devono Contatta l'assistenza Apigee Edge e i clienti del cloud privato devono riavviare alcuni componenti Edge per aggiornare il certificato.

Una terza opzione, solo per endpoint/server di destinazione, consiste nell'utilizzare le variabili di flusso:

<KeyStore>{ssl.keystore}</KeyStore>
<TrustStore>{ssl.truststore}</TrustStore> 

Le variabili di flusso funzionano per gli endpoint/server di destinazione e ti consentono di aggiornare l'archivio chiavi come riferimenti. Tuttavia, non funzionano con gli host virtuali e richiedono il superamento informazioni su archivio chiavi, alias e truststore a ogni richiesta.

Limitazioni relative all'utilizzo riferimenti ad archivi chiavi e archivi attendibili

I clienti del cloud a pagamento e tutti i clienti del cloud privato che configurano TLS devono tenere conto la seguente limitazione quando si utilizzano i riferimenti ad archivi chiavi e archivi attendibili:

  • Se esegui la terminazione di TLS, puoi utilizzare i riferimenti di un archivio chiavi e un archivio attendibilità negli host virtuali sui router Apigee.
  • Se hai un bilanciatore del carico davanti ai router Apigee e interrompi TLS sul non puoi usare i riferimenti di un archivio chiavi e un archivio attendibilità negli host virtuali.

Se l'host virtuale esistente utilizza un nome letterale dell'archivio chiavi o dell'archivio attendibili

Gli host virtuali esistenti su Edge potrebbero non essere configurati per l'utilizzo dei riferimenti per gli archivi chiavi e truststore. In questo caso, puoi aggiornare l'host virtuale per utilizzare un riferimento.

  1. Edge per il cloud

    Per cambiare l'host virtuale in modo che utilizzi un riferimento all'archivio chiavi su cui devi lavorare Assistenza Apigee Edge.

  2. Edge per il cloud privato

    Per convertire l'host virtuale in modo da utilizzare un riferimento:

    1. Aggiorna l'host virtuale per utilizzare un riferimento.
    2. Riavvia i router.
    di Gemini Advanced. Consulta la sezione "Modifica di un host virtuale per utilizzare i riferimenti all'archivio chiavi e all'archivio chiavi" in Configurare l'accesso TLS a API per il cloud privato per saperne di più.

Informazioni sull'utilizzo del certificato e della chiave di prova senza costi di Apigee

Se disponi di un account Edge a pagamento per Cloud e non disponi ancora di un certificato e di una chiave TLS, puoi creare un host virtuale che utilizza il certificato e la chiave di prova senza costi di Apigee. Ciò significa che puoi creare l'host virtuale senza prima creare un archivio chiavi.

Un oggetto XML che definisce l'host virtuale utilizzando il certificato di prova senza costi e la chiave Apigee omette la <KeyStore> e <KeyAlias> e li sostituisce con <UseBuiltInFreeTrialCert> elemento, come mostrato di seguito:

<VirtualHost name="myTLSVHost">
    <HostAliases>
        <HostAlias>myapi.apigee.net</HostAlias>
    </HostAliases>
    <Port>443</Port>
    <SSLInfo>
        <Enabled>true</Enabled>
        <ClientAuthEnabled>false</ClientAuthEnabled>
    </SSLInfo>
    <UseBuiltInFreeTrialCert>true</UseBuiltInFreeTrialCert>
</VirtualHost>

Se utilizzi il protocollo TLS bidirezionale, devi comunque impostare l'elemento <ClientAuthEnabled> su true e specifica un archivio attendibilità utilizzando un riferimento con l'elemento <TrustStore>.

Consulta Configurazione di host virtuali per il cloud per saperne di più.

Informazioni sulla configurazione di TLS

Due fattori principali determinano il modo in cui esegui la configurazione TLS:

  • Sei un cliente di Edge Cloud o di un cloud privato?
  • Come aggiornerai i certificati scaduti o in scadenza?

Configurazione cloud e cloud privato opzioni

La tabella seguente mostra le diverse opzioni di configurazione per Cloud e Cloud privato clienti:

Private Cloud Cloud
Host virtuale Controllo completo Controllo completo solo per gli account a pagamento
Endpoint/server di destinazione Controllo completo Controllo completo

I clienti del cloud privato hanno il controllo completo sulla configurazione sia degli host virtuali endpoint/server di destinazione. che include la possibilità di creare ed eliminare e impostare tutte le proprietà su un host virtuale.

Tutti i clienti Cloud, sia a pagamento che di valutazione, hanno il controllo completo della configurazione endpoint/server di destinazione. Inoltre, i clienti Google Cloud a pagamento hanno il controllo completo host virtuali, incluse le proprietà TLS.

Gestione dei certificati scaduti

Se un certificato TLS scade o se la configurazione di sistema viene modificata in modo che non è più valido, devi aggiornarlo. Durante la configurazione di TLS per un host virtuale o un endpoint/server di destinazione, devi decidere come eseguire l'aggiornamento prima di eseguire qualsiasi configurazione.

Alla scadenza di un certificato

Su Edge, i certificati vengono memorizzati in una delle due posizioni seguenti:

  • Archivio chiavi: contiene il certificato TLS e la chiave privata utilizzati per identificare durante l'handshake TLS.
  • Truststore: contiene i certificati attendibili su un client TLS utilizzato per convalidare il certificato di un server TLS presentato al client. Questi certificati sono in genere certificati autofirmati, certificati firmati da un'autorità di certificazione attendibile o certificati utilizzati nell'ambito di un sistema bidirezionale TLS.

Quando un certificato in un archivio chiavi scade e utilizzi un riferimento archivio chiavi, non potrai caricare un nuovo certificato nell'archivio chiavi. Devi:

  1. Creare un nuovo archivio chiavi.
  2. Carica il nuovo certificato nel nuovo archivio chiavi utilizzando lo stesso nome alias dell'archivio chiavi. il vecchio archivio chiavi.
  3. Aggiorna il riferimento nell'host virtuale o nell'endpoint server/target di destinazione per utilizzare il nuovo un archivio chiavi.

Quando un certificato in un truststore scade e utilizzi un riferimento alla truststore,

  1. Crea un nuovo archivio attendibilità.
  2. Carica il nuovo certificato nel nuovo archivio attendibilità. Il nome dell'alias non è importante per i truststore. Nota: se un certificato fa parte di una catena, devi creare un singolo file contenente tutti i certificati e caricare tale file su un singolo alias, oppure caricare tutti i certificati nel separatamente al truststore utilizzando un alias diverso per ciascun certificato.
  3. Aggiorna il riferimento nell'host virtuale o nell'endpoint server/target di destinazione per utilizzare il nuovo archivio attendibilità.

Riepilogo dei metodi di aggiornamento di un messaggio scaduto certificato

Il metodo che utilizzi per specificare il nome dell'archivio chiavi e dell'archivio chiavi nell'host virtuale o l'endpoint/server di destinazione determina il modo in cui esegui l'aggiornamento del certificato. Puoi utilizzare:

  • Riferimenti
  • Nomi diretti
  • Variabili di flusso

Ognuno di questi metodi ha ripercussioni diverse sul processo di aggiornamento, come descritto nel seguente. Come puoi vedere, i riferimenti offrono la massima flessibilità sia per Cloud I clienti del cloud privato:

Tipo di configurazione Come aggiornare/sostituire il certificato Private Cloud Cloud
Riferimento (consigliato) Per un archivio chiavi, crea un nuovo archivio chiavi con un nuovo nome e un alias con stesso nome del vecchio alias.

Per un archivio attendibilità, crea un archivio attendibilità con un nuovo nome.

Aggiorna il riferimento all'archivio chiavi o all'archivio chiavi.

Non è necessario riavviare il router o il processore di messaggi.

Aggiorna il riferimento all'archivio chiavi o all'archivio chiavi.

Non è necessario contattare l'assistenza Apigee.

Variabili flusso (solo endpoint di destinazione) Per un archivio chiavi, crea un nuovo archivio chiavi con un nuovo nome e un alias con con lo stesso nome o con un nuovo nome.

Per un archivio attendibilità, crea un archivio attendibilità con un nuovo nome.

Passa una variabile di flusso aggiornata su ogni richiesta con il nome del nuovo archivio chiavi, alias o archivio attendibilità.

Non è necessario riavviare il router o il processore di messaggi.

Passa una variabile di flusso aggiornata su ogni richiesta con il nome del nuovo archivio chiavi, alias o archivio attendibilità.

Non è necessario contattare l'assistenza Apigee.

Diretto Creare un nuovo archivio chiavi, alias o archivio attendibilità. Aggiorna l'host virtuale e riavvia i router.

Se l'archivio attendibili è utilizzato da un endpoint/server di destinazione, esegui nuovamente il deployment del proxy.

Per gli host virtuali, contatta l'assistenza Apigee Edge per riavviare i router.

Se l'archivio attendibili è utilizzato da un endpoint/server di destinazione, esegui nuovamente il deployment del proxy.

Diretto Elimina l'archivio chiavi o l'archivio attendibili e ricrealo con lo stesso nome. Non è necessario aggiornare l'host virtuale e riavviare il router. Tuttavia, le richieste API non vanno a buon fine finché non vengono impostati il nuovo archivio chiavi e l'alias.

Se l'archivio chiavi viene utilizzato per il TLS bidirezionale tra Edge e il servizio di backend, riavvia processori di messaggi.

Non è richiesto alcun aggiornamento dell'host virtuale. Tuttavia, le richieste API non vanno a buon fine finché il nuovo archivio chiavi e .

Se l'archivio chiavi viene utilizzato per il TLS bidirezionale tra Edge e il servizio di backend, Contatta l'assistenza Apigee Edge per riavviare i processori di messaggi.

Diretto Solo per l'archivio attendibilità, carica un nuovo certificato nell'archivio attendibili. Se il truststore è utilizzato da un host virtuale, riavvia i router.

Se l'archivio attendibili viene utilizzato da un endpoint/server di destinazione, riavvia il modulo Processori.

Per gli host virtuali, contatta l'assistenza Apigee Edge per riavviare i router Edge.

Se il truststore viene utilizzato da un endpoint/server di destinazione, contatta l'assistenza Apigee Edge per riavviare i processori di messaggi.