Przeglądasz dokumentację Apigee Edge.
Przejdź do
Dokumentacja Apigee X. informacje.
Reprezentowanie hosta wirtualnego
Obiekt XML, którego używasz do zdefiniowania hosta wirtualnego, jest oparty na Twojej wersji Edge: Cloud czyli chmury prywatnej.
Jeśli jesteś klientem Private Cloud, musisz się upewnić, że używasz poprawnego kodu XML dla wersję Edge.
Chmura i chmura prywatna 4.17.01 i nowsze
<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 w wersji od 4.16.01 do 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 i wcześniej
<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
Tabela poniżej zawiera listę właściwości używanych do konfigurowania hosta wirtualnego:
Właściwości | Opis | Domyślny | Wymagane | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
VirtualHost |
Określa nazwę hosta wirtualnego. Ta nazwa służy do odwoływania się do hosta wirtualnego podczas konfigurowania serwera proxy interfejsu API. Znaki, których możesz używać w atrybucie nazwa, są ograniczone do następujących znaków: A–Z0–9._\-$%. |
Brak | Tak | ||||||||||||
Port |
Określa numer portu używany przez hosta wirtualnego. Upewnij się, że port na Router brzegowy. Jeśli określisz port w elemencie W przypadku Cloud: podczas tworzenia hosta wirtualnego musisz podać port 443. Jeśli został pominięty. Domyślnie ten port ma wartość 443. Jeśli masz już host wirtualny, który używa portu innego niż 443, nie można zmienić portu. W przypadku Private Cloud w wersjach od 4.16.01 do 4.17.05: podczas tworzenia hosta wirtualnego, określ port routera używany przez hosta wirtualnego. Na przykład port 9001. Domyślnie router działa jako „apigee” użytkownika który nie ma dostępu do porty z podwyższonymi uprawnieniami, zwykle porty 1024 i starsze. Tworzenie hosta wirtualnego która wiąże router z chronionym portem, musisz skonfigurować router tak, aby uruchamiał się jako użytkownika mającego dostęp do tych portów. Zobacz Konfigurowanie hosta wirtualnego dla: i innych. W przypadku chmury Private Cloud przed wersją 4.16.01: router może nasłuchiwać tylko jedno połączenie 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 w przypadku zakończenia protokołu TLS ma miejsce na routerze na określonym porcie. |
Brak | Tak | ||||||||||||
BaseUrl | Zastępuje URL wyświetlany przez interfejs Edge dla serwera proxy API wdrożonego w wirtualnym
hosta. Ta opcja jest przydatna, gdy przed routerami brzegowymi znajduje się zewnętrzny system równoważenia obciążenia. Zobacz
Konfigurowanie TLS
dostęp do interfejsu API w Private Cloud.
Wartość właściwości |
Brak | Nie | ||||||||||||
OCSPStapling |
Klient OCSP (Online Certificate Status Protocol) wysyła stan do respondenta protokołu OCSP w celu określenia, czy certyfikat TLS jest prawidłowy. Odpowiedź wskazuje, czy certyfikat TLS jest prawidłowy i nie został unieważniony. Gdy ta opcja jest włączona, zszywanie OCSP umożliwia serwerowi Edge działanie jako serwer TLS dla jednokierunkowego protokołu TLS. , aby bezpośrednio wykonać zapytanie do respondenta protokołu OCSP, a następnie zapisać odpowiedź w pamięci podręcznej. Następnie Edge zwraca tę odpowiedź do klienta TLS lub ją zszywa w ramach uzgadniania połączenia TLS. Zobacz Włączanie zszywania OCSP na serwerze. aby dowiedzieć się więcej. Aby włączyć zszywanie OCSP, musisz włączyć protokół TLS. Ustaw na |
wył. | Nie | ||||||||||||
HostAliases | |||||||||||||||
HostAlias |
Publicznie widoczna nazwa DNS hosta wirtualnego w routerze, opcjonalnie wraz z parametrem numeru portu. Kombinacja nazwy aliasu hosta i numeru portu hosta wirtualnego musi musi być unikalny dla wszystkich hostów wirtualnych w instalacji Edge. Oznacza to, że wiele maszyn wirtualnych hosty mogą używać tego samego numeru portu, jeśli mają różne aliasy hosta. Musisz utworzyć wpis DNS i rekord CNAME pasujący do aliasu hosta i hosta
alias musi być zgodny z ciągiem znaków przekazywanym przez klienta w nagłówku Numer portu w usłudze Możesz mieć kilka definicji Możesz użyć znaku „*”, w aliasie hosta. Symbol „*” symbol wieloznaczny może
może znajdować się tylko na początku (poprzedzający pierwszy „.”) aliasu hosta i nie może być mieszany z innymi znakami.
na przykład Cloud: jeśli masz już host wirtualny, który używa innego portu niż 443, nie można dodać ani usunąć aliasu hosta. W chmurze Private Cloud: jeśli ustawiasz alias hosta przy użyciu adresu IP adresy routerów, a nie wpisy DNS, dodaj osobny alias hosta dla każdego z nich Router określający adres IP każdego routera i port hosta wirtualnego. |
Brak | Tak | ||||||||||||
Interfejsy | Dostępne tylko w przypadku Edge dla Private Cloud. | ||||||||||||||
Interfejs |
Określa interfejsy sieci, z którymi chcesz powiązać Aby na przykład powiązać port tylko z 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 oraz Private Cloud w wersji 4.18.01 i później. | ||||||||||||||
RetryOption |
Skonfiguruj reakcję routera na tego hosta wirtualnego po przejściu procesora wiadomości w dół. Możesz podać wiele wartości za pomocą
Jeśli podasz wiele 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 | Funkcja dostępna w Private Cloud w wersji 4.18.01 i nowszych oraz w Edge Cloud, wysyłając prośbę do zespołu pomocy Apigee Edge. | ||||||||||||||
ListenOption |
Jeśli używasz ELB w trybie przekazywania TCP do obsługi żądań do routerów brzegowych,
router będzie traktować adres IP zbioru danych ELB jako adres IP klienta, a nie
rzeczywisty adres IP klienta. Jeśli router wymaga prawdziwego adresu IP klienta,
włącz Wartość domyślna pola Na przykład: <ListenOptions> <ListenOption>proxy_protocol</ListenOption> </ListenOptions> Aby później usunąć ustawienie |
||||||||||||||
SSLInfo | |||||||||||||||
Włączono |
Włącza jednokierunkowe połączenia TLS/SSL. Musisz mieć zdefiniowany magazyn kluczy zawierający certyfikaty klucz prywatny. W przypadku Cloud: musisz mieć certyfikat podpisany przez zaufany podmiot, np. Symantec lub VeriSign. Nie możesz używać samodzielnie podpisanego certyfikatu ani certyfikatów liści podpisanych przez samodzielnie podpisany urząd certyfikacji. Cloud: jeśli istniejący host wirtualny jest skonfigurowany do używania portu niż 443, nie można zmienić ustawienia TLS. Oznacza to, że nie możesz zmienić ustawienia TLS z z „włączone” na „wyłączone” lub z „wyłączone” na „włączone”. |
fałsz | Nie | ||||||||||||
ClientAuthEnabled | Włącza dwukierunkowe (klient) protokół TLS między brzegiem sieci a aplikacją (klientem), użytkownika. Włączenie dwukierunkowego protokołu TLS wymaga skonfigurowania magazynu zaufania w Edge certyfikat z klienta TLS. | fałsz | Nie | ||||||||||||
KeyStore |
Nazwa magazynu kluczy w Edge. Apigee zaleca użycie odwołania do określenia nazwy magazynu kluczy, aby może zmienić magazyn kluczy bez konieczności ponownego uruchamiania routerów. Zobacz Opcje dla konfigurowania TLS. |
Brak | Tak, jeśli włączona jest wartość prawda | ||||||||||||
KeyAlias | Alias określony podczas przesyłania certyfikatu i klucza prywatnego do magazynu kluczy. Ty musi dosłownie określić nazwę aliasu; nie można użyć odwołania. Zobacz Opcje konfigurowania TLS. | Brak | Tak, jeśli włączona jest wartość prawda | ||||||||||||
TrustStore |
Nazwa magazynu zaufania w Edge, który zawiera certyfikat lub łańcuch certyfikatów
dla dwukierunkowego protokołu TLS. Wymagany, jeśli Apigee zaleca użycie odwołania do określenia nazwy magazynu zaufania, może zmienić magazyn zaufania bez konieczności ponownego uruchamiania routerów. Zobacz Opcje dla konfigurowania TLS. |
Brak | Nie | ||||||||||||
IgnoreValidationErrors |
Jeśli ma wartość true (prawda), określa, że błędy certyfikatu TLS mają być ignorowane. Jest to podobne do znaku „-k”. opcja do cURL. Ta opcja ma zastosowanie podczas konfigurowania protokołu TLS dla serwerów docelowych i docelowych punktów końcowych. podczas konfigurowania hostów wirtualnych korzystających z dwukierunkowego protokołu TLS. Używanie z docelowym punktem końcowym/serwerem docelowym, jeśli system backendu korzysta z rozszerzenia SNI i zwraca certyfikat z nazwą wyróżniającą podmiotu, która nie jest zgodna z nazwą hosta, nie ma możliwości , aby zignorować błąd, co spowoduje błąd połączenia. |
fałsz | Nie | ||||||||||||
Mechanizmy szyfrowania |
Tylko Edge for Private Cloud w wersji 4.15.07 lub starszej. Określa mechanizmy szyfrowania obsługiwane przez hosta wirtualnego. Jeśli nie podano żadnych mechanizmów szyfrowania, wszystkie mechanizmy szyfrowania dostępne dla JVM będą dozwolone. Aby ograniczyć mechanizmy szyfrowania, 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 |
Tylko Edge for Private Cloud w wersji 4.15.07 lub starszej. Określa protokoły obsługiwane przez hosta wirtualnego. Jeśli nie podasz żadnych 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, ale nie masz jeszcze certyfikatu i klucza TLS, możesz Utworzenie hosta wirtualnego korzystającego z bezpłatnego certyfikatu i klucza próbnego Apigee. Oznacza to, że możesz tworzyć w przypadku hosta wirtualnego bez wcześniejszego utworzenia magazynu kluczy. Bezpłatny certyfikat próbny Apigee został zdefiniowany dla domeny Patrz sekcja Definiowanie hosta wirtualnego który korzysta z bezpłatnego próbnego certyfikatu i klucza Apigee. |
fałsz | Nie | ||||||||||||
PropagateTLSInformation | Dostępne w wersji alfa tylko dla Edge Cloud. | ||||||||||||||
ConnectionProperties |
Włącza przechwytywanie informacji o połączeniu TLS przez Edge. Informacje te są następnie dostępne jako zmienne przepływu na serwerze proxy interfejsu API. Zobacz Uzyskiwanie dostępu do informacji o połączeniu TLS przez serwer proxy interfejsu API aby dowiedzieć się więcej. |
fałsz | Nie | ||||||||||||
ClientProperties |
Umożliwia przechwytywanie szczegółów certyfikatu klienta przechwyconych przez Edge przy użyciu dwukierunkowego protokołu TLS. Informacje te są następnie dostępne jako zmienne przepływu na serwerze proxy interfejsu API. Zobacz Uzyskiwanie dostępu do informacji o połączeniu TLS przez serwer proxy interfejsu API aby dowiedzieć się więcej. |
fałsz | Nie | ||||||||||||
Usługi | Dostępne w Edge Cloud oraz Private Cloud w wersji 4.17.01 i później. | ||||||||||||||
proxy_read_timeout |
Określa czas oczekiwania (w sekundach) między procesorami wiadomości a routerem. Router odrzuca połączenie i zwraca odpowiedź HTTP 504, jeśli nie otrzyma z procesora wiadomości przed wygaśnięciem tego okresu. Wartość proxy_read_timeout powinna być większa niż używana wartość docelowego limitu czasu
przez procesor wiadomości. Dzięki temu router nie przekroczy limitu czasu przed
Procesor wiadomości miał czas, aby zwrócić odpowiedź. Domyślny limit czasu oczekiwania dla
Procesor komunikatów trwa 55 sekund i 55 000 milisekund, zgodnie z definicją
Token |
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 otwarte połączenie aż do wygaśnięcia. Router nie zamknie połączenia, jeśli oczekuje na odpowiedź z procesora wiadomości. Limit czasu rozpoczyna się dopiero po zwróceniu odpowiedzi przez router do klienta. |
65 | Nie | ||||||||||||
ssl_ciphers |
Ustawia mechanizmy szyfrowania obsługiwane przez hosta wirtualnego, zastępując domyślne mechanizmy szyfrowania ustawione na routera. Określ listę mechanizmów szyfrowania rozdzielanych 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. Zwróć uwagę, że w tokenie są używane nazwy szyfrów OpenSSL, takie jak AES128-SHA256, a nie nazwy szyfrów Java/JSSE, na przykład TLS_RSA_WITH_AES_128_CBC_SHA256. |
WYSOKA:!aNULL:
!MD5: !DH+3DES: !kEDH |
Nie | ||||||||||||
ssl_protocols |
Dostępne tylko w przypadku Edge dla Private Cloud. Ustawia protokoły TLS obsługiwane przez hosta wirtualnego jako listę rozdzielaną spacjami zastępując domyślne protokoły ustawione w routerze. Uwaga: jeśli 2 hosty wirtualne mają ten sam port, musisz skonfigurować
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 (włączone) lub wyłącza (wyłączone) buforowanie treści żądania. Przy włączonym buforowaniu 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. Gdy ta opcja jest wyłączona, buforowanie jest wyłączone, a treść żądania jest wysyłana do procesora wiadomości natychmiast po ich otrzymaniu. Jeśli wystąpi błąd, router nie ponawia próby do innego podmiotu przetwarzającego wiadomości. |
włączono | Nie | ||||||||||||
proxy_buffering | Włącza lub wyłącza buforowanie odpowiedzi. Przy włączonym buforowaniu Router buforuje odpowiedź. Gdy buforowanie jest wyłączone, odpowiedź jest przekazywana do klienta synchronicznie, natychmiast w miarę odbierania go przez router. | włączono | Nie |