Stai visualizzando la documentazione di Apigee Edge.
Consulta la
documentazione di Apigee X. info
Rappresentazione dell'host virtuale
L'oggetto XML che utilizzi per definire un host virtuale si basa sulla tua versione di Edge: Cloud o Private Cloud.
Se sei un cliente Private Cloud, devi assicurarti di utilizzare il codice XML corretto per la tua versione di Edge.
Cloud e cloud privato 4.17.01 e versioni successive
<VirtualHost name="vhostName">
<Port>portNumber</Port>
<BaseUrl>http://myCo.com</BaseUrl>
<OCSPStapling>offOn</OCSPStapling>
<HostAliases>
<HostAlias>hostAlias</HostAlias>
</HostAliases>
<Interfaces>
<!-- Private Cloud only -->
<Interface>interfaceName</Interface>
</Interfaces>
<RetryOptions>
<RetryOption>option</RetryOption>
</RetryOptions>
<ListenOptions>
<ListenOption>option</ListenOption>
</ListenOptions>
<SSLInfo>
<Enabled>trueFalse</Enabled>
<ClientAuthEnabled>trueFalse</ClientAuthEnabled>
<KeyStore>ref://keystoreRef</KeyStore>
<KeyAlias>keyAlias</KeyAlias>
<TrustStore>ref://truststoreRef</TrustStore>
<IgnoreValidationErrors>trueFalse</IgnoreValidationErrors>
</SSLInfo>
<!-- UseBuiltInFreeTrialCert is for Edge Cloud only -->
<UseBuiltInFreeTrialCert>trueFalse</UseBuiltInFreeTrialCert>
<PropagateTLSInformation>
<!-- PropagateTLSInformation is Alpha in the Cloud only -->
<ConnectionProperties>trueFalse</ConnectionProperties>
<ClientProperties>trueFalse</ClientProperties>
</PropagateTLSInformation>
<Properties>
<Property name="proxy_read_timeout">timeout</Property>
<Property name="keepalive_timeout">timeout</Property>
<Property name="proxy_request_buffering">onOff</Property>
<Property name="proxy_buffering">onOff</Property>
<!-- ssl_protocols is Private Cloud only -->
<Property name="ssl_protocols">protocolList</Property>
<Property name="ssl_ciphers">cipherList</Property>
</Properties>
</VirtualHost>Private Cloud 4.16.01 fino a 4.16.09
<VirtualHost name="vhostName">
<Port>portNumber</Port>
<HostAliases>
<HostAlias>hostAlias</HostAlias>
</HostAliases>
<Interfaces>
<Interface>interfaceName</Interface>
</Interfaces>
<SSLInfo>
<Enabled>trueFalse</Enabled>
<ClientAuthEnabled>trueFalse</ClientAuthEnabled>
<KeyStore>ref://keystoreRef</KeyStore>
<KeyAlias>keyAlias</KeyAlias>
<TrustStore>ref://truststoreRef</TrustStore>
<IgnoreValidationErrors>trueFalse</IgnoreValidationErrors>
</SSLInfo>
</VirtualHost>Private Cloud 4.15.07 e versioni precedenti
<VirtualHost name="vhostName">
<Port>portNumber</Port>
<HostAliases>
<HostAlias>hostAlias</HostAlias>
</HostAliases>
<Interfaces>
<Interface>interfaceName</Interface>
</Interfaces>
<SSLInfo>
<Enabled>trueFalse</Enabled>
<ClientAuthEnabled>trueFalse</ClientAuthEnabled>
<KeyStore>keystore</KeyStore>
<KeyAlias>keyAlias</KeyAlias>
<TrustStore>truststore</TrustStore>
<IgnoreValidationErrors>trueFalse</IgnoreValidationErrors>
<Ciphers>
<Cipher>cipher</Cipher>
<Cipher>cipher</Cipher>
</Ciphers>
<Protocols>
<Protocol>protocol</Protocol>
<Protocol>protocol</Protocol>
</Protocols>
</SSLInfo>
</VirtualHost>Proprietà di configurazione dell'host virtuale
La tabella seguente elenca le proprietà che utilizzi per configurare un host virtuale:
| Proprietà | Descrizione | Predefinito | Obbligatorio | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| VirtualHost |
Specifica il nome dell'host virtuale. Utilizzi questo nome per fare riferimento all'host virtuale quando configuri un proxy API. I caratteri che puoi utilizzare nell'attributo nome sono limitati a: A-Z0-9._\-$%. |
Nessuno | Sì | ||||||||||||
| Porta |
Specifica il numero di porta utilizzato dall'host virtuale. Assicurati che la porta sia aperta sul router perimetrale. Se specifichi una porta in un elemento Per Cloud: devi specificare la porta 443 quando crei un host virtuale. Se omesso, per impostazione predefinita la porta è impostata su 443. Se hai un host virtuale esistente che utilizza una porta diversa da 443, non puoi modificare la porta. Per le release di Private Cloud dalla 4.16.01 alla 4.17.05:quando crei un host virtuale, specifica la porta del router utilizzata dall'host virtuale. Ad esempio, porta 9001. Per impostazione predefinita, il router viene eseguito come utente "apigee" che non ha accesso a porte privilegiate, in genere le porte 1024 e inferiori. Se vuoi creare un host virtuale che associa il router a una porta protetta, devi configurare il router in modo che venga eseguito come utente con accesso a queste porte. Per saperne di più, consulta Configurare un host virtuale. Per le release di Private Cloud precedenti alla 4.16.01:un router può ascoltare solo una connessione HTTPS per host virtuale, su una porta specifica, con il certificato specificato. Pertanto, più host virtuali non possono utilizzare lo stesso numero di porta se la terminazione TLS si verifica sul router alla porta specificata. |
Nessuno | Sì | ||||||||||||
| BaseUrl | Esegue l'override dell'URL visualizzato dall'UI Edge per un proxy API di cui è stato eseguito il deployment sull'host virtuale. Utile quando hai un bilanciatore del carico esterno davanti agli Edge Router. Per saperne di più, consulta
Configurazione dell'accesso TLS
a un'API per il cloud privato.
Il valore di |
Nessuno | No | ||||||||||||
| OCSPStapling |
Un client OCSP (Online Certificate Status Protocol) invia una richiesta di stato a un risponditore OCSP per determinare se il certificato TLS è valido. La risposta indica se il certificato TLS è valido e non revocato. Se abilitato, l'OCSP stapling consente a Edge, che funge da server TLS per TLS unidirezionale, di eseguire query direttamente sul risponditore OCSP e memorizzare nella cache la risposta. Edge restituisce quindi questa risposta al client TLS o la aggrega nell'ambito dell'handshake TLS. Per saperne di più, consulta Attivare OCSP Stapling sul server. TLS deve essere abilitato per attivare l'aggiornamento OCSP. Imposta su |
off | No | ||||||||||||
| HostAliases | |||||||||||||||
| HostAlias |
Il nome DNS visibile pubblicamente dell'host virtuale sul router, che include facoltativamente il numero di porta. La combinazione di nome alias host e numero di porta per l'host virtuale deve essere univoca per tutti gli host virtuali nell'installazione di Edge. Ciò significa che più host virtuali possono utilizzare lo stesso numero di porta se hanno alias host diversi. Devi creare una voce DNS e un record CNAME che corrispondano all'alias host e l'alias host deve corrispondere alla stringa che il client passa nell'intestazione Il numero di porta in Puoi avere più definizioni di Puoi includere il carattere jolly "*" nell'alias host. Il carattere jolly "*" può
trovarsi solo all'inizio (prima del primo ".") dell'alias host e non può essere combinato con altri caratteri.
Ad esempio, Per Cloud: se hai un host virtuale esistente che utilizza una porta diversa da 443, non puoi aggiungere o rimuovere un alias host. Per il cloud privato:se imposti l'alias host utilizzando gli indirizzi IP dei router e non le voci DNS, aggiungi un alias host separato per ogni router, specificando l'indirizzo IP di ciascun router e la porta dell'host virtuale. |
Nessuno | Sì | ||||||||||||
| Interfacce | Disponibile solo per Edge for Private Cloud. | ||||||||||||||
| Interfaccia |
Specifica le interfacce di rete a cui vuoi che Ad esempio, per specificare di associare la porta solo a en0: <Interfaces> <Interface>en0</Interface> </Interfaces> Determina le interfacce disponibili sul tuo sistema eseguendo il comando "ifconfig -a". |
Nessuno | Tutte le interfacce | ||||||||||||
| RetryOptions | Disponibile per Edge Cloud e per Private Cloud 4.18.01 e versioni successive. | ||||||||||||||
| RetryOption |
Configura il modo in cui il router reagisce per questo host virtuale quando il processore di messaggi non è disponibile. Puoi specificare più valori utilizzando
Se specifichi più valori, il router li combina utilizzando l'operatore logico OR. Ad esempio: <RetryOptions> <RetryOption>http_599</RetryOption> <RetryOption>error</RetryOption> <RetryOption>timeout</RetryOption> <RetryOption>invalid_header</RetryOption> </RetryOptions> |
||||||||||||||
| ListenOptions | Disponibile per Private Cloud 4.18.01 e versioni successive e per Edge Cloud inviando una richiesta all'assistenza Apigee Edge. | ||||||||||||||
| ListenOption |
Se utilizzi un ELB in modalità pass-through TCP per gestire le richieste ai router di confine,
il router considera l'indirizzo IP dell'ELB come IP client anziché
l'IP client effettivo. Se il router richiede l'IP client reale,
attiva Il valore predefinito per Ad esempio: <ListenOptions> <ListenOption>proxy_protocol</ListenOption> </ListenOptions> Per annullare in un secondo momento |
||||||||||||||
| SSLInfo | |||||||||||||||
| Abilitata |
Abilita TLS/SSL unidirezionale. Devi aver definito un keystore contenente il certificato e la chiave privata. Per Cloud: devi disporre di un certificato firmato da un'entità attendibile, ad esempio Symantec o VeriSign. Non puoi utilizzare un certificato autofirmato o certificati foglia firmati da un'autorità di certificazione autofirmata. Per Cloud: se l'host virtuale esistente è configurato per utilizzare una porta diversa dalla 443, non puoi modificare l'impostazione TLS. Ciò significa che non puoi modificare l'impostazione TLS da attivata a disattivata o viceversa. |
false | No | ||||||||||||
| ClientAuthEnabled | Abilita TLS bidirezionale o client tra Edge (server) e l'app (client) che effettua la richiesta. L'abilitazione di TLS a due vie richiede la configurazione di un truststore su Edge che contenga il certificato del client TLS. | false | No | ||||||||||||
| KeyStore |
Il nome dell'archivio chiavi su Edge. Apigee consiglia di utilizzare un riferimento per specificare il nome del keystore in modo da poterlo modificare senza dover riavviare i router. Per saperne di più, consulta Opzioni per la configurazione di TLS. |
Nessuno | Sì, se Enabled è true | ||||||||||||
| KeyAlias | L'alias specificato quando hai caricato il certificato e la chiave privata nell'archivio chiavi. Devi specificare il nome dell'alias letteralmente; non puoi utilizzare un riferimento. Per saperne di più, consulta Opzioni per la configurazione di TLS. | Nessuno | Sì, se Enabled è true | ||||||||||||
| TrustStore |
Il nome dell'archivio attendibilità su Edge che contiene il certificato o la catena di certificati
utilizzati per TLS bidirezionale. Obbligatorio se Apigee consiglia di utilizzare un riferimento per specificare il nome del truststore in modo da poterlo modificare senza dover riavviare i router. Per saperne di più, consulta Opzioni per la configurazione di TLS. |
Nessuno | No | ||||||||||||
| IgnoreValidationErrors |
Se il valore è true, specifica di ignorare gli errori del certificato TLS. Questa opzione è simile all'opzione "-k" per cURL. Questa opzione è valida quando configuri TLS per i server di destinazione e gli endpoint di destinazione e quando configuri host virtuali che utilizzano TLS bidirezionale. Se utilizzato con un endpoint di destinazione/server di destinazione, se il sistema di backend utilizza SNI e restituisce un certificato con un nome distinto (DN) del soggetto che non corrisponde al nome host, non è possibile ignorare l'errore e la connessione non va a buon fine. |
false | No | ||||||||||||
| Cifrari |
Solo per Edge for Private Cloud versione 4.15.07 e precedenti. Specifica le cifrature supportate dall'host virtuale. Se non vengono specificate cifrature, saranno consentite tutte le cifrature disponibili per la JVM. Per limitare le cifrature, aggiungi i seguenti elementi: <Ciphers> <Cipher>TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA</Cipher> <Cipher>TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256</Cipher> </Ciphers> |
Tutti i linguaggi supportati dalla JVM | No | ||||||||||||
| Protocolli |
Solo per Edge for Private Cloud versione 4.15.07 e precedenti. Specifica i protocolli supportati dall'host virtuale. Se non vengono specificati protocolli, saranno consentiti tutti i protocolli disponibili per la JVM. Per limitare i protocolli, aggiungi i seguenti elementi: <Protocols> <Protocol>TLSv1</Protocol> <Protocol>TLSv1.2</Protocol> <Protocol>SSLv2Hello</Protocol> </Protocols> |
Tutti i linguaggi supportati dalla JVM | No | ||||||||||||
| UseBuiltInFreeTrialCert | Disponibile solo per Edge Cloud. | ||||||||||||||
| UseBuiltInFreeTrialCert |
Se hai un account Edge for Cloud a pagamento e non disponi ancora di un certificato e di una chiave TLS, puoi creare un host virtuale che utilizzi il certificato e la chiave della prova senza costi di Apigee. Ciò significa che puoi creare l'host virtuale senza prima creare un keystore. Il certificato di prova senza costi di Apigee è definito per un dominio di |
false | No | ||||||||||||
| PropagateTLSInformation | Disponibile in versione alpha solo per Edge Cloud. | ||||||||||||||
| ConnectionProperties |
Consente l'acquisizione delle informazioni sulla connessione TLS da parte di Edge. Queste informazioni sono quindi disponibili come variabili di flusso in un proxy API. Per saperne di più, consulta Accesso alle informazioni sulla connessione TLS in un proxy API. |
false | No | ||||||||||||
| ClientProperties |
Consente l'acquisizione dei dettagli del certificato client acquisiti da Edge in TLS bidirezionale. Queste informazioni sono quindi disponibili come variabili di flusso in un proxy API. Per saperne di più, consulta Accesso alle informazioni sulla connessione TLS in un proxy API. |
false | No | ||||||||||||
| Proprietà | Disponibile per Edge Cloud e per Private Cloud 4.17.01 e versioni successive. | ||||||||||||||
| proxy_read_timeout |
Imposta la durata del timeout, in secondi, tra i processori di messaggi e il router. Il router interrompe la connessione e restituisce una risposta HTTP 504 se non riceve una risposta dal processore di messaggi prima della scadenza di questo periodo. Il valore di proxy_read_timeout deve essere maggiore del valore di timeout di destinazione utilizzato
dal processore di messaggi. In questo modo, il router non va in timeout prima che il
processore di messaggi abbia avuto il tempo di restituire una risposta. Il timeout di destinazione predefinito per il
processore di messaggi è 55 secondi, 55.000 millisecondi, come definito dal
token |
57 | No | ||||||||||||
| keepalive_timeout |
Imposta la durata del timeout, in secondi, tra il client e il router quando il client effettua una richiesta che contiene l'intestazione Keep-Alive. Il router mantiene aperta la connessione fino alla scadenza della durata. Il router non chiuderà la connessione se è attualmente in attesa di una risposta dal processore di messaggi. Il timeout inizia solo dopo che il router restituisce la risposta al client. |
65 | No | ||||||||||||
| ssl_ciphers |
Imposta le cifrature supportate dall'host virtuale, ignorando le cifrature predefinite impostate sul router. Specifica un elenco di cifrari delimitati da due punti nel formato: <Property name="ssl_ciphers">HIGH:!aNULL:!MD5:!DH+3DES:!kEDH;</Property> Per informazioni sulla sintassi e sui valori consentiti da questo token, consulta la pagina https://www.openssl.org/docs/man1.0.2/man1/ciphers.html. Tieni presente che questo token utilizza i nomi delle cifrature OpenSSL, ad esempio AES128-SHA256, e non i nomi delle cifrature Java/JSSE, ad esempio TLS_RSA_WITH_AES_128_CBC_SHA256. |
ALTO:!aNULL:
!MD5: !DH+3DES: !kEDH |
No | ||||||||||||
| ssl_protocols |
Disponibile solo per Edge for Private Cloud. Imposta i protocolli TLS supportati dall'host virtuale come elenco delimitato da spazi, ignorando i protocolli predefiniti impostati sul router. Nota: se due host virtuali condividono la stessa porta, devono impostare
Specifica un elenco di protocolli TLS delimitati da spazi nel formato: <Property name="ssl_protocols">TLSv1 TLSv1.2</Property> |
TLSv1 TLSv1.1 TLSv1.2 | No | ||||||||||||
| proxy_request_buffering |
Attiva (on) o disattiva (off) il buffering del corpo della richiesta. Quando il buffering è attivo, il router memorizza nel buffer l'intero corpo della richiesta prima di inviarlo al processore di messaggi. Se si verifica un errore, il router può riprovare con un processore di messaggi diverso. Se disattivato, il buffering viene disabilitato e il corpo della richiesta viene inviato immediatamente al processore di messaggi non appena viene ricevuto. Se si verifica un errore, il router non ritenta la richiesta a un altro processore di messaggi. |
on | No | ||||||||||||
| proxy_buffering | Attiva (on) o disattiva (off) il buffering della risposta. Quando il buffering è attivo, il router memorizza la risposta nel buffer. Quando il buffering è disattivato, la risposta viene passata al client in modo sincrono, non appena viene ricevuta dal router. | on | No | ||||||||||||