Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X. info
Reprezentacja hosta wirtualnego
Obiekt XML, którego używasz do zdefiniowania hosta wirtualnego, jest oparty na Twojej wersji Edge: Cloud lub Private Cloud.
Jeśli jesteś klientem usługi Private Cloud, musisz upewnić się, że używasz odpowiedniego pliku XML dla swojej wersji Edge.
Cloud i Private Cloud w wersji 4.17.01 lub nowszej
<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–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>
Chmura prywatna w wersji 4.15.07 i wcześniejszych
<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>
Właściwości konfiguracji hosta wirtualnego
W tabeli poniżej znajdziesz właściwości, których używasz do konfigurowania hosta wirtualnego:
Właściwości | Opis | Domyślny | Wymagane | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
VirtualHost |
Określa nazwę hosta wirtualnego. Używasz tej nazwy do odwoływania się do hosta wirtualnego podczas konfigurowania serwera proxy API. W atrybucie nazwa możesz używać tylko tych znaków: A-Z0-9._\-$%. |
Brak | Tak | ||||||||||||
Port |
Określa numer portu używany przez hosta wirtualnego. Sprawdź, czy port jest otwarty na routerze Edge. Jeśli w elemencie W przypadku usługi Cloud: podczas tworzenia hosta wirtualnego musisz podać port 443. Jeśli pominiesz ten parametr, domyślnie zostanie ustawiony port 443. Jeśli masz już hosta wirtualnego, który używa portu innego niż 443, nie możesz go zmienić. W przypadku Private Cloud w wersjach od 4.16.01 do 4.17.05: podczas tworzenia hosta wirtualnego określasz port routera używany przez hosta wirtualnego. Na przykład: port 9001. Domyślnie router działa jako użytkownik „apigee”, który nie ma dostępu do portów uprzywilejowanych, zazwyczaj portów 1024 i niższych. Jeśli chcesz utworzyć hosta wirtualnego, który powiąże router z zabezpieczonym portem, musisz skonfigurować router tak, aby działał jako użytkownik z dostępem do tych portów. Więcej informacji znajdziesz w artykule Konfigurowanie hosta wirtualnego. W przypadku wersji Private Cloud starszych niż 4.16.01: router może nasłuchiwać tylko jednego połączenia HTTPS na hosta wirtualnego na określonym porcie z określonym certyfikatem. Dlatego wiele hostów wirtualnych nie może używać tego samego numeru portu, jeśli zakończenie TLS odbywa się na routerze na określonym porcie. |
Brak | Tak | ||||||||||||
BaseUrl | Zastępuje adres URL wyświetlany przez interfejs Edge w przypadku serwera proxy interfejsu API wdrożonego na hosta wirtualnego. Ta opcja jest przydatna, gdy przed routerami brzegowymi znajduje się zewnętrzny system równoważenia obciążenia. Więcej informacji znajdziesz w artykule Konfigurowanie dostępu TLS do interfejsu API w Private Cloud.
Wartość |
Brak | Nie | ||||||||||||
OCSPStapling |
Klient OCSP (Online Certificate Status Protocol) wysyła żądanie stanu do odpowiadacza OCSP, aby ustalić, czy certyfikat TLS jest prawidłowy. Odpowiedź wskazuje, czy certyfikat TLS jest ważny i nie został odwołany. Po włączeniu szpilkowania OCSP przeglądarka Edge, działająca jako serwer TLS w przypadku jednokierunkowego TLS, może bezpośrednio wysłać zapytanie do odpowiadacza OCSP, a następnie zapisać odpowiedź w pamięci podręcznej. Edge zwraca tę odpowiedź do klienta TLS lub zszywa ją w ramach uzgadniania połączenia TLS. Więcej informacji znajdziesz w artykule Włączanie sztaplowania OCSP na serwerze. Aby umożliwić zszywanie OCSP, musisz włączyć protokół TLS. Ustaw na |
wył. | Nie | ||||||||||||
HostAliases | |||||||||||||||
HostAlias |
Publicznie widoczna nazwa DNS hosta wirtualnego na routerze, opcjonalnie z numerem portu. Kombinacja nazwy aliasu hosta i numeru portu hosta wirtualnego musi być niepowtarzalna dla wszystkich hostów wirtualnych w instalacji Edge. Oznacza to, że wiele wirtualnych hostów może używać tego samego numeru portu, jeśli mają różne aliasy hosta. Musisz utworzyć wpis DNS i rekord CNAME, który pasuje do aliasu hosta, a alias hosta musi pasować do ciągu przekazanego przez klienta w nagłówku Numer portu w W tej samej definicji hosta wirtualnego możesz mieć wiele definicji W aliasie hosta możesz użyć symbolu wieloznacznego „*”. Symbol wieloznaczny „*” może się znajdować tylko na początku (poprzedzający pierwszy „.”) aliasu hosta i nie można go łączyć z innymi znakami.
Na przykład W przypadku usługi w chmurze: jeśli masz istniejący host wirtualny, który używa portu innego niż 443, nie możesz dodać ani usunąć aliasu hosta. W przypadku chmury Private Cloud: jeśli ustawiasz alias hosta przy użyciu adresów IP routerów, a nie wpisów DNS, dodaj osobny alias hosta dla każdego routera, określając adres IP każdego routera i port hosta wirtualnego. |
Brak | Tak | ||||||||||||
Interfejsy | Dostępne tylko w przypadku Edge for Private Cloud. | ||||||||||||||
Interfejs |
Określa interfejsy sieciowe, do których ma być przypisana usługa Aby na przykład określić wiązanie portu tylko z interfejsem en0: <Interfaces> <Interface>en0</Interface> </Interfaces> Określ interfejsy dostępne w systemie, uruchamiając polecenie „ifconfig -a”. |
Brak | Wszystkie interfejsy | ||||||||||||
RetryOptions | Dostępne w Edge Cloud i Private Cloud w wersji 4.18.01 lub nowszej. | ||||||||||||||
RetryOption |
Skonfiguruj sposób reakcji routera dla tego hosta wirtualnego, gdy usługa Message Processor przestanie działać. Aby podać wiele wartości, użyj
Jeśli podasz kilka wartości, Router połączy je za pomocą operatora logicznego LUB. Na przykład: <RetryOptions> <RetryOption>http_599</RetryOption> <RetryOption>error</RetryOption> <RetryOption>timeout</RetryOption> <RetryOption>invalid_header</RetryOption> </RetryOptions> |
||||||||||||||
ListenOptions | Dostępne w wersji Private Cloud 4.18.01 lub nowszej oraz w przypadku Edge Cloud po wysłaniu prośby do zespołu pomocy Apigee Edge. | ||||||||||||||
ListenOption |
Jeśli używasz narzędzia ELB w trybie przekazywania TCP do obsługi żądań wysyłanych do routerów brzegowych, router będzie traktować adres IP zbioru ELB jako adres IP klienta, a nie rzeczywisty adres IP klienta. Jeśli router wymaga prawdziwego adresu IP klienta, włącz Domyślną wartością pola Na przykład: <ListenOptions> <ListenOption>proxy_protocol</ListenOption> </ListenOptions> Aby później cofnąć ustawienie |
||||||||||||||
SSLInfo | |||||||||||||||
Włączono |
Włącza szyfrowanie TLS/SSL w jednym kierunku. Musisz zdefiniować magazyn kluczy zawierający certyfikat i klucz prywatny. W przypadku Cloud: musisz mieć certyfikat podpisany przez zaufany podmiot, np. Symantec lub VeriSign. Nie możesz używać certyfikatu podpisanego samodzielnie ani certyfikatów liści podpisanych przez podpisany samodzielnie urząd certyfikacji. W przypadku usługi w chmurze: jeśli istniejący host wirtualny jest skonfigurowany tak, aby używać portu innego niż 443, nie możesz zmienić ustawienia TLS. Oznacza to, że nie możesz zmienić ustawienia TLS z włączonego na wyłączony ani z wyłączonego na włączony. |
fałsz | Nie | ||||||||||||
ClientAuthEnabled | Umożliwia dwukierunkowe szyfrowanie TLS między Edge (serwerem) a aplikacją (klientem) wysyłającą żądanie. Włączenie dwukierunkowego protokołu TLS wymaga skonfigurowania w Edge magazynu zaufania, który zawiera certyfikat z klienta TLS. | fałsz | Nie | ||||||||||||
KeyStore |
Nazwa magazynu kluczy w Edge. Apigee zaleca użycie odwołania do nazwy keystore, aby można było zmienić keystore bez restartowania Routerów. Więcej informacji znajdziesz w sekcji Opcje konfiguracji TLS. |
Brak | Tak, jeśli wartość Enabled to prawda | ||||||||||||
KeyAlias | Alias określony podczas przesyłania certyfikatu i klucza prywatnego do magazynu kluczy. Musisz podać nazwę aliasu dosłownie; nie możesz użyć odwołania. Więcej informacji znajdziesz w sekcji Opcje konfiguracji TLS. | Brak | Tak, jeśli parametr Enabled ma wartość true | ||||||||||||
TrustStore |
Nazwa zaufanej pamięci w Edge, która zawiera certyfikat lub łańcuch certyfikatów używany do dwukierunkowego TLS. Wymagane, jeśli parametr Apigee zaleca użycie odwołania do nazwy repozytorium zaufania, aby można było zmienić repozytorium zaufania bez restartowania routerów. Więcej informacji znajdziesz w sekcji Opcje konfiguracji TLS. |
Brak | Nie | ||||||||||||
IgnoreValidationErrors |
Jeśli ma wartość true (prawda), określa, że błędy certyfikatu TLS mają być ignorowane. Jest to podobne do opcji „-k” w przypadku cURL. Ta opcja ma zastosowanie podczas konfigurowania protokołu TLS dla serwerów docelowych i docelowych punktów końcowych oraz podczas konfigurowania hostów wirtualnych korzystających z dwukierunkowego protokołu TLS. Jeśli system backendu używa SNI i zwraca certyfikat z nazwą podmiotu (DN), która nie pasuje do nazwy hosta, a punkt końcowy lub serwer docelowy jest używany, nie można zignorować błędu i połączenie się nie powiedzie. |
fałsz | Nie | ||||||||||||
Szyfry |
Dotyczy tylko Edge for Private Cloud w wersji 4.15.07 lub starszej. Określa mechanizmy szyfrowania obsługiwane przez hosta wirtualnego. Jeśli nie zostaną określone żadne szyfry, dozwolone będą wszystkie szyfry dostępne dla JVM. Aby ograniczyć szyfry, dodaj te elementy: <Ciphers> <Cipher>TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA</Cipher> <Cipher>TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256</Cipher> </Ciphers> |
wszystkie obsługiwane przez JVM, | Nie | ||||||||||||
Protokoły |
Dotyczy tylko przeglądarki Edge for Private Cloud w wersji 4.15.07 lub starszej. Określa protokoły obsługiwane przez hosta wirtualnego. Jeśli nie określisz protokołów, wszystkie protokoły dostępne dla JVM będą dozwolone. Aby ograniczyć protokoły, dodaj te elementy: <Protocols> <Protocol>TLSv1</Protocol> <Protocol>TLSv1.2</Protocol> <Protocol>SSLv2Hello</Protocol> </Protocols> |
wszystkie obsługiwane przez JVM, | Nie | ||||||||||||
UseBuiltInFreeTrialCert | Dostępne tylko w przypadku Edge Cloud. | ||||||||||||||
UseBuiltInFreeTrialCert |
Jeśli masz płatne konto Edge dla Cloud i nie masz jeszcze certyfikatu ani klucza TLS, możesz utworzyć hosta wirtualnego korzystającego z bezpłatnego certyfikatu i klucza próbnego Apigee. Oznacza to, że możesz utworzyć hosta wirtualnego bez wcześniejszego utworzenia magazynu kluczy. Certyfikat bezpłatnego okresu próbnego Apigee jest zdefiniowany dla domeny Zobacz temat Definiowanie hosta wirtualnego, który używa certyfikatu i klucza z bezpłatnej wersji próbnej Apigee. |
fałsz | Nie | ||||||||||||
PropagateTLSInformation | Dostępne w wersji alfa tylko w Edge Cloud. | ||||||||||||||
ConnectionProperties |
Umożliwia rejestrowanie informacji o połączeniu TLS przez Edge. Te informacje są potem dostępne jako zmienne przepływu w proxy interfejsu API. Więcej informacji znajdziesz w artykule Dostęp do informacji o połączeniu TLS w pośredniku interfejsu API. |
fałsz | Nie | ||||||||||||
ClientProperties |
Umożliwia przechwytywanie szczegółów certyfikatu klienta przez Edge w ramach dwukierunkowego TLS. Te informacje są potem dostępne jako zmienne przepływu w proxy interfejsu API. Więcej informacji znajdziesz w artykule Dostęp do informacji o połączeniu TLS w interfejsie API proxy. |
fałsz | Nie | ||||||||||||
Usługi | Dostępne w Edge Cloud i Private Cloud w wersji 4.17.01 lub nowszej. | ||||||||||||||
proxy_read_timeout |
Ustawia czas oczekiwania w sekundach między procesorami wiadomości a przełącznikiem. Router zrywa połączenie i zwraca kod odpowiedzi HTTP 504, jeśli przed upływem tego czasu nie otrzyma odpowiedzi od procesora wiadomości. Wartość parametru proxy_read_timeout powinna być większa niż docelowy limit czasu używany przez przetwarzacz wiadomości. Dzięki temu router nie przekroczy limitu czasu, zanim procesor wiadomości zdąży zwrócić odpowiedź. Domyślny docelowy czas oczekiwania dla procesora wiadomości to 55 sekund (55 000 milisekund), zgodnie z tokenem |
57 | Nie | ||||||||||||
keepalive_timeout |
Określa czas oczekiwania (w sekundach) między klientem a routerem, gdy klient wysyła żądanie zawierające nagłówek Keep-Alive. Router utrzymuje połączenie otwarte do czasu wygaśnięcia jego czasu trwania. Router nie zamknie połączenia, jeśli oczekuje na odpowiedź od przetwarzacza wiadomości. Czas oczekiwania rozpoczyna się dopiero po tym, jak Router zwróci odpowiedź klientowi. |
65 | Nie | ||||||||||||
ssl_ciphers |
Ustawia szyfry obsługiwane przez hosta wirtualnego, zastępując szyfry domyślne ustawione w routerze. Podaj listę szyfrów rozdzielonych dwukropkiem w formacie: <Property name="ssl_ciphers">HIGH:!aNULL:!MD5:!DH+3DES:!kEDH;</Property> Informacje o składni i wartościach dozwolonych przez ten token znajdziesz na stronie https://www.openssl.org/docs/man1.0.2/man1/ciphers.html. Pamiętaj, że ten token używa nazw szyfrów OpenSSL, takich jak AES128-SHA256, a nie nazw szyfrów Java/JSSE, takich jak TLS_RSA_WITH_AES_128_CBC_SHA256. |
HIGH:!aNULL:
!MD5: !DH+3DES: !kEDH |
Nie | ||||||||||||
ssl_protocols |
Dostępne tylko w przypadku Edge for Private Cloud. Ustawia protokoły TLS obsługiwane przez hosta wirtualnego jako listę rozdzieloną spacjami, zastępując domyślne protokoły ustawione na routerze. Uwaga: jeśli 2 hosty wirtualnych używają tego samego portu, muszą mieć ustawiony ten sam protokół w sekcji Podaj rozdzielaną spacjami listę protokołów TLS w formacie: <Property name="ssl_protocols">TLSv1 TLSv1.2</Property> |
TLSv1 TLSv1.1 TLSv1.2 | Nie | ||||||||||||
proxy_request_buffering |
Włącza (on) lub wyłącza (off) buforowanie treści żądania. Gdy buforowanie jest włączone, router buforuje całą treść żądania przed wysłaniem go do procesora wiadomości. Jeśli wystąpi błąd, router może ponowić próbę użycia innego procesora wiadomości. Jeśli jest wyłączone, buforowanie jest wyłączone, a treść żądania jest wysyłana do procesora wiadomości natychmiast po jej otrzymaniu. Jeśli wystąpi błąd, router nie próbuje ponownie wysłać żądania do innego procesora wiadomości. |
włączono | Nie | ||||||||||||
proxy_buffering | Włącza lub wyłącza buforowanie odpowiedzi. Gdy buforowanie jest włączone, router buforuje odpowiedź. Gdy buforowanie jest wyłączone, odpowiedź jest przekazywana klientowi synchronicznie, natychmiast po otrzymaniu przez Router. | włączono | Nie |