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.

.

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 TLS
  • Określ magazyn kluczy lub 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.

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 w niestandardowej roli, 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/ś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 wykorzystaniem różnych nazw domen, może być konieczne użycie dodatkowych hostów wirtualnych.

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

Hosta wirtualnego możesz utworzyć tylko na porcie 443.

Pamiętaj, że możesz utworzyć większą liczbę hostów wirtualnych na porcie 443, o ile mają one unikalne aliasy hosta i wszystkie obsługują TLS.

TLS Wymagane

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

Musisz mieć certyfikat podpisany przez zaufane podmioty, takie jak Symantec lub VeriSign. Nie możesz używać certyfikatu z podpisem własnym.

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

Protokół TLS TLS 1.2

Edge w chmurze obsługuje tylko 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łaściciel: klient

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

W SAN lub CN można używać symboli wieloznacznych, 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 usługi CDN Edge:

  1. Zaloguj się na stronie apigee.com/edge.
  2. Kliknij Administracja > Wirtualne hosty.
  3. Wybierz środowisko, np. 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żyj nazwy do odwołania do hosta wirtualnego w serwerze proxy interfejsu API lub w wywołaniu interfejsu API.
  • Podaj alias hosta jako api.mojafirma.com. Jest to domena publiczna 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 port zostanie ustawiony na 443.
  • Włącz TLS zgodnie z potrzebami.

    Element <Enable> jest ustawiony na wartość true, aby włączyć szyfrowanie jednostronne, 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 przechowuje wydawcę 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, nosi nazwę <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.

Wybór sposobu określenia nazwy repozytorium kluczy i repozytorium zaufania w hostie 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 brzegowego. 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ę te ograniczenia:

  • Odwołania do klucza i repozytorium zaufania możesz używać w hostach wirtualnych tylko wtedy, gdy obsługujesz SNI i kończysz szyfrowanie SSL na 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ć prawidłowo skonfigurowany pod kątem dwukierunkowego 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:

  • Aby włączyć dwukierunkowy TLS, ustaw wartość parametru <ClientAuthEnabled> na „true”.
  • Określ odwołanie do repozytorium zaufania za pomocą elementu <TrustStore>. Magazyn zaufania przechowuje wydawcę certyfikatu klienta i łańcuch urzędu certyfikacji, który jest wymagany.

Definiowanie hosta wirtualnego, który używa certyfikatu i klucza bezpłatnej wersji próbnej Apigee

Jeśli masz płatne konto Edge for Cloud i nie masz jeszcze certyfikatu i klucza TLS, możesz utworzyć hosta wirtualnego, który używa certyfikatu i klucza z bezpłatnej wersji próbnej 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 *.apigee.net. Dlatego <HostAlias> hosta wirtualnego musi mieć formę *.apigee.net.

Jeśli używasz dwukierunkowego TLS, musisz ustawić element <ClientAuthEnabled> na true i określić magazyn zaufania, używając odwołania w elemencie <TrustStore>, zgodnie z opisem w sekcji Definiowanie hosta wirtualnego dla dwukierunkowego 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 false.

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 magazynów zaufania za pomocą interfejsu użytkownika Edge. W tym przykładzie: upewnij się, że magazyn kluczy używa 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, korzystając z interfejsu użytkownika lub interfejsu API Edge. Odwołuje się on do nazwy magazynu kluczy i typu odwołania (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 podać prawidłową referencję katalogu kluczy i alias klucza. Aby użyć interfejsu API, utwórz za pomocą tego wywołania interfejsu API POST 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ć prawidłowo skonfigurowany pod kątem dwukierunkowego TLS, co oznacza, że Edge ma zaufane repozytorium zawierające łańcuch certyfikatów i wystawcę certyfikatu klienta. 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 wirtualnych na 2 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żywać innego odwołania, lub <KeyAlias>, aby używać innego aliasu, musisz skontaktować się z zespołem pomocy Apigee Edge.
  2. zmodyfikować właściwości TLS hosta wirtualnego;

Modyfikowanie wartości odwołania

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

Zanim zmodyfikujesz wartość odwołania:

  1. Utwórz nowy magazyn kluczy i prześlij certyfikat i klucz zgodnie z opisem w sekcji Utwórz magazyn kluczy i zaufania za pomocą interfejsu użytkownika 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 w artykule Utwórz magazyn kluczy i magazyn zaufania za pomocą interfejsu użytkownika Edge.
  3. Zmień odwołanie zgodnie z opisem w artykule Praca z odwołaniami.

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, W szczególności 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 za pomocą interfejsu API 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 w celu użycia odwołań do klucza i zaufanego magazynu kluczy

Wszystkie nowe hosty wirtualne Edge in the Cloud odwołują się do klucza i repozytorium zaufania. Odwołania umożliwiają zmianę klucza i repozytorium zaufania bez kontaktu z zespołem pomocy Apigee Edge.

Starsze hosty wirtualnych w usłudze Apigee Edge mogą nie być skonfigurowane pod kątem korzystania z odniesienia do repozytorium kluczy i repozytorium zaufania. W takim przypadku możesz zaktualizować hosta wirtualnego, aby używać odwołania.

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 repozytorium zaufania.
  5. Zaktualizuj hosta wirtualnego, aby skonfigurować magazyn kluczy, alias, magazyn zaufania i inne właściwości TLS. Ładunek połączenia:
    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 brzegowych.