Konfigurowanie hostów wirtualnych na potrzeby chmury

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

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

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

Tworzenie i modyfikowanie hostów wirtualnych jest dostępne tylko na kontach płatnych 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 z innymi rolami nie mają uprawnień do tworzenia hostów wirtualnych.

Na przykład klienci, którzy korzystają z płatnej wersji usługi, mogą:

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

Konta bezpłatne i próbne nie mogą tworzyć ani modyfikować hostów wirtualnych. Są one ograniczone do hostów wirtualnych utworzonych dla nich w momencie rejestracji Edge. Więcej informacji o abonamentach Edge znajdziesz na stronie https://apigee.com/api-management/#/pricing.

Wymagania dotyczące konfigurowania hosta wirtualnego w chmurze

W tabeli poniżej znajdziesz podsumowanie wymagań dotyczących tworzenia hosta wirtualnego:

Kategoria Wymaganie Opis
Rodzaj konta Płatne Na kontach bezpłatnych i wersjach próbnych nie można tworzyć ani modyfikować hostów wirtualnych.
Rola użytkownika administrator organizacji Tylko administrator organizacji lub użytkownik z rolą niestandardową, która ma uprawnienia do modyfikowania hosta wirtualnego, może utworzyć hosta wirtualnego.
Liczba hostów wirtualnych Maksymalnie 20

W przypadku każdej organizacji lub środowiska w chmurze możesz mieć maksymalnie 20 hostów wirtualnych.

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

Większość organizacji i środowisk używa 2 hostów wirtualnych: jednego do dostępu HTTP i jednego do dostępu HTTPS. Jeśli Twoja organizacja lub środowisko zezwala na dostęp przy użyciu 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 lub za pomocą interfejsu API musisz podać protokół (np. „http://” lub „https://”) jako część adresu URL.
Port 443

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

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

TLS Wymagane

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

Musisz mieć certyfikat podpisany przez zaufany podmiot, np. Symantec lub VeriSign. Nie możesz używać certyfikatu podpisanego samodzielnie.

Jeśli potrzebujesz dostępu 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 Unikalny w organizacji i środowisku Alias hosta nie istnieje w przypadku innej kombinacji organizacji i środowiska.
Nazwa domeny Własność klienta

Musisz być właścicielem nazwy domeny podanej w hoście wirtualnym. Edge sprawdza, czy nazwa domeny zdefiniowana przez alias hosta jest zgodna z metadanymi w certyfikacie TLS.

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

  • CN – nazwa pospolita
  • SAN - Subject Alternative Name

Symbole wieloznaczne są dozwolone w polach SAN i CN, np. *.myco.net.

Edge sprawdza też, czy certyfikat nie utracił ważności.

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

Wszystkie aplikacje muszą obsługiwać SNI.

Tworzenie hosta wirtualnego za pomocą przeglądarki

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

Aby utworzyć hosta wirtualnego za pomocą interfejsu Edge:

  1. Zaloguj się na apigee.com/edge.
  2. Kliknij Administrator > Wirtualni hostowie.
  3. Wybierz środowisko, np. prod lub test.
  4. Aby utworzyć hosta wirtualnego, kliknij + Host wirtualny. Aby edytować istniejącego hosta wirtualnego, kliknij jego nazwę.
  5. Szczegółowe informacje o wypełnianiu pól hosta wirtualnego znajdziesz w tabeli powyżej.

Definiowanie hosta wirtualnego na potrzeby jednokierunkowego protokołu TLS

Obiekt XML, który definiuje hosta wirtualnego. Na przykład ten obiekt XML definiuje hosta wirtualnego dla jednokierunkowego protokołu 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 name wpisz myTLSVHost. Użyj nazwy, aby odwołać się do hosta wirtualnego w serwerze proxy interfejsu API lub w wywołaniu interfejsu API.
  • Określ alias hosta jako api.mojaFirma.com. Jest to publicznie dostępna domena używana do uzyskiwania dostępu do interfejsów API zdefiniowanych przez definicję DNS i rekord CNAME.
  • Podaj numer portu jako 443. Jeśli go nie określisz, domyślnie zostanie użyty port 443.
  • Włącz TLS w razie potrzeby.

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

    Aby włączyć dwukierunkowy protokół TLS, ustaw wartość <ClientAuthEnabled> na „true” i określ magazyn zaufanych certyfikatów za pomocą elementu <TrustStore>. Magazyn zaufanych certyfikatów zawiera wydawcę certyfikatu klienta i łańcuch certyfikatów CA, co jest wymagane.

    Uwaga: ponieważ Edge pierwotnie obsługiwał SSL, tag używany do konfigurowania TLS ma nazwę <SSLInfo>.

Pamiętaj, że w wirtualnym hoście możesz ustawić dodatkowe właściwości. Wszystkie właściwości znajdziesz w sekcji Informacje o właściwościach hosta wirtualnego.

Określanie nazwy magazynu kluczy i magazynu zaufanych certyfikatów w hoście wirtualnym

Podczas konfigurowania hosta wirtualnego do obsługi protokołu TLS określasz magazyn kluczy za pomocą odwołania. Odwołanie to zmienna, która zawiera nazwę magazynu kluczy lub magazynu zaufanych certyfikatów, zamiast bezpośredniego określania nazwy magazynu kluczy lub magazynu zaufanych certyfikatów, jak pokazano poniżej:

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

Zaletą korzystania z odwołania jest to, że możesz zmienić jego wartość, aby zmienić magazyn kluczy używany przez hosta wirtualnego. Zwykle dzieje się tak, ponieważ certyfikat w bieżącym magazynie kluczy wkrótce wygaśnie. Zmiana wartości odniesienia nie wymaga ponownego uruchomienia routera brzegowego. Więcej informacji o tworzeniu i modyfikowaniu odwołań znajdziesz w artykule Praca z odwołaniami.

Możesz używać tylko odwołania do magazynu kluczy i magazynu zaufanych certyfikatów, a nie odwołania do aliasu. Gdy zmieniasz odwołanie do magazynu kluczy, upewnij się, że nazwa aliasu certyfikatu jest taka sama jak w starym magazynie kluczy.

Ograniczenia dotyczące korzystania z odwołań do magazynów kluczy i magazynów zaufanych certyfikatów

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

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

Definiowanie hosta wirtualnego na potrzeby dwukierunkowego protokołu TLS

Aby włączyć dwukierunkowy protokół TLS, ustaw element <ClientAuthEnabled> na true i określ magazyn zaufanych certyfikatów, używając odwołania z elementem <TrustStore>. Magazyn zaufanych certyfikatów zawiera wydawcę certyfikatu klienta i łańcuch CA certyfikatu, który jest wymagany. Klient musi być też prawidłowo skonfigurowany pod kątem dwukierunkowego protokołu TLS.

Aby utworzyć hosta wirtualnego dla dwukierunkowego protokołu TLS, utwórz obiekt XML, który definiuje 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 dwukierunkowy protokół TLS, ustawiając wartość <ClientAuthEnabled> na true.
  • Określ odwołanie do magazynu zaufanych certyfikatów za pomocą elementu <TrustStore>. Magazyn zaufanych certyfikatów zawiera wydawcę certyfikatu klienta i łańcuch certyfikatów CA, co jest wymagane.

Definiowanie hosta wirtualnego, który korzysta z certyfikatu i klucza bezpłatnej wersji próbnej Apigee

Jeśli masz płatne konto Edge for Cloud, ale nie masz jeszcze certyfikatu i klucza TLS, możesz utworzyć hosta wirtualnego, który korzysta z 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ć format *.apigee.net.

Jeśli wykonujesz dwukierunkowy protokół TLS, musisz ustawić element <ClientAuthEnabled> na true i określić magazyn zaufanych certyfikatów za pomocą odwołania z elementem <TrustStore>, jak opisano powyżej w sekcji Definiowanie hosta wirtualnego dla dwukierunkowego protokołu TLS.

Obiekt XML, który definiuje hosta wirtualnego za pomocą certyfikatu i klucza z bezpłatnej wersji próbnej Apigee, pomija elementy <KeyStore><KeyAlias> i zastępuje 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ślna wartość elementu <UseBuiltInFreeTrialCert> to fałsz.

W przypadku dwukierunkowego protokołu TLS zdefiniuj hosta wirtualnego w ten sposób:

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

W interfejsie Edge wybierz opcję Use built-in free trial certificate (Użyj wbudowanego certyfikatu bezpłatnego okresu próbnego) podczas tworzenia hosta wirtualnego, aby użyć 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 publicznej, np. api.myCompany.com, który będzie wskazywać [org]-[environment].apigee.net.
  2. Utwórz i skonfiguruj magazyn kluczy o nazwie myTestKeystore (w tym przykładzie) zgodnie z procedurą opisaną tutaj: Tworzenie magazynów kluczy i magazynów zaufanych certyfikatów za pomocą interfejsu Edge. W tym przykładzie upewnij się, że 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ć w przypadku hosta wirtualnego.
  4. Utwórz odwołanie do magazynu kluczy za pomocą interfejsu Edge lub interfejsu API. Odwołanie określa nazwę magazynu kluczy i typ 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 (Utwórz hosta wirtualnego). Upewnij się, że podajesz prawidłowe odwołanie do magazynu kluczy i alias klucza. Aby użyć interfejsu API, użyj następującego wywołania interfejsu API POST, aby utworzyć 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 wykonujesz dwukierunkowe połączenie TLS z klientem, ustaw wartość <ClientAuthEnabled> na true i określ magazyn zaufanych certyfikatów za pomocą elementu <TrustStore>. Klient musi być prawidłowo skonfigurowany pod kątem dwukierunkowego protokołu TLS, co oznacza, że Edge musi mieć magazyn zaufanych certyfikatów zawierający wystawcę certyfikatu klienta i łańcuch certyfikatów. Utwórz magazyn zaufanych certyfikatów, wykonując procedurę opisaną tutaj: Tworzenie magazynów kluczy i magazynu zaufanych certyfikatów za pomocą interfejsu Edge.

  6. Jeśli masz już jakieś proxy interfejsu API, dodaj host wirtualny do elementu <HTTPConnection> w ProxyEndpoint. Wirtualny host jest automatycznie dodawany do wszystkich nowych serwerów proxy interfejsu API. Zobacz Konfigurowanie serwera proxy interfejsu API do korzystania z hosta wirtualnego.

Po zaktualizowaniu serwera proxy interfejsu API, aby używał hosta wirtualnego, oraz utworzeniu wpisu DNS i rekordu CNAME dla aliasu hosta możesz uzyskać dostęp do serwera proxy interfejsu API w sposób pokazany poniżej:

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, którzy korzystają z płatnej wersji usługi, mogą modyfikować istniejący host wirtualny na 2 główne sposoby:

  1. Zmiana wartości odwołania do magazynu kluczy lub magazynu zaufanych certyfikatów.

    Uwaga: po ustawieniu <KeyStore> lub <TrustStore> jako odwołania możesz w każdej chwili zmienić jego wartość. Jeśli jednak chcesz zmienić <KeyStore> lub <TrustStore>, aby używać innego odwołania, albo zmienić <KeyAlias>, aby używać 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ć keystore lub truststore używane przez hosta wirtualnego.

Zanim zmodyfikujesz wartość odniesienia:

  1. Utwórz nowy magazyn kluczy i prześlij certyfikat oraz klucz zgodnie z opisem w sekcji Tworzenie magazynów kluczy i magazynów zaufanych certyfikatów za pomocą interfejsu Edge. W nowym magazynie kluczy użyj tej samej nazwy aliasu klucza, która była używana w dotychczasowym magazynie kluczy.
  2. W razie potrzeby utwórz nowy magazyn zaufanych certyfikatów i prześlij certyfikat zgodnie z opisem w artykule Tworzenie magazynów kluczy i magazynów zaufanych certyfikatów za pomocą interfejsu Edge.
  3. Zmodyfikuj odwołanie zgodnie z opisem w sekcji Korzystanie z odwołań.

Modyfikowanie właściwości TLS hosta wirtualnego

Klienci korzystający z wersji płatnej mogą używać interfejsu API Aktualizowanie hosta wirtualnego do aktualizowania hosta wirtualnego. Ten interfejs API umożliwia ustawienie wszystkich właściwości hosta wirtualnego opisanych w tym artykule.

Gdy modyfikujesz hosta wirtualnego, Edge przeprowadza weryfikację podobną do tej, która jest wykonywana podczas tworzenia hosta wirtualnego. Oznacza to, że podczas modyfikacji Edge sprawdza, czy:

  • Domena określona przez alias hosta nie jest używana w innej organizacji ani środowisku.
  • jesteś właścicielem nazwy domeny; Edge sprawdza, czy te informacje w certyfikacie są zgodne z aliasem hosta:
    • CN – nazwa pospolita
    • SAN - Subject Alternative Name
    • Edge sprawdza, czy certyfikat nie stracił ważności.

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

  1. Zaktualizuj hosta wirtualnego za pomocą interfejsu API Update a Virtual Host. Podczas korzystania z interfejsu API w treści żądania musisz podać pełną definicję hosta wirtualnego, 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żywania odwołań do magazynu kluczy i magazynu zaufanych certyfikatów

Wszystkie nowe hosty wirtualne w Edge w chmurze odwołują się do magazynu kluczy i magazynu zaufanych certyfikatów. Odwołania umożliwiają zmianę magazynu kluczy i magazynu zaufanych certyfikatów bez kontaktowania się z zespołem pomocy Apigee Edge.

Starsze hosty wirtualne w Apigee Edge mogą nie być skonfigurowane do używania odwołań do magazynów kluczy i magazynów zaufanych certyfikatów. W takim przypadku możesz zaktualizować hosta wirtualnego, aby używał odwołania.

Aktualizowanie hosta wirtualnego w celu używania odwołania

Aby zaktualizować hosta wirtualnego, wykonaj te czynności:

  1. W razie potrzeby utwórz nowy magazyn kluczy i prześlij certyfikat zgodnie z opisem w artykule Tworzenie magazynów kluczy i magazynu zaufanych certyfikatów za pomocą interfejsu Edge. Jeśli masz już magazyn kluczy, możesz skonfigurować odwołanie, aby wskazywało ten magazyn.
  2. Utwórz nowe odwołanie do magazynu kluczy.
  3. W razie potrzeby utwórz nowy magazyn zaufanych certyfikatów i prześlij certyfikat. Jeśli masz już magazyn zaufanych certyfikatów, możesz skonfigurować odwołanie, aby wskazywało na niego.
  4. Utwórz nowe odwołanie do magazynu zaufanych certyfikatów.
  5. Zaktualizuj hosta wirtualnego, aby ustawić magazyn kluczy, alias, magazyn zaufanych certyfikatów i inne właściwości TLS. Ładunek połączenia to:
    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 ponownie uruchomić routery brzegowe i dokończyć proces, skontaktuj się z zespołem pomocy Apigee.