Konfigurowanie hostów wirtualnych na potrzeby chmury

Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
info

Klient Google Cloud z płatnym kontem może utworzyć hosta wirtualnego w organizacji.

Więcej informacji:

Kto może tworzyć i modyfikować wirtualne hosty w chmurze

Tworzenie i modyfikowanie hosta wirtualnego jest dostępne tylko na płatnych kontach w Edge Cloud. Użytkownik tworzący hosta wirtualnego musi mieć rolę administratora organizacji lub rolę niestandardową z uprawnieniami do modyfikowania hosta wirtualnego. Użytkownicy w innych rolach nie mają uprawnień do tworzenia hostów wirtualnych.

Na przykład płatni klienci mogą:

  • Włączanie jednokierunkowego i dwukierunkowego protokołu TLS
  • Określ magazyn kluczy lub magazyn zaufania używany przez hosta wirtualnego.

Użytkownicy kont bezpłatnych i próbnych nie mogą tworzyć ani modyfikować hostów wirtualnych. Mogą korzystać tylko z tych, które zostały utworzone dla nich w momencie rejestracji w Edge. Więcej informacji o abonamentach Edge znajdziesz na stronie https://apigee.com/api-management/#/pricing (w języku angielskim).

Wymagania dotyczące konfigurowania hosta wirtualnego w usłudze Cloud

Tabela poniżej zawiera podsumowanie wymagań dotyczących tworzenia hosta wirtualnego:

Kategoria Wymagania Opis
Rodzaj konta Płatne Użytkownicy kont bezpłatnych i kont na okres próbny nie mogą tworzyć ani modyfikować hostów wirtualnych.
Rola użytkownika administrator organizacji Tylko administrator organizacji może utworzyć hosta wirtualnego lub użytkownik z rolą niestandardową, który ma uprawnienia do modyfikowania hosta wirtualnego.
Liczba hostów wirtualnych Maksymalnie 20

Możesz utworzyć maksymalnie 20 hostów wirtualnych na organizację lub środowisko w Google Cloud.

Uwaga: w chmurze Private Cloud nie ma limitu liczby hostów wirtualnych.

Większość organizacji i środowisk korzysta z 2 hostów wirtualnych: jednego dla dostępu HTTP i drugiego dla dostępu HTTPS. Jeśli Twoja organizacja lub środowisko pracy zezwala na dostęp z użyciem różnych nazw domen, może być konieczne dodanie dodatkowych hostów wirtualnych.

Podstawowy adres URL zawiera protokół; Podczas definiowania podstawowego adresu URL hosta wirtualnego w interfejsie użytkownika lub za pomocą interfejsu API musisz podać protokół (np. „http://” lub „https://”) jako część adresu URL.
Port 443

Host wirtualny możesz utworzyć tylko na porcie 443.

Pamiętaj, że możesz utworzyć wiele hostów wirtualnych przez port 443, o ile mają one unikalne aliasy hostów i wszystkie obsługują protokół TLS.

TLS Wymagane

Możesz utworzyć tylko hosta wirtualnego, który obsługuje TLS przez HTTPS. Musisz już mieć utworzony magazyn kluczy i opcjonalnie zaufany magazyn kluczy zawierający certyfikat i klucz TLS.

Musisz mieć certyfikat podpisany przez zaufane podmioty, takie jak Symantec lub VeriSign. Nie możesz używać samodzielnie podpisanego certyfikatu.

Jeśli potrzebujesz dostępu do HTTP, skontaktuj się z zespołem pomocy Apigee Edge.

protokół TLS, TLS 1.2

Edge in the Cloud obsługuje tylko protokół TLS w wersji 1.2.

Alias hosta unikatowe w organizacji i środowisku; Alias hosta nie istnieje w innej kombinacji organizacji i środowiska.
Nazwa domeny Własność klienta

Musisz być właścicielem nazwy domeny określonej w hostie wirtualnym. Edge sprawdza, czy nazwa domeny określona przez alias hosta jest zgodna z metadanymi w certyfikacie TLS.

W szczególności Edge sprawdza w certyfikacie te informacje:

  • CN – nazwa pospolita
  • SAN – alternatywna nazwa podmiotu

Symbole wieloznaczne są dozwolone w numerach SAN lub CN, np. *.myco.net.

Edge sprawdza też, czy certyfikat nie wygasł.

Obsługa SNI w aplikacji klienckiej Wszystkie aplikacje klienta uzyskujące dostęp do hosta wirtualnego muszą obsługiwać SNI.

Wsparcie SNI jest wymagane we wszystkich aplikacjach.

Tworzenie hosta wirtualnego za pomocą przeglądarki

Większość przykładów w tej sekcji korzysta z interfejsu Edge API do tworzenia i modyfikowania hostów wirtualnych, ale możesz też utworzyć hosta wirtualnego w interfejsie Edge.

Aby utworzyć hosta wirtualnego za pomocą interfejsu użytkownika Edge:

  1. Zaloguj się na stronie apigee.com/edge.
  2. Kliknij Administracja > Wirtualni gospodarze.
  3. Wybierz środowisko, na przykład prod lub test.
  4. Kliknij + Host wirtualny, aby utworzyć hosta wirtualnego, lub wybierz nazwę istniejącego hosta wirtualnego, aby go edytować.
  5. Szczegółowe informacje o wypełnianiu pól hosta wirtualnego znajdziesz w tabeli powyżej.

Definiowanie hosta wirtualnego na potrzeby jednokierunkowego TLS

Obiekt XML definiujący hosta wirtualnego. Na przykład ten obiekt XML definiuje hosta wirtualnego dla jednokierunkowego TLS:

<VirtualHost name="myTLSVHost"> 
    <HostAliases> 
        <HostAlias>api.myCompany.com</HostAlias> 
    </HostAliases> 
    <Port>443</Port> 
    <SSLInfo> 
        <Enabled>true</Enabled> 
        <ClientAuthEnabled>false</ClientAuthEnabled> 
        <KeyStore>ref://myTestKeystoreRef</KeyStore> 
        <KeyAlias>myKeyAlias</KeyAlias> 
    </SSLInfo>
</VirtualHost>

W tej definicji:

  • W polu Nazwa wpisz myTLSVHost. Używaj tej nazwy, aby odwoływać się do hosta wirtualnego na serwerze proxy interfejsu API lub w wywołaniu interfejsu API.
  • Określ alias hosta jako api.myCompany.com. Jest to dostępna publicznie domena używana do uzyskiwania dostępu do interfejsów API zgodnie z definicją DNS i rekordem CNAME.
  • W polu Port wpisz 443. Jeśli go pominiesz, domyślnie ustawiony zostanie port 443.
  • Włącz TLS zgodnie z potrzebami.

    Element <Enable> jest ustawiony na wartość true, aby włączyć szyfrowanie jednokierunkowe, a elementy <KeyStore> określają magazyn kluczy i alias klucza używane przez połączenie TLS.

    Aby włączyć dwukierunkowy TLS, ustaw wartość <ClientAuthEnabled> na Prawda i określ magazyn zaufania za pomocą elementu <TrustStore>. Magazyn zaufania zawiera wystawcę certyfikatu klienta i łańcuch urzędu certyfikacji, który jest wymagany.

    Uwaga: ponieważ Edge pierwotnie obsługiwał SSL, tag, którego używasz do konfigurowania TLS, nazywa się <SSLInfo>.

Pamiętaj, że w hostie wirtualnym możesz ustawić dodatkowe właściwości. Informacje o wszystkich usługach znajdziesz w sekcji Informacje o usłudze hosta wirtualnego.

Decyzja o sposobie określenia nazwy magazynu kluczy i magazynu zaufania na hoście wirtualnym

Podczas konfigurowania hosta wirtualnego, aby obsługiwał TLS, musisz określić magazyn kluczy, używając odwołania. Odwoływanie to zmienna zawierająca nazwę magazynu kluczy lub magazynu zaufania, a nie nazwę magazynu kluczy lub magazynu zaufania bezpośrednio, jak pokazano poniżej:

    <SSLInfo> 
        <Enabled>true</Enabled> 
        <ClientAuthEnabled>false</ClientAuthEnabled> 
        <KeyStore>ref://myTestKeystoreRef</KeyStore> 
        <KeyAlias>myKeyAlias</KeyAlias> 
    </SSLInfo>

Zaletą używania odwołania jest to, że możesz zmienić wartość odwołania, aby zmienić klucze używane przez hosta wirtualnego, zwykle dlatego, że certyfikat w bieżącym magazynie kluczy wygasa w najbliższej przyszłości. Zmiana wartości odwołania nie wymaga restartowania routera Edge. Więcej informacji o tworzeniu i modyfikowaniu odwołań znajdziesz w artykule Praca z odwołaniami.

Możesz użyć tylko odwołania do klucza i repozytorium zaufania. Nie możesz użyć odwołania do aliasu. Gdy zmieniasz odwołanie do magazynu kluczy, upewnij się, że alias certyfikatu jest taki sam jak w starym magazynie kluczy.

Ograniczenia dotyczące używania odwołań do kluczowych repozytoriów i repozytoriów zaufanych

Podczas korzystania z odwołań do kluczowych repozytoriów kluczy i repozytoriów zaufanych musisz wziąć pod uwagę to ograniczenie:

  • Możesz używać odwołań do magazynu kluczy i magazynu zaufania na hostach wirtualnych tylko wtedy, gdy obsługujesz SNI i wyłączysz SSL w routerach Apigee.
  • Jeśli masz system równoważenia obciążenia przed routerami Apigee i kończysz szyfrowanie TLS na tym systemie, nie możesz używać odwołań do magazynu kluczy i magazynu zaufania w hostach wirtualnych.

Definiowanie hosta wirtualnego na potrzeby dwukierunkowego TLS

Aby włączyć dwukierunkowy TLS, ustaw element <ClientAuthEnabled> na true i określ magazyn zaufania, używając odwołania w elemencie <TrustStore>. Magazyn zaufania przechowuje wydawcę certyfikatu klienta i łańcuch urzędu certyfikacji, który jest wymagany. Klient musi też być poprawnie skonfigurowany do dwukierunkowego protokołu TLS.

Aby utworzyć hosta wirtualnego dla dwukierunkowego TLS, utwórz obiekt XML definiujący hosta wirtualnego:

<VirtualHost name="myTLSVHost"> 
    <HostAliases> 
        <HostAlias>api.myCompany.com</HostAlias> 
    </HostAliases> 
    <Port>443</Port> 
    <SSLInfo> 
        <Enabled>true</Enabled> 
        <ClientAuthEnabled>true</ClientAuthEnabled> 
        <KeyStore>ref://myTestKeystoreRef</KeyStore> 
        <KeyAlias>myKeyAlias</KeyAlias> 
        <TrustStore>ref://myTestTruststoreRef</TrustStore> 
    </SSLInfo>
</VirtualHost>

W tej definicji:

  • Włącz dwukierunkową komunikację TLS, ustawiając wartość <ClientAuthEnabled> na wartość true.
  • Określ odwołanie do repozytorium zaufania za pomocą elementu <TrustStore>. Magazyn zaufania przechowuje wydawcę certyfikatu klienta i łańcuch urzędu certyfikacji certyfikatu, który jest wymagany.

Definiowanie hosta wirtualnego korzystającego z bezpłatnego próbnego certyfikatu i klucza Apigee

Jeśli masz płatne konto Edge dla Cloud, ale nie masz jeszcze certyfikatu i 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 tworzenia magazynu kluczy.

Certyfikat bezpłatnego okresu próbnego Apigee jest zdefiniowany dla domeny *.apigee.net. Dlatego <HostAlias> hosta wirtualnego musi mieć formę *.apigee.net.

Jeśli wykonujesz dwukierunkowe szyfrowanie TLS, nadal musisz ustawić element <ClientAuthEnabled> na true i określić magazyn zaufania za pomocą odwołania z elementem <TrustStore> zgodnie z opisem powyżej w sekcji Definiowanie hosta wirtualnego na potrzeby dwukierunkowego protokołu TLS.

Obiekt XML definiujący hosta wirtualnego za pomocą certyfikatu i klucza z bezpłatnej wersji próbnej Apigee pomija elementy <KeyStore> i <KeyAlias>, zastępując je elementem <UseBuiltInFreeTrialCert>, jak pokazano poniżej:

<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>

Domyślną wartością elementu <UseBuiltInFreeTrialCert> jest fałsz.

W przypadku dwukierunkowego TLS zdefiniuj hosta wirtualnego jako:

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

Podczas tworzenia hosta wirtualnego wybierz w interfejsie Edge opcję Użyj wbudowanego certyfikatu bezpłatnego okresu próbnego, aby używać bezpłatnego certyfikatu i klucza Apigee:

Wybierz Użyj wbudowanego certyfikatu bezpłatnego okresu próbnego.

Tworzenie hosta wirtualnego

Aby utworzyć hosta wirtualnego:

  1. Utwórz wpis DNS i rekord CNAME dla domeny dostępnej publicznie, w tym przypadku api.myCompany.com, który kieruje na [org]-[environment].apigee.net.
  2. Utwórz i skonfiguruj magazyn kluczy o nazwie myTestKeystore, wykonując podaną tutaj procedurę: Tworzenie magazynów kluczy i zaufania za pomocą interfejsu użytkownika Edge. W tym przykładzie sprawdź, czy magazyn kluczy używa nazwy aliasu myKeyAlias dla certyfikatu i klucza prywatnego.
  3. Prześlij certyfikat i klucz do magazynu kluczy. Upewnij się, że nazwa domeny określona w certyfikacie jest zgodna z aliasem hosta, którego chcesz używać dla hosta wirtualnego.
  4. Utwórz odwołanie do magazynu kluczy za pomocą interfejsu użytkownika lub interfejsu API Edge. Odwołuje się on do nazwy magazynu kluczy i do typu odwołania jako KeyStore. Więcej informacji o tworzeniu i modyfikowaniu odwołań znajdziesz w artykule Praca z odwołaniami.

  5. Utwórz hosta wirtualnego za pomocą interfejsu API Create a Virtual Host. Pamiętaj, aby określić poprawne odwołanie do magazynu kluczy i alias klucza. Aby użyć interfejsu API, utwórz za pomocą tego wywołania POST interfejsu API magazyn kluczy o nazwie myTLSVHost:
    curl -X POST -H "Content-Type:application/xml" \
      https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/virtualhosts \
      -d '<VirtualHost name="myTLSVHost">
        <HostAliases>
          <HostAlias>api.myCompany.com</HostAlias>
        </HostAliases>
        <Port>443</Port>
        <SSLInfo>
          <Enabled>true</Enabled>
          <ClientAuthEnabled>false</ClientAuthEnabled>
          <KeyStore>ref://myTestKeystoreRef</KeyStore>
          <KeyAlias>myKeyAlias</KeyAlias>
        </SSLInfo>
      </VirtualHost>' \
      -u orgAdminEmail:password

    Jeśli używasz dwukierunkowego TLS z klienta, ustaw wartość <ClientAuthEnabled> na prawda i określ magazyn zaufania za pomocą elementu <TrustStore>. Klient musi być poprawnie skonfigurowany pod kątem dwukierunkowego protokołu TLS, co oznacza, że Edge ma magazyn zaufania zawierający wystawcę certyfikatu klienta i łańcuch certyfikatów. Utwórz magazyn zaufania, wykonując procedurę opisaną w tym artykule: Tworzenie magazynów kluczy i magazynów zaufania za pomocą interfejsu Edge.

  6. Jeśli masz już serwery proxy API, dodaj hosta wirtualnego do elementu <HTTPConnection> w ProxyEndpoint. Host wirtualny jest automatycznie dodawany do wszystkich nowych serwerów proxy API. Zapoznaj się z artykułem Konfigurowanie serwera proxy interfejsu API do korzystania z hosta wirtualnego.

Po zaktualizowaniu serwera proxy API, aby używać hosta wirtualnego, i utworzeniu wpisu DNS oraz rekordu CNAME dla aliasu hosta możesz uzyskać dostęp do serwera proxy API w następujący sposób:

https://api.myCompany.com/v1/{project-base-path}/{resource-path}

Na przykład:

https://api.myCompany.com/v1/weather/forecastrss?w=12797282

Modyfikowanie hosta wirtualnego

Klienci Cloud korzystający z płatnych usług mogą modyfikować istniejące hosty wirtualne na 2 główne sposoby:

  1. Modyfikowanie wartości odwołania do magazynu kluczy lub magazynu zaufania.

    Uwaga: po ustawieniu <KeyStore> lub <TrustStore> do użycia odwołania możesz w dowolnym momencie zmienić jego wartość. Jeśli jednak chcesz zmienić <KeyStore> lub <TrustStore>, aby użyć innego odwołania, lub <KeyAlias>, aby użyć innego aliasu, musisz skontaktować się z zespołem pomocy Apigee Edge.
  2. Zmiana właściwości TLS hosta wirtualnego.

Modyfikowanie wartości odwołania

Możesz zmodyfikować wartość odwołania, aby zmienić magazyn kluczy lub magazyn zaufania używany przez hosta wirtualnego.

Zanim zmodyfikujesz wartość odwołania:

  1. Utwórz nowy magazyn kluczy i prześlij certyfikat i klucz zgodnie z opisem w sekcji Tworzenie magazynów kluczy i zaufania za pomocą interfejsu użytkownika usługi Edge. W nowym magazynie kluczy upewnij się, że alias klucza ma taką samą nazwę jak w dotychczasowym magazynie kluczy.
  2. W razie potrzeby utwórz nowy magazyn zaufania i prześlij certyfikat zgodnie z instrukcjami podanymi w artykule Utwórz magazyn kluczy i magazyn zaufania za pomocą interfejsu użytkownika Edge.
  3. Zmodyfikuj plik referencyjny zgodnie z opisem w sekcji Praca z plikami referencyjnymi.

Modyfikowanie właściwości TLS hosta wirtualnego

Klienci płacący za usługę mogą używać interfejsu API Aktualizuj hosta wirtualnego do aktualizowania hosta wirtualnego. Ten interfejs API umożliwia ustawienie wszystkich właściwości hosta wirtualnego opisanego w sekcji Informacje o usłudze hosta wirtualnego.

Gdy modyfikujesz hosta wirtualnego, Edge przeprowadza weryfikację podobną do tej, którą wykonuje podczas tworzenia hosta wirtualnego. Oznacza to, że w przypadku modyfikacji Edge sprawdza, czy:

  • Domena określona przez alias hosta nie jest używana w innej organizacji i środowisku.
  • posiadasz nazwę domeny, Konkretnie Edge sprawdza, czy te informacje w certyfikacie są zgodne z aliasem hosta:
    • CN – nazwa pospolita
    • SAN – alternatywna nazwa podmiotu
    • Edge sprawdza, czy certyfikat nie wygasł.

Aby zmodyfikować hosta wirtualnego za pomocą interfejsu Edge API, wykonaj te czynności:

  1. Zaktualizuj hosta wirtualnego przy użyciu interfejsu API Update a Virtual Host (Zaktualizuj hosta wirtualnego). Podczas korzystania z interfejsu API musisz podać pełną definicję hosta wirtualnego w ciele żądania, a nie tylko elementy, które chcesz zmienić. W tym przykładzie ustawiasz wartość właściwości proxy_read_timeout:

    curl -X PUT -H "Content-Type:application/xml" \
      https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/virtualhosts/{vhost_name} \
      -d '<VirtualHost name="myTLSVHost">
        <HostAliases>
          <HostAlias>api.myCompany.com</HostAlias>
        </HostAliases>
        <Port>443</Port>
        <SSLInfo>
          <Enabled>true</Enabled>
          <ClientAuthEnabled>false</ClientAuthEnabled>
          <KeyStore>ref://myTestKeystoreRef</KeyStore>
          <KeyAlias>myKeyAlias</KeyAlias>
        </SSLInfo>
        <Properties>
           <Property name="proxy_read_timeout">50</Property>
             </Properties>
      </VirtualHost>' \
      -u orgAdminEmail:password

Modyfikowanie hosta wirtualnego, aby używał odwołań do klucza i zaufanego magazynu kluczy

Wszystkie nowe hosty wirtualne w usłudze Edge w chmurze odwołują się do repozytorium kluczy i repozytorium zaufania. Odwołania umożliwiają zmianę katalogu kluczy i katalogu zaufania bez kontaktu z zespołem pomocy Apigee Edge.

Starsze hosty wirtualnych w Apigee Edge mogą nie być skonfigurowane pod kątem korzystania z odwołań do repozytoriów kluczy i repozytoriów zaufania. W takim przypadku możesz zaktualizować hosta wirtualnego, aby używał pliku referencyjnego.

Aktualizowanie hosta wirtualnego do korzystania z pliku referencyjnego

Aby zaktualizować hosta wirtualnego:

  1. W razie potrzeby utwórz nowy magazyn kluczy i prześlij certyfikat zgodnie z instrukcjami podanymi w artykule Tworzenie magazynów kluczy i zaufania za pomocą interfejsu użytkownika Edge. Jeśli masz już sejf kluczy, możesz skonfigurować odwołanie do niego.
  2. Utwórz nowe odwołanie do magazynu kluczy.
  3. W razie potrzeby utwórz nowy magazyn zaufania i prześlij certyfikat. Jeśli masz już zaufane repozytorium kluczy, możesz skonfigurować odwołanie do niego.
  4. Utwórz nowe odwołanie do magazynu zaufania.
  5. Zaktualizuj hosta wirtualnego, aby ustawić magazyn kluczy, alias, magazyn zaufania i wszystkie inne właściwości TLS. Dane wywołania:
    curl -X PUT -H "Content-Type:application/xml" \
      https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/virtualhosts/{vhost_name} \
      -d '<VirtualHost  name="myTLSVHost">
            <HostAliases>
              <HostAlias>api.myCompany.com</HostAlias>
            </HostAliases>
            <Port>443</Port>
            <OCSPStapling>off</OCSPStapling>
            <SSLInfo>
              <Enabled>true</Enabled>
              <ClientAuthEnabled>true</ClientAuthEnabled>
              <KeyStore>ref://myKeyStore2Way</KeyStore>
              <KeyAlias>keyAlias</KeyAlias>
              <TrustStore>ref://myTrustStore2Way</TrustStore>
              <IgnoreValidationErrors>false</IgnoreValidationErrors>
            </SSLInfo>
          </VirtualHost>' \
        -u orgAdminEmail:pWord
  6. Aby dokończyć proces, skontaktuj się z zespołem pomocy Apigee i poproś o ponowne uruchomienie przełączników krawędziowych.