Informacje o wersji Edge Microgateway

Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
Informacje

Wersja 3.3.x

Poprawki błędów i ulepszenia w wersji 3.3.x

3.3.2

18 sierpnia 2023 roku opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.3.2. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.3.2 3.3.2 3.3.2 3.3.2 3.2.2

Poprawki błędów i ulepszenia:

Identyfikator problemu Typ Opis
296187679 Funkcja

Obsługiwane wersje Node.js to: 16, 18 i 20. Od wersji 3.3.2 polecenia interfejsu wiersza poleceń Edge Microgateway będą działać tylko w obsługiwanych wersjach. Wykonanie poleceń interfejsu wiersza poleceń w nieobsługiwanych wersjach spowoduje błąd. Zobacz też Obsługiwane oprogramowanie i obsługiwane wersje Apigee.

283947053 Gąsienica

Rozwiązaliśmy problem, który powodował, że Edge Microgateway zwróciła pierwszą usługę API na liście usług API powiązanych z aplikacją. Teraz określamy właściwą usługę API do zwrócenia na podstawie żądania.

274443329 Gąsienica

Rozwiązaliśmy problem polegający na tym, że Docker pobierał nieaktualną wersję obrazu. Wersja węzła Dockera została zaktualizowana do Node.js w wersji 18. Utworzyliśmy teraz obraz Dockera w wersji 18.17-buster-slim.

Rozwiązano problemy dotyczące bezpieczeństwa

Brak.

3.3.1

7 czerwca 2022 roku opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.3.1. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.3.1 3.3.1 3.3.1 3.3.1 3.2.2

Poprawki błędów i ulepszenia:

Identyfikator problemu Typ Opis
220885293 Funkcja

Obsługiwana jest teraz wersja 16 środowiska Node.js.

231972608 Gąsienica

Rozwiązaliśmy problem, który powodował, że polecenie private configure zwróciło błąd podczas próby skonfigurowania chmury prywatnej.

233315475 Gąsienica

Naprawiliśmy problem, który powodował, że plugin json2xml zwracała błąd analizy podczas przekształcania odpowiedzi z JSON na XML lub w połączeniu z plugin accumulate-response.

221432797 Zmień

Wersja Docker Node.js podstawowego obrazu Edge Microgateway została uaktualniona do Node.js 14.

215748732 Funkcja

Do polecenia revokekeys dodaliśmy obsługę uwierzytelniania tokenem SAML.

Zamiast danych logowania związanych z nazwą użytkownika i hasłem możesz teraz przekazywać token SAML za pomocą opcji -t w poleceniu revokekeys.

Więcej informacji znajdziesz w dokumentacji wiersza poleceń.

218723889 Aktualizacja dokumentu

Dokumentacja została zaktualizowana, aby uwzględnić link do obsługiwanych wtyczek Edge Microgateway przechowywanych na GitHubie. Zobacz Istniejące wtyczki dołączane do Edge Microgateway.

Rozwiązano problemy dotyczące bezpieczeństwa

Identyfikator problemu Opis
CVE-2021-23413 Dotyczy to pakietu jszip w wersji starszej niż 3.7.0. Utworzenie nowego pliku ZIP z nazwami plików ustawionymi na wartości prototypu obiektu (np. proto, toString itp.) powoduje, że zwrócony obiekt ze zmodyfikowaną instancją prototypu.

3.3.0

4 lutego 2022 roku opublikowaliśmy poniższe poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.3.0. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.3.0 3.3.0 3.3.0 3.3.0 3.2.2

Poprawki błędów i ulepszenia:

Identyfikator problemu Typ Opis
219556824 Znany problem Edge Microgateway Gateway 3.3.0 jest niezgodna z poleceniem npm checkfix.

Uruchomienie npm audit fix powoduje, że apigeetool zostaje uaktualniony do wersji 0.15.2, co ma wpływ na polecenie edgemicro upgradeauth.

Jeśli uruchomisz npm audit fix, a następnie edgemicro upgradeauth, zobaczysz ten błąd:

Error: This method has been removed in JSZip 3.0, please check the upgrade guide.

Jeśli chcesz rozwiązać problem, wykonaj to polecenie w celu przywrócenia prawidłowej wersji instancji apigeetool:

npm install apigeetool@0.15.1

Ten problem zostanie rozwiązany w przyszłej wersji Edge Microgateway.

138622990 Funkcja

Nowa flaga wtyczki Limit (isHTTPStatusTooManyRequestEnabled) konfiguruje w wtyczce stan odpowiedzi HTTP 429 zamiast 403 w przypadku naruszenia limitu. Zobacz Opcje konfiguracji limitu.

192534424 Gąsienica

Rozwiązaliśmy problem, który powodował, że kod odpowiedzi widoczny w statystykach Apigee nie był zgodny z kodem odpowiedzi Edge Microgateway.

198986036 Ulepszenie Edge Microgateway pobiera teraz klucz publiczny dostawcy tożsamości w każdym interwale ankiet i aktualizuje klucz w przypadku zmiany klucza publicznego dostawcy tożsamości. Wcześniej wtyczka extauth nie mogła zaktualizować klucza publicznego bez ponownego ładowania Edge Microgateway, jeśli klucz publiczny dostawcy tożsamości uległ zmianie.
168713541 Gąsienica

Ulepszyliśmy dokumentację, aby wyjaśnić, jak skonfigurować protokół TLS/SSL w przypadku wielu celów. Zobacz Używanie opcji SSL/TLS klienta.

171538483 Gąsienica

Dokumentacja została zmieniona, aby poprawić konwencję nazewnictwa plików dziennika. Zobacz Konwencje nazewnictwa plików dziennika.

157908466 Gąsienica

Dokumentacja została zmieniona, aby poprawnie wyjaśnić, jak zainstalować konkretną wersję Edge Microgateway. Zobacz Uaktualnianie Edge Microgateway, jeśli masz połączenie z internetem.

215748427 Gąsienica Rozwiązaliśmy problem, który powodował, że polecenie unieważnienia kluczy zwracało błąd podczas unieważniania klucza przy użyciu istniejącej pary klucza i obiektu tajnego.
205524197 Gąsienica Dokumentacja została zaktualizowana, aby uwzględnić pełną listę poziomów logowania. Zobacz atrybuty Edgemicro i artykuł Jak ustawić poziom rejestrowania.

Wersja 3.2.x

Poprawki błędów i ulepszenia wersja 3.2.x

3.2.3

17 września 2021 roku opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.2.3. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.2.3 3.2.3 3.2.3 3.2.3 3.2.2

Poprawki błędów i ulepszenia:

Identyfikator problemu Typ Opis
192416584 Funkcja

Atrybut konfiguracji disableStrictLogFile pozwala złagodzić rygorystyczne uprawnienia do pliku w pliku logu aplikacji api-log.log. Szczegółowe informacje znajdziesz w artykule na temat łagodzenia uprawnień do plików dziennika.

192799989 Funkcja

Atrybut konfiguracji on_target_response_abort pozwala kontrolować zachowanie Edge Microgateway w przypadku przedwczesnego zamknięcia połączenia między klientem (Edge Microgateway) a serwerem docelowym. Szczegółowe informacje znajdziesz w artykule o atrybutach Edgemicro.

148062415 Gąsienica Rozwiązaliśmy problem, który powodował, że w kontekście kontenera Dockera Edge Microgateway nie wyłączyła się płynnie za pomocą polecenia docker stop {containerId}. Proces został zakończony, ale pliki .sock i .pid nie zostały usunięte. Pliki zostaną usunięte i ponowne uruchomienie tego samego kontenera będzie działać zgodnie z oczekiwaniami.
190715670 Gąsienica Naprawiliśmy problem, który powodował, że niektóre żądania blokowały się podczas wewnętrznego ponownego ładowania mikrobramy. Ten problem występował przejściowo i występował w sytuacjach o dużym natężeniu ruchu. Problem wystąpił podczas korzystania z funkcji tokenCache i cacheKey wtyczki OAuth.
183910111 Gąsienica Rozwiązaliśmy problem, który powodował, że adres URL ścieżki zasobu z końcowym ukośnikiem był nieprawidłowo interpretowany jako osobna ścieżka zasobu. Teraz na przykład ścieżki /country/all i /country/all/ są interpretowane jako ta sama ścieżka.

Rozwiązano problemy dotyczące bezpieczeństwa

Identyfikator problemu Opis
CVE-2020-28503 Mechanizmy kopiowania pakietu w wersjach starszych niż 2.0.5 są podatne na zanieczyszczenie prototypów ze względu na swoją główną funkcję.
CVE-2021-23343 Wszystkie wersje analizy ścieżki pakietu są podatne na ataki typu Denial of Service (ReDoS) za pomocą wyrażeń regularnych w formacie podzielonego urządzenia, podziałuTailRe i podzielonePathRe. Funkcja ReDoS wykazuje złożoność wielomianu najgorszego przypadku w czasie.

3.2.2

W czwartek 15 lipca 2021 roku opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.2.2. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.2.2 3.2.2 3.2.2 3.2.2 3.2.2

Poprawki błędów i ulepszenia:

Identyfikator problemu Typ Opis
185323500 Zmień

Wartość parametru expires_in została zmieniona z ciągu znaków na liczbę całkowitą

Interfejsy API żądań tokena i tokena odświeżania zwracają teraz expires_in jako liczbę całkowitą określoną w sekundach.

Aby zapewnić zgodność z RFC 6749 The OAuth 2.0 Authorization Framework, oczekiwana wartość parametru konfiguracji expires_in została zmieniona z ciągu znaków na liczbę całkowitą. Więcej informacji znajdziesz w dokumentacji operacji i konfiguracji.

188492065 Zmień Zakończenie obsługi Node.js 8

Od wersji 3.2.2 środowisko Node.js 8 nie będzie już obsługiwane. Więcej informacji znajdziesz w artykule o obsługiwanym oprogramowaniu i obsługiwanych wersjach: Edge Microgateway.

183990345 Funkcja Konfigurowanie danych wyjściowych logu dla kontenera Dockera

Parametr konfiguracji Edge Microgateway to_console umożliwia wysyłanie informacji logu do standardowych danych wyjściowych zamiast do pliku logu. Jeśli uruchomisz Edge Microgateway w kontenerze Dockera, kontener domyślnie przekierowuje stdout i wyniki błędów do pliku znajdującego się w kontenerze w tej lokalizacji: ${APIGEE_ROOT}/logs/edgemicro.log.

Aby zapobiec wysyłaniu informacji z dziennika do edgemicro.log, użyj nowej zmiennej LOG_CONSOLE_OUTPUT_TO_FILE podczas uruchamiania kontenera.

Szczegółowe informacje o korzystaniu z tej nowej zmiennej znajdziesz w artykule na temat używania Dockera dla Edge Microgateway.

183057665 Funkcja Skonfiguruj ścieżki plików edgemicro.pid i edgemicro.sock.

Nowy parametr -w, --workdir do uruchamiania kontenera Dockera z Edge Microgateway pozwala określić ścieżkę do katalogu, w którym w kontenerze Docker mają zostać utworzone pliki edgemicro.sock i edgemicro.pid. Zobacz Korzystanie z Dockera na potrzeby Edge Microgateway.

191352643 Funkcja Obraz Dockera dla Edge Microgateway został zaktualizowany do korzystania z NodeJS w wersji 12.22. Zobacz Korzystanie z Dockera na potrzeby Edge Microgateway.

Rozwiązano problemy dotyczące bezpieczeństwa

Identyfikator problemu Opis
CVE-2021-28860 W Node.js Mixme (przed wersją 0.5.1) osoba przeprowadzająca atak może dodawać lub zmieniać właściwości obiektu za pomocą funkcji „__proto__” za pomocą funkcji mutate() i Merge(). Atrybut zanieczyszczony zostanie bezpośrednio przypisany do każdego obiektu w programie. Może to narazić dostępność programu na potencjalną atak DoS (odmowa usługi).
CVE-2021-30246 W pakiecie jsrsasign do wersji 10.1.13 dla Node.js niektóre nieprawidłowe podpisy RSA PKCS#1 w wersji 1.5 zostały błędnie rozpoznane jako prawidłowe. UWAGA: nie ma żadnego praktycznego ataku.
CVE-2021-23358 Pakiet podkreśla oznaczenia od wersji 1.13.0-0 i starszych wersji 1.13.0-2 do 1.3.2 i starszych wersji 1.12.1 na ryzyko wstrzykiwania dowolnego kodu za pomocą funkcji szablonu, zwłaszcza gdy właściwość zmiennej jest przekazywana jako argument, ponieważ nie jest opanowana.
CVE-2021-29469 Node-redis to klient Node.js Redis. W wersjach wcześniejszych niż 3.1.1, gdy klient jest w trybie monitorowania, użycie wyrażenia regularnego do wykrywania komunikatów monitorowania może powodować wykładnicze śledzenie wsteczne niektórych ciągów znaków. Ten problem może doprowadzić do odmowy działania usługi. Problem został poprawiony w wersji 3.1.1.
CVE-2020-8174 Obraz Dockera został zaktualizowany do wersji 12.22, aby używać środowiska Node.js

3.2.1

W piątek 5 marca 2021 roku opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.2.1. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.2.1 3.2.1 3.2.1 3.2.1 3.2.1

Poprawki błędów i ulepszenia:

Identyfikator problemu Typ Opis
180362102 Gąsienica Rozwiązaliśmy problem polegający na tym, że klucze JWK o wartości null powodowały awarię aplikacji.

Warunek null jest teraz obsługiwany w celu uniknięcia przekazywania wartości null w metodzie jwkPublicKeys.

Uwaga: ta poprawka wymaga uaktualnienia serwera proxy edgemicro-auth.

179971737 Gąsienica Rozwiązaliśmy problem polegający na tym, że docelowe odpowiedzi stanu 4XX / 5XX były rejestrowane jako błędy serwera proxy dla serwerów proxy edgemicro_*.

W przypadku transakcji Edge Microgateway w panelu analizy kodów błędów Apigee Edge wyświetlana była nieprawidłowa liczba błędów docelowych. Kody błędów dotyczących miejsca docelowego były liczone jako błędy serwera proxy. Problem został rozwiązany i wyświetlana jest prawidłowa liczba błędów w miejscu docelowym.

179674670 Funkcja Dodano nową funkcję, która umożliwia filtrowanie listy produktów API umieszczonych w tokenie JWT na podstawie kodów stanu produktów.

Produkty interfejsu API mają 3 kody stanu: Oczekujący, Zatwierdzony i Unieważniony. Do zasady Ustaw zmienne JWT na serwerze proxy edgemicro-auth została dodana nowa właściwość o nazwie allowProductStatus. Aby użyć tej właściwości do filtrowania produktów API wymienionych w tokenie JWT:

  1. Otwórz serwer proxy edgemicro-auth w edytorze Apigee.
  2. Dodaj właściwość allowProductStatus do kodu XML zasady SetJWTVariables i podaj oddzieloną przecinkami listę kodów stanu, według których chcesz filtrować. Aby na przykład filtrować dane według stanu Oczekujący i Unieważniony:
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <Javascript timeLimit="20000" async="false" continueOnError="false"
        enabled="true" name="Set-JWT-Variables">
        <DisplayName>Set JWT Variables</DisplayName>
        <FaultRules/>
        <Properties>
            <Property name="allowProductStatus">Pending,Revoked</Property>
        </Properties>
        <ResourceURL>jsc://set-jwt-variables.js</ResourceURL>
    </Javascript>
    
    

    Jeśli chcesz, aby na liście wyświetlały się tylko produkty Zatwierdzone, ustaw tę właściwość w ten sposób:

    <Property name="allowProductStatus">Approved</Property>
  3. Zapisz serwer proxy.

    Jeśli nie ma tagu Property, w tokenie JWT będą wymienione produkty ze wszystkimi kodami stanu.

    Aby korzystać z tej nowej usługi, musisz uaktualnić serwer proxy edgemicro-auth.

178423436 Gąsienica Wartości klucza i obiektu tajnego przekazywane w interfejsie wiersza poleceń lub za pomocą zmiennych środowiskowych są widoczne w argumentach wiersza poleceń eksploratora procesów.

Zgłoszono problem polegający na tym, że po uruchomieniu mikrobramy w argumentach instancji roboczej/podrzędnej węzła wyświetlane były wartości klucza i obiektu tajnego dla Edge Microgateway, które zostały przekazane z argumentów wiersza poleceń lub ustawione za pomocą zmiennych środowiskowych.

Aby rozwiązać ten problem w przypadku zmiennej środowiskowej, wartości nie są już widoczne w argumentach wiersza poleceń eksploratora procesów.

Jeśli wartości klucza i obiektu tajnego są przekazywane w wierszu poleceń podczas uruchamiania mikrobramy, ustawienia zastępują wszelkie wartości zmiennych środowiskowych (jeśli są ustawione). W tym przypadku wartości są nadal widoczne w argumentach wiersza poleceń eksploratora procesów.

178341593 Gąsienica Naprawiono błąd dokumentacji wtyczki apikeys.

Plik README wtyczki apikeys zawiera nieprawidłową właściwość gracePeriod. Usunęliśmy tę usługę i jej opis z pliku README.

Właściwość gracePeriod jest zaimplementowana we wtyczce oauth. Aby korzystać z funkcji okresu prolongaty, musisz użyć wtyczki oauth.

179366445 Gąsienica Rozwiązano problem, który powodował, że ładunek był usuwany w przypadku wszystkich żądań GET kierowanych do celów.

Możesz kontrolować pożądane działanie za pomocą nowego parametru konfiguracji: edgemicro: enable_GET_req_body. Gdy jest ustawiony na true, nagłówek żądania transfer-encoding: chunked jest dodawany do wszystkich żądań GET, a ładunek GET, jeśli jest dostępny, jest wysyłany do celu. Jeśli false (wartość domyślna), ładunek jest dyskretnie usuwany, zanim żądanie zostanie wysłane do miejsca docelowego.

Na przykład:

edgemicro:
 enable_GET_req_body: true

Zgodnie z sekcją 4.3.1 RFC 7231, sekcja 4.3.1: GET, ładunek żądania GET nie ma zdefiniowanej semantyki, więc może zostać wysłany do celu.

3.2.0

W czwartek 21 stycznia 2021 roku opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.2.0. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.2.0 3.2.0 3.2.0 3.2.0 3.2.0

Poprawki błędów i ulepszenia:

Identyfikator problemu Typ Opis
152640618 Gąsienica Włączono wtyczkę extauth, aby ustawić nagłówek x-api-key tak, aby zawierał client_id w obiekcie żądania, jeśli token jest prawidłowy. Zasób x-api-key będzie wtedy dostępny dla kolejnych wtyczek.
168836123, 172295489, 176462355, 176462872 Funkcja Dodano obsługę środowiska Node.js 14.
172376835 Gąsienica Użyj prawidłowej jednostki czasu dla punktu końcowego /token na serwerze proxy edgemicro-auth.

Rozwiązaliśmy problem, który powodował, że punkt końcowy /token na serwerze proxy edgemicro-auth zwracał wartość expires_in w milisekundach. Jednak zgodnie ze specyfikacją protokołu OAuth powinien on być zgodny z jednostką czasu refresh_token_expires_in, czyli sekundą.

Poprawka nie zmienia długości okresu ważności, a jedynie jednostkę czasu. Ma zastosowanie tylko do pola expires_in w ładunku odpowiedzi tokena dostępu. Token JWT w tym samym ładunku odpowiedzi zawierałby 2 pola – iat i exp. Są one generowane poprawnie i zawsze z jednostką czasu seconds.

Jeśli klienci używali wartości expires_in w milisekundach do odświeżania tokenów przed wygaśnięciem tokenów, zastosowanie tej poprawki bez modyfikacji klientów spowodowałoby znacznie częstsze i niepotrzebne odświeżanie. Aby zachować pierwotne zachowanie, musisz zmodyfikować te klienty ze względu na zmianę jednostki czasu.

Nie należy wprowadzać zmian, jeśli klienci zawsze używali wartości w tokenie JWT do oceny okresu odświeżania.

173064680 Gąsienica Rozwiązaliśmy problem polegający na tym, że mikrobrama zakończyła realizację żądania docelowego przed przetworzeniem wszystkich fragmentów danych.

Jest to chwilowy problem zaobserwowany w przypadku żądań o dużym ładunku, który został wprowadzony w wersji 3.1.7.

174640712 Gąsienica Dodaj do wtyczek prawidłową obsługę danych.

W tych wtyczkach dodaliśmy prawidłową obsługę danych: json2xml, accumulate-request, accumulate-response i header-uppercase. Szczegółowe informacje o wtyczce znajdziesz na stronie microgateway-Plugins.

Wersja 3.1.x

Poprawki błędów i ulepszenia wersja 3.1.x

3.1.8

W poniedziałek 16 listopada 2020 r. opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.1.8. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.1.8 3.1.9 3.1.7 3.1.3 3.1.2

Poprawki błędów i ulepszenia:

Identyfikator problemu Typ Opis
169201295 Gąsienica Wartości liczbowe i logiczne zostały nieprawidłowo przeanalizowane w tagach zmiennych środowiskowych.

W przypadku obsługi zastępowania zmiennych środowiskowych wszystkie wartości były analizowane jako ciągi znaków, co spowodowało analizę błędów w przypadku wartości logicznych lub liczbowych. Na przykład edgemicro.port wymaga podania wartości liczbowej. Wprowadzono poprawki dotyczące wartości logicznych i liczbowych. Szczegóły konfiguracji znajdziesz w artykule Ustawianie atrybutów konfiguracji za pomocą wartości zmiennych środowiskowych.

169202749 Gąsienica W niektórych przypadkach zastępowanie zmiennych środowiskowych nie działało.

W przypadku niektórych atrybutów konfiguracji nie działała obsługa zastępowania zmiennych środowiskowych. Informacje o ograniczeniach znajdziesz w artykule Ustawianie atrybutów konfiguracji z wartościami zmiennych środowiskowych.

168732942 Gąsienica Rozwiązaliśmy problem, który powodował, że zakresy protokołu OAuth nie ograniczały dostępu do serwera proxy interfejsu API zgodnie z oczekiwaniami.

Przepływ /token w tokenach JWT wygenerowanych w edgemicro-auth bez poprawnych zakresów usług zdefiniowanych w Edge wynika z 2 różnych scenariuszy: 1) ładunek żądania do przepływu /token nie przekazał parametru zakresu lub 2) w ładunku żądania do przepływu /token przekazano nieprawidłowy zakres. Wprowadzono poprawkę zwracającą wszystkie zakresy zdefiniowane w usługach API w Apigee Edge.

170609716 Gąsienica Rozwiązaliśmy problem, w wyniku którego przepływ /refresh na serwerze proxy edgemicro-auth wygenerował token JWT bez apiProductList.

170708611 Gąsienica Zakresy usług interfejsu API nie są dostępne w przypadku niestandardowych wtyczek.

Zakresy usług interfejsu API nie zostały udostępnione niestandardowych wtyczkom ani zapisane w pliku konfiguracji pamięci podręcznej. Przeczytaj sekcję Informacje o funkcji init() wtyczki, aby dowiedzieć się, jak szczegóły zakresu są udostępniane wtyczkom.

169810710 Funkcja Klucz i obiekt tajny zapisane w pliku konfiguracji pamięci podręcznej.

Klucz i obiekt tajny Edge Microgateway były zapisywane w pliku yaml konfiguracji pamięci podręcznej przy każdym odświeżeniu/uruchomieniu. W wersji 3.1.8 klucz i obiekt tajny nie są już zapisywane w pliku konfiguracji pamięci podręcznej. Jeśli klucz i obiekt tajny były wcześniej zapisane w pliku konfiguracyjnym pamięci podręcznej, zostaną usunięte.

170708621 Funkcja Nie można wyłączyć wtyczki Analytics.

W poprzednich wersjach mikrobramy wtyczka analytics była domyślnie włączona i nie można jej wyłączyć. W wersji 3.1.8 wprowadziliśmy nowy parametr konfiguracji enableAnalytics, który umożliwia włączanie i wyłączanie wtyczki Analytics. Szczegółowe informacje znajdziesz w dokumentacji konfiguracji.

159571119 Gąsienica Błąd „null” w punkcie zaczepienia onerror_request w niestandardowych wtyczkach po przekroczeniu limitu czasu odpowiedzi/socketu.

Wprowadziliśmy poprawki, aby podać prawidłowy kod stanu HTTP i komunikaty o błędach w przypadku zdarzeń onerror_request oraz poprawny komunikat o błędzie w przypadku zdarzeń onerror_response.

3.1.7

W czwartek 24 września 2020 roku opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.1.7. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.1.7 3.1.8 3.1.6 3.1.2 3.1.1

Poprawki błędów i ulepszenia:

Identyfikator problemu Typ Opis
131708105 Gąsienica Wtyczka analytics błędnie przetworzyła pustą odpowiedź z wywołań axpublisher i spowodowała zamknięcie instancji roboczych.

133162200 Gąsienica Informacje o aplikacji dewelopera nie zostały podane w Analytics dzięki odpowiedziom 403 o stanie spowodowanym nieautoryzowanymi ścieżkami zasobów produktu lub odpowiedziami 401 z powodu nieważnego lub nieprawidłowego tokena.

132194290 Gąsienica Rekordy Analytics są odrzucane, gdy Apigee Edge odrzuci niektóre rekordy analityczne.

158618994 Gąsienica Nadmierna liczba połączeń z klientem Redis.

161404373 Gąsienica W przypadku otrzymania odpowiedzi o stanie 404 w wiadomości z odpowiedzią był podany pełny identyfikator URI serwera proxy.
166356972 Gąsienica

Uruchomienie Edge Microgateway z użyciem środowiska Node.js w wersji 12.13.x lub nowszej powodowało następujący błąd podczas uruchamiania wtyczek przekształcających ładunek żądania:

{"message":"write after end","code":"ERR_STREAM_WRITE_AFTER_END"}

168681746 Gąsienica Ręczne ponowne ładowanie Edge Microgateway za pomocą redisBasedConfigCache:true nie działało.

149256174 Gąsienica Błędy wtyczki OAuth nie zostały zarejestrowane w przypadku awarii sieci.

166517190 Gąsienica Dane jwk_public_keys nie zostały zapisane i pobrane przez synchronizator oraz przechowywane w Redis.

141659881 Gąsienica Błąd podczas obsługi nieprawidłowego certyfikatu docelowego dawał mylące odpowiedzi na błędy.

142808699 Gąsienica Wtyczka kontroli dostępu nie obsługiwała poprawnie sekcji „allow” (zezwól) i „deny” (odmów).

Mikrobrama przetwarza teraz sekcję odmowy prawidłowo i przestrzega kolejności sekcji „zezwalaj” i „odmów”. Do pliku konfiguracyjnego mikrobramy dodaliśmy nową właściwość noRuleMatchAction, aby zapewnić spójność z zasadą kontroli dostępu Apigee Edge. Zapoznaj się też z plikiem README wtyczki kontroli dostępu na GitHubie.

3.1.6

W czwartek 20 sierpnia 2020 roku opublikowaliśmy poniższe poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.1.6. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.1.6 3.1.7 3.1.5 3.1.1 3.1.1

Poprawki błędów i ulepszenia:

Identyfikator problemu Typ Opis
163711992 Funkcja Opcje lokalizacji pliku niestandardowego klucza i certyfikatu dla polecenia Rotkey

Szczegółowe informacje o tych nowych opcjach poleceń znajdziesz w artykule Rotacja kluczy.

154838259 Gąsienica Naprawa rotacji kluczy w przypadku instancji wielu instancji w wielu centrach danych

Szczegółowe informacje o tych nowych opcjach poleceń znajdziesz w artykule Rotacja kluczy.

145525133 Funkcja w wersji alfa Nowe dane dotyczące wtyczek

Szczegółowe informacje znajdziesz w pliku README nowych wskaźników wtyczek na GitHubie.

159396879 Gąsienica Usuwanie nieużywanego asystenta pakietów
161092943 Gąsienica Weryfikacja ścieżki podstawowej była nieprawidłowa

Przed wersją 3.1.6 ścieżka bazowa serwera proxy była nieprawidłowo dopasowywana, gdy ścieżka ta nie kończyła się znakiem /.

Poniżej objaśniamy dokładniej poprzednie działanie (poprawione w wersji 3.1.6):

Załóżmy, że skonfigurowano serwer proxy ze ścieżką bazową /hello/v1 i ścieżką docelową https://mocktarget.apigee.net. Załóżmy teraz, że serwer proxy otrzymuje te żądania:

Ścieżka żądania Ścieżka rozwiązana Wynik
/hello/v1/json https://mocktarget.apigee.net/json Znaleziona ścieżka jest prawidłowa, ponieważ ścieżka bazowa elementu /hello/v1 jest prawidłowo dopasowana.
Ścieżka żądania Ścieżka rozwiązana Wynik
/hello/v1json https://mocktarget.apigee.netjson Znaleziona ścieżka jest nieprawidłowa, ponieważ /hello/v1 jest podłańcuchem elementu /hello/v1json. Ponieważ /hello/v1json nie jest prawidłową ścieżką, Edge Microgateway powinna zwrócić błąd 404. W wersji 3.1.6 i nowszych zgłaszany jest błąd 404.
160431789 Gąsienica Niestandardowe wtyczki – obiekt konfiguracji przekazywany do init nie jest wypełniany

Konfiguracja Apigee Edge jest dostępna w obiekcie konfiguracji dla wszystkich niestandardowych wtyczek po scaleniu z plikiem konfiguracji Edge Microgateway. Sprawdź config.

162758808 Gąsienica Nowa konfiguracja limitu dla magazynu kopii zapasowych Redis

Aby określić magazyn kopii zapasowych Redis na potrzeby limitów, możesz użyć tej konfiguracji. Więcej informacji znajdziesz w sekcji Używanie magazynu kopii zapasowych Redis na potrzeby limitu.

3.1.5

W piątek 26 czerwca 2020 r. opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.1.5. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.1.5 3.1.6 3.1.4 3.1.0 3.1.0

Poprawki błędów i ulepszenia:

Identyfikator problemu Typ Opis
159210507 Funkcja Konfiguracja pomijania przetwarzania wtyczek

Dodano nową funkcję konfiguracji, która umożliwia pominięcie przetwarzania wtyczek w przypadku określonych adresów URL. Szczegółowe informacje znajdziesz w sekcji Konfigurowanie wykluczonych adresów URL wtyczek.

156986819, 158529319 Gąsienica Rozwiązano problemy z wtyczką json2xml

Rozwiązaliśmy problemy polegające na tym, że wtyczka generowała zduplikowane nagłówki Content-Type i w niektórych przypadkach wysyłała nagłówki do miejsca docelowego w sposób niezgodny z oczekiwaniami.

156560067, 159688634 Funkcja

Używanie wartości zmiennych środowiskowych w konfiguracji

Dodaliśmy funkcję, która umożliwia określenie zmiennych środowiskowych za pomocą tagów w pliku konfiguracji. Określone tagi zmiennych środowiskowych są zastępowane rzeczywistymi wartościami zmiennych środowiskowych. Zamienniki są przechowywane tylko w pamięci, a nie w oryginalnej konfiguracji lub plikach pamięci podręcznej. Więcej informacji znajdziesz w artykule o ustawianiu atrybutów konfiguracji z wartościami zmiennych środowiskowych.

155077210 Gąsienica Rozwiązano problem z formatowaniem dzienników.

Rozwiązaliśmy problem polegający na tym, że host docelowy pojawiał się w logach z dodanymi zbędnymi dwukropkami.

153673257 Gąsienica

(Tylko Edge dla Private Cloud) Produkty zależne od mikrobramy nie zostały pobrane

Rozwiązaliśmy problem, który powodował, że produkty rozpoznawane przez mikrobramy nie były pobierane. Ten problem występował tylko w Edge dla Private Cloud.

154956890, 155008028, 155829434 Funkcja Obsługa filtrowania pobranych produktów według atrybutów niestandardowych

Więcej informacji znajdziesz w artykule Filtrowanie produktów według atrybutów niestandardowych.

153949764 Gąsienica Rozwiązaliśmy problem polegający na tym, że proces Edge Microgateway ulegał awarii, gdy docelowy plik logu był pełny

Ulepszyliśmy obsługę wyjątków, tak aby przechwytywać błąd i wyświetlać komunikat w konsoli.

155499600 Gąsienica Rozwiązaliśmy problemy z rotacją klucza i uaktualnieniem KVM

Zobacz też Rotacja kluczy JWT.

3.1.4

W piątek 23 kwietnia 2020 r. opublikowaliśmy w Edge Microgateway następującą poprawkę.

Poprawianie błędu:

Rozwiązaliśmy problem z zależnością w wersji 3.1.3. Wersja 3.1.3 została oznaczona jako wycofana w repozytorium npm. Poza tym wszystkie poprawki błędów i ulepszenia opisane w informacjach o wersji 3.1.3 dotyczą tej wersji.

3.1.3

W środę 15 kwietnia 2020 roku opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.1.3. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.1.3 3.1.3 3.1.3 3.0.14 3.0.9

Poprawki błędów i ulepszenia:

  • 153509313 – Naprawiono problem powodujący wyciek pamięci przez moduł debugowania Node.js. Ten problem występuje w wersjach 3.1.0, 3.1.1 i 3.1.2.
  • 153509313 – Rozwiązaliśmy problem polegający na tym, że w danych wyjściowych logowania był wyświetlany ten sam identyfikator wiadomości dla 2 różnych transakcji.
  • 151673570 – Naprawiono problem polegający na tym, że Edge Microgateway nie była aktualizowana pod kątem nowych interfejsów API Apigee KVM. Edge Microgateway korzysta teraz z nowych poleceń do dodawania i aktualizowania wartości KVM.
  • 152822846 – w poprzednich wersjach Edge Microgateway została zaktualizowana, tak aby przetwarzanie mapowania ścieżek zasobów było takie samo jak w Apigee Edge. W tej wersji rozwiązaliśmy problem, który powodował, że wzorzec /literal_string/* nie był prawidłowo obsługiwany. Na przykład: /*/2/*. Zobacz też Konfigurowanie zachowania ścieżki zasobu „/”, „/*” i „/**”.
  • 152005003 – Wprowadzono zmiany w zakresie identyfikatorów limitów na poziomie organizacji i środowiska.
  • 152005003 – Wprowadzono zmiany w zakresie identyfikatorów limitów na poziomie organizacji i środowiska. Kombinacja „org + env + appName + productName” jest używana jako identyfikator limitu.

3.1.2

W poniedziałek 16 marca 2020 r. opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.1.3. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.1.2 3.1.2 3.1.2 3.0.13 3.0.9

Poprawki błędów i ulepszenia:

  • 151285018 – Wprowadzono ulepszenie funkcji, aby dodać obsługę serwera proxy HTTP dla ruchu między Edge Microgateway a celami backendu. Rozwiązaliśmy też problemy dotyczące istniejącej obsługi serwera proxy HTTP między Edge Microgateway a Apigee Edge. Więcej informacji:
  • 149101890 – kod powiadomienia o logach stosowany w przypadkach, gdy serwer docelowy lub system równoważenia obciążenia zamyka połączenie, został zmieniony z ERROR na INFO.
  • 150746985 – Naprawiono problem, który powodował, że polecenie edgemicro verify nie działało prawidłowo, jeśli w pliku konfiguracji znajdowała się redisBasedConfigCache: true lub quotaUri: https://%s-%s.apigee.net/edgemicro-auth.
  • 151284716 – Wprowadziliśmy ulepszenie, które umożliwia szybsze zamykanie połączeń z serwerem w przypadku ponownego uruchamiania instancji roboczych podczas ponownego załadowania.
  • 151588764 – Zaktualizuj wersję Node.js w obrazie Dockera używanej do uruchamiania Edge Microgateway w kontenerze Dockera do wersji 12, ponieważ wersja Node.js w wersji 8 została wycofana.
  • 151306049 – Zaktualizowaliśmy dokumentację zawierającą listę interfejsów API do zarządzania Apigee Edge używanych przez polecenia interfejsu wiersza poleceń Edge Microgateway. Zobacz Jakich interfejsów API do zarządzania używa Edge Microgateway?.

3.1.1

W czwartek 20 lutego opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.1.1. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.1.1 3.1.1 3.1.1 3.0.13 3.0.9

Poprawki błędów i ulepszenia:

  • 146069701 – Naprawiono problem polegający na tym, że moduł microgateway-core nie respektował zmiennych środowiskowych HTTP_PROXY ani HTTPS_PROXY. Ta zmiana powoduje, że ustawienia serwera proxy w pliku konfiguracji YAML (jeśli zostały określone) są teraz ignorowane. Do określania serwera proxy są używane tylko zmienne środowiskowe.

    Jeśli chcesz określić konfigurację serwera proxy w pliku konfiguracji, musisz też określić zmienną HTTP_PROXY, która wspomina ten sam adres URL serwera proxy co ten podany w pliku konfiguracyjnym. Jeśli na przykład podasz taką konfigurację:

    edge_config:
      proxy: http://10.128.0.20:3128
      proxy_tunnel: true
    

    Musisz też podać tę zmienną środowiskową:

    HTTP_PROXY=http://10.128.0.20:3128
  • 146320620 – Dodano nowy parametr konfiguracji edgemicro.headers_timeout. Ten atrybut ogranicza czas (w milisekundach), przez jaki parser HTTP będzie czekać na otrzymanie pełnych nagłówków HTTP. Przykład:
    edgemicro:
    keep_alive_timeout: 6000
    headers_timeout: 12000

    Wewnętrznie parametr ten ustawia w żądaniach atrybut Node.js Server.headersTimeout. (Domyślnie: o 5 sekund dłużej niż czas ustawiony w polu edgemicro.keep_alive_timeout). To ustawienie domyślne zapobiega omyłkowemu zerwaniu połączenia przez systemy równoważenia obciążenia i serwery proxy.

  • 149278885 – Dodaliśmy nową funkcję, która pozwala ustawić docelowy czas oczekiwania interfejsu API na poziomie serwera proxy API zamiast używania jednego globalnego ustawienia limitu czasu.

    Jeśli ustawisz właściwość TargetEndpoint io.timeout.millis na serwerze proxy interfejsu API, Edge Microgateway będzie mogła pobrać tę właściwość i zastosować limity czasu specyficzne dla docelowego punktu końcowego. Jeśli ten parametr nie zostanie zastosowany, Edge Microgateway użyje globalnego limitu czasu określonego w edgemicro.request_timeout.

3.1.0

We wtorek 21 stycznia opublikowaliśmy poniższe poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.1.0. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.1.0 3.1.0 3.1.0 3.0.12 3.0.9

Poprawki błędów i ulepszenia:

  • 144187500 – po wywołaniu flagi quotas.failOpen zostanie zarejestrowane nowe zdarzenie na poziomie WARN. Ta flaga jest wyzwalana, gdy wystąpi błąd przetwarzania limitu lub jeśli żądanie „zastosuje limit” do Edge nie zaktualizuje liczników zdalnych. W tym przypadku limit będzie przetwarzany tylko na podstawie liczb lokalnych do czasu następnej udanej synchronizacji limitu zdalnego. Wcześniej to zdarzenie było rejestrowane tylko wtedy, gdy poziom logowania był ustawiony na DEBUG.

    Na przykład:

    2020-01-20T02:52:53.040Z [warn][localhost:8000][5][foo-eval][test][hello/][]
    [DbpGIq9jKfzPX8jvXEivhA0LPwE][f372cc30-3b2f-11ea-845f-a627f][quota][remote quota not
    available so processing locally, setting quota-failed-open for identifier: AppQuota60.Quota60]
    [GET][][][][]
  • 145023519 – Rozwiązaliśmy problem polegający na tym, że za każdym razem, gdy Edge Microgateway wykryła zmianę na serwerze proxy interfejsu API, w trakcie lotu lub na nowe transakcje miały wpływ na takie transakcje. Teraz po wprowadzeniu zmiany w serwerze proxy Edge Microgateway odświeża pamięć podręczną i ponownie uruchamia węzły robocze. Ta zmiana nie będzie miała wpływu na transakcje w trakcie lotu i nowe wywołania interfejsu API wysyłane do mikrobramy.
  • 146378327 – poziom logowania sourceRequest, targetRequest i targetResponse został zmieniony na poziom INFO.
  • 146019878 – rozbieżność między czasem oczekiwania obliczonym dla wydajności serwera proxy interfejsu API w usłudze Edge Analytics a zdarzeniami w dzienniku Edge Microgateway sourceResponse/targetResponse została naprawiona. Teraz czas oczekiwania w usłudze Edge Analytics i zdarzeń z dziennika Microgateway jest wyrównany.
  • Zmiany związane z logiką dopasowywania do wzorca:
    • 147027862 – Wtyczka OAuth została zaktualizowana tak, aby obsługiwała te wzorce dopasowywania ścieżek zasobów określone w usługach API:
      • /{literal}**
      • /{literal}*
      • Dowolna kombinacja dwóch powyższych wzorców

      Po tej zmianie wtyczka Edge Microgateway korzysta teraz z tego samego dopasowywania wzorców co w Apigee Edge zgodnie z opisem w sekcji Konfigurowanie zachowania ścieżki zasobu „/”, „/*” i „/**”.

    • 145644205 – Zaktualizuj logikę dopasowywania wzorców w wtyczce apiKeys, aby pasowała do wtyczki OAuth.
  • 143488312 – Rozwiązaliśmy problem polegający na tym, że spacje na początku lub na końcu parametru identyfikatora klienta powodowały, że lista produktów JWT była pusta w przypadku żądań tokena OAuth i klucza interfejsu API.
  • 145640807 i 147579179 – Dodano nową funkcję, która umożliwia specjalnej instancji Edge Microgateway o nazwie „synchronizator” na pobieranie danych konfiguracji z Apigee Edge i zapisywanie ich w lokalnej bazie danych Redis. Inne instancje mikrobram można skonfigurować tak, aby odczytywały z bazy danych swoje dane konfiguracyjne. Ta funkcja zwiększa odporność Edge Microgateway. Umożliwia uruchamianie instancji mikrobramy i ich działanie bez konieczności komunikowania się z Apigee Edge. Więcej informacji znajdziesz w sekcji Korzystanie z synchronizatora.

    Funkcja synchronizacji jest obecnie obsługiwana przez Redis 5.0.x.

Wersja 3.0.x

Poprawki błędów i ulepszenia w wersji 3.0.x

3.0.10

W piątek 8 listopada opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.0.10. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.0.10 3.0.8 3.0.8 3.0.11 3.0.8

Poprawki błędów i ulepszenia:

  • 142677575 – Dokonano aktualizacji funkcji, dzięki czemu dopasowanie wzorców ścieżek zasobów używanych w usługach interfejsu API dla Edge Microgateway było teraz zgodne z dopasowaniem ścieżek zasobów używanym przez Apigee Edge zgodnie z opisem w sekcji Konfigurowanie działania ścieżki zasobu „/”, „/*” i „/**”.

    Uwaga: jeśli używasz złożonego wzorca zasobów, takiego jak /*/2/**, musisz dodać serwer proxy edgemicro_auth do samodzielnej usługi API. Następnie musisz dodać tę usługę w aplikacji dewelopera na serwerze proxy, jak pokazano na tym zrzucie ekranu:

    alt_text

    Uwaga: właściwość konfiguracji features.isSingleForwardSlashBlockingEnabled, jak opisano w sekcji Konfigurowanie zachowania ścieżki zasobu „/”, „/*” i „/**”, nie jest obsługiwana w przypadku Edge Microgateway.

  • 143740696 – zmieniła się struktura konfiguracji quotas (zobacz też informacje o wersji 3.0.9). Właściwość quotas służy do konfigurowania wtyczki limitów. Zmieniono strukturę, aby zwiększyć przejrzystość elementów konfiguracji. Aby skonfigurować wtyczkę limitu, użyj konfiguracji YAML podanej poniżej. Zwróć uwagę, że właściwość konfiguracji nosi nazwę quotas. Szczegółowe informacje o poszczególnych właściwościach konfiguracji quotas znajdziesz w sekcji Opcje konfiguracji limitu.

    edgemicro:
      home: ../gateway
      port: 8000
      max_connections: -1
      max_connections_hard: -1
      logging:
        level: info
        dir: /var/tmp
        stats_log_interval: 60
      plugins:
        dir: ../plugins
        sequence:
          - oauth
          - quota
    quotas:
      bufferSize:
        hour: 20000
        minute: 500
        default: 10000
      useDebugMpId: true
      failOpen: true
    ...
  • 141750056 – Dodaliśmy nową funkcję, która pozwala używać Redis jako magazynu kopii zapasowej limitu. Jeśli useRedis ma wartość prawda, używany moduł volos-quota-redis. Jeśli ma wartość prawda, limit jest ograniczony tylko do tych instancji Edge Microgateway, które łączą się z Redis. Jeśli ma wartość false, moduł volos-quota-apigee jest używany jako baza backendu, a licznik limitu jest globalny. Szczegółowe informacje znajdziesz w sekcji Opcje konfiguracji limitu. Przykład:
    edgemicro:
    ...
    quotas:
      useRedis: true
      redisHost: localhost
      redisPort: 6379
      redisDb: 1
  • 140574210 – domyślny czas ważności tokenów wygenerowanych przez serwer proxy edgemicro-auth został zmieniony z 10 8 000 milisekund (1,8 minuty) na 1800 sekund (30 minut).
  • 143551282 – Aby obsługiwać organizacje z włączoną obsługą SAML, polecenie edgemicro genkeys zostało zaktualizowane o parametr ‑‑token. Ten parametr umożliwia uwierzytelnianie z użyciem tokena OAuth zamiast nazwy użytkownika i hasła. Więcej informacji znajdziesz w sekcji o generowaniu kluczy.

3.0.9

W piątek 11 października opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.0.9. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.0.9 3.0.7 3.0.7 3.0.10 3.0.7

Poprawki błędów i ulepszenia:

  • 141989374 – Do wtyczki limitu dodano nową funkcję „nieukończenia otwierania”. Gdy ta funkcja jest włączona i jeśli wystąpi błąd przetwarzania limitu lub żądanie „zastosowania limitu” do Edge nie zaktualizuje zdalnych liczników limitów, limit będzie przetwarzany na podstawie liczników lokalnych tylko do następnej udanej synchronizacji limitów zdalnych. W obu tych przypadkach w obiekcie żądania jest ustawiona flaga quota-failed-open.

    Aby włączyć funkcję nieudanego otwarcia limitu, ustaw tę konfigurację:

    quotas :
     failOpen : true

    Uwaga: Oprócz tego nazwa flagi obiektu żądania fail-open wtyczki OAuth została zmieniona na oauth-failed-open.

  • 142093764 – Wprowadzono zmianę konfiguracji serwera proxy edgemicro-auth, aby zapobiec przekroczeniu limitu. Zmiana polega na ustawieniu typu limitu na calendar. Aby skorzystać z tego ulepszenia, musisz zaktualizować edgemicro-auth do wersji 3.0.7 lub nowszej.
  • 142520568 – Dodaliśmy nową funkcję, która umożliwia logowanie identyfikatora MP (procesora wiadomości) w odpowiedziach dotyczących limitu. Aby korzystać z tej funkcji, musisz zaktualizować serwer proxy edgemicro-auth do wersji 3.0.7 lub nowszej i ustawić tę konfigurację:
    quotas:
      useDebugMpId: true

    Gdy ustawiona jest wartość useDebugMpId, odpowiedzi dotyczące limitu z Edge będą zawierać identyfikator MP i będą rejestrowane przez Edge Microgateway. Na przykład:

    {
        "allowed": 20,
        "used": 3,
        "exceeded": 0,
        "available": 17,
        "expiryTime": 1570748640000,
        "timestamp": 1570748580323,
        "debugMpId": "6a12dd72-5c8a-4d39-b51d-2c64f953de6a"
    }

3.0.8

W czwartek 26 września opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.0.8. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.0.8 3.0.6 3.0.6 3.0.9 3.0.6

Poprawki błędów i ulepszenia:

  • 140025210 – Dodano nową funkcję „Nieustannie otwierana”. Ta funkcja umożliwia kontynuowanie przetwarzania przez interfejs API, jeśli nie można odświeżyć wygasłego tokena JWT z powodu błędu połączenia, który uniemożliwia pomyślne wywołanie weryfikacji klucza interfejsu API do serwera proxy edgemicro-auth.

    Ta funkcja pozwala ustawić okres prolongaty, w którym stary token pozostanie w pamięci podręcznej i będzie ponownie używany do zakończenia tego okresu. Ta funkcja umożliwia Edge Microgateway kontynuowanie przetwarzania żądań w przypadku tymczasowej awarii połączenia. Gdy połączenie zostanie wznowione i uda się wykonać wywołanie weryfikacji klucza interfejsu API, nowy token JWT zostanie pobrany i zastąpi stary token JWT w pamięci podręcznej.

    Aby skonfigurować nową funkcję „otwarcia bez błędów”, wykonaj te czynności:

    1. Ustaw te właściwości w stanie oauth w pliku konfiguracji Edge Microgateway:
      oauth:
        failOpen: true
        failopenGraceInterval: time_in_seconds
        cacheKey: true
        ...

      Na przykład:

      oauth:
        failOpen: true
        failopenGraceInterval: 5
        cacheKey: true
        ...

      W tym przykładzie stary token będzie używany przez 5 sekund, jeśli nie będzie można go odświeżyć z powodu problemu z połączeniem. Po 5 sekundach zostanie zwrócony błąd uwierzytelniania.

  • 141168968 – wprowadzono zmiany, aby uwzględniać parametr correlation_id we wszystkich danych wyjściowych logu wtyczki. Ponadto w razie potrzeby poziomy rejestrowania niektórych logów zostały zmienione na error.
  • 140193349 – Dokonano aktualizacji serwera proxy edgemicro-auth, aby wymagać weryfikacji klucza i tajnego klucza Edge Microgateway przy każdym żądaniu weryfikacji klucza interfejsu API. Zaktualizowaliśmy Edge Microgateway, aby zawsze wysyłała klucz i obiekt tajny przy każdym żądaniu weryfikacji klucza interfejsu API. Ta zmiana uniemożliwia klientom uzyskanie tokena JWT tylko przy użyciu klucza interfejsu API.
  • 140090250 – Zaktualizowano opcję dodawania rejestrowania diagnostycznego na potrzeby przetwarzania limitu. Dzięki tej zmianie można teraz skorelować dane wyjściowe logów czasu z pozostałymi logami Edge Microgateway.

3.0.7

W czwartek 12 września opublikowaliśmy następujące poprawki i ulepszenia w Edge microgateway.

Wersje komponentów:

W tabeli poniżej znajdziesz numery wersji poszczególnych projektów komponentów powiązanych z Edge Microgateway 3.0.7. Każdy komponent to osobny projekt, więc numery wersji mogą nie być zgodne z główną wersją usługi:

microgateway rdzeń config wtyczki edgeauth
3.0.7 3.0.5 3.0.5 3.0.8 3.0.5

Poprawki błędów i ulepszenia:

  • 140075602 – Dokonano aktualizacji wtyczki OAuth tak, aby w razie potrzeby zwracała kod stanu 5xx. Wcześniej wtyczka zwracała tylko kody stanu 4xx (poza 200 przypadkami). Teraz w przypadku każdej odpowiedzi na wiadomość inną niż 200 zwracany jest dokładny kod 4xx lub 5xx, w zależności od błędu.

    Ta funkcja jest domyślnie wyłączona. Aby włączyć tę funkcję, dodaj właściwość oauth.useUpstreamResponse: true do konfiguracji Edge Microgateway. Na przykład:

    oauth:
      allowNoAuthorization: false
      allowInvalidAuthorization: false
      gracePeriod: 10
      useUpstreamResponse: true
  • 140090623 – w wersji 3.0.6 dodaliśmy nową właściwość konfiguracji: quota.quotaUri. Ustaw tę właściwość konfiguracji, jeśli chcesz zarządzać limitami przez serwer proxy edgemicro-auth wdrożony w organizacji. Jeśli ta właściwość nie jest ustawiona, punkt końcowy limitu domyślnie ustawia się na wewnętrzny punkt końcowy Edge Microgateway. Przykład:
    edge_config:
      quotaUri: https://%s-%s.apigee.net/edgemicro-auth

    W wersji 3.0.7 zaktualizowano edgemicro-auth, aby umożliwić akceptowanie nowej konfiguracji. Aby używać właściwości quotaUri, musisz uaktualnić serwer proxy edgemicro-auth do najnowszej wersji. Więcej informacji znajdziesz w sekcji o uaktualnianiu serwera proxy Edgemicro-auth.

  • 140470888 – Do wywołań limitów dodano nagłówek autoryzacji w celu zapewnienia uwierzytelniania. Zmodyfikowano też serwer proxy edgemicro-auth, aby usunąć słowo „organizacja” z identyfikatora limitu. Punkt końcowy limitu znajduje się w organizacji klienta, więc identyfikator limitu nie jest już potrzebny.
  • 140823165 – nazwa właściwości:
    edgemicro:
        keepAliveTimeout

    został nieprawidłowo udokumentowany w wersji 3.0.6. Prawidłowa nazwa właściwości to:

    edgemicro:
        keep_alive_timeout
  • 139526406 – Naprawiono błąd polegający na tym, że w przypadku aplikacji dewelopera występowała nieprawidłowa liczba usług. Limit jest teraz prawidłowo egzekwowany w przypadku każdej usługi w aplikacji, która zawiera wiele usług. Kombinacja „appName” i „productName” jest używana jako identyfikator limitu.

3.0.6

W czwartek 29 sierpnia opublikowaliśmy następujące poprawki i ulepszenia w Edge microgateway.

  • 138633700 – dodano nową właściwość konfiguracji: keepAliveTimeout. Ta właściwość umożliwia ustawienie czasu oczekiwania na Edge Microgateway (w milisekundach). (Domyślnie: 5000 milisekund).

    Na przykład:

    edgemicro:
      keep_alive_timeout: 600
  • 140090623 – dodano nową właściwość konfiguracji: quotaUri. Ustaw tę właściwość konfiguracji, jeśli chcesz zarządzać limitami przez serwer proxy edgemicro-auth wdrożony w organizacji. Jeśli ta właściwość nie jest ustawiona, domyślnie punkt końcowy limitu to wewnętrzny punkt końcowy Edge Microgateway. Przykład:
    edge_config:
      quotaUri: https://your_org-your_env.apigee.net/edgemicro-auth
    

    Aby korzystać z tej funkcji, musisz najpierw wdrożyć w swojej organizacji najnowszą wersję serwera proxy edgemicro-auth. Więcej informacji znajdziesz w artykule o uaktualnianiu serwera proxy uwierzytelniania Edgemicro.

  • 138722809 – dodano nową właściwość konfiguracji: stack_trace. Ta właściwość pozwala kontrolować, czy zrzuty stosu mają być wyświetlane w plikach logów. Przykład:
    stack_trace: false

    Jeśli stack_trace ma wartość true, zrzut stosu będzie wydrukowany w logach. Jeśli ma wartość false, zrzut stosu nie będzie drukowany w logach.

3.0.5

W czwartek 15 sierpnia opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Naprawione błędy
  • 139005279 – naprawiono problem, który powodował, że polecenie edgemicro status nie zwracało odpowiedniej liczby procesów instancji roboczych.
  • 138437710 – usunięto problem w klasie ExitCounter, który uniemożliwiał zapisanie odpowiedniego logu.
Ogólne ulepszenia komunikatów logu
  • 139064652 – Dodano możliwość dodawania poziomów rejestrowania trace i debug dla logów zdarzeń i logów systemowych. Obecnie dodaliśmy tylko możliwość dodawania tych poziomów rejestrowania. Obecnie dostępne poziomy logu to info, warn i error.
  • 139064616 – Dane wyjściowe dziennika zostały ustandaryzowane dla wszystkich instrukcji dziennika w konsoli. Instrukcje logowania w konsoli zawierają teraz te atrybuty:
    • Sygnatura czasowa
    • Nazwa komponentu
    • Identyfikator procesu
    • Komunikat dziennika konsoli
Udoskonalenia klucza JWT i komunikatów logu obiektu tajnego
  • 138413755 – Ulepszenie klucza JWT i komunikatów logów powiązanych z obiektem tajnym dla tych poleceń interfejsu wiersza poleceń: cert,Verify, upgradekvm, token, genkeys, cancelkey, rotkey i configure.
Usprawnienie wyświetlania komunikatów o błędzie dotyczących czasu oczekiwania i odmowy połączenia
  • 138413577 – Dodaj i ulepsz obsługę błędów związanych z limitami czasu usługi backendu.
  • 138413303 – Dodaj i ulepsz obsługę błędów związanych z limitami czasu odpowiedzi i gniazda.
  • 138414116 – Dodaj i ulepsz obsługę błędów związanych z odmową połączenia.

3.0.4

W czwartek 1 sierpnia opublikowaliśmy następujące poprawki i ulepszenia w Edge microgateway.

  • 134445926 – Ulepszenia wewnętrznego uwierzytelniania Edge Microgateway.
  • 137582169 – Rozwiązaliśmy problem polegający na uruchamianiu się niechcianych procesów. Dodatkowe procesy powodowały ponowne załadowanie wtyczek i wykorzystanie nadmiernej ilości pamięci. Edge Microgateway teraz zachowuje liczbę procesów nieprzekraczającą oczekiwanego limitu.
  • 137768774 – Ulepszenia komunikatów logu:
    • Wyczyszczono dzienniki transakcji (żądań).
    • W razie potrzeby dodaliśmy więcej komunikatów logu.
    • Komunikaty logu transakcji (żądań) zostały przeniesione z danych wyjściowych konsoli do odpowiedniego pliku logu.
    • Zaktualizowano logi konsoli, aby korzystać ze scentralizowanej funkcji logowania.
  • 138321133, 138320563 – Podstawowa zmiana wewnętrzna bufora limitów, która umożliwi w przyszłości zwiększenie limitów.

3.0.3

We wtorek 23 lipca opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

  • Ulepszenia rejestrowania: istniejące logi środowiska wykonawczego korzystają z nowej funkcji eventLog(), która przechwytuje i rejestruje dane środowiska wykonawczego w spójnym formacie. Informacje logu obejmują:
    • Sygnatura czasowa (ISO 8601: RRRR-MM-DDTHH:mm:ss.sssZ).
    • Poziom rejestrowania (błąd, ostrzeżenie lub informacje).
    • Nazwa hosta – nazwa hosta żądania z nagłówka żądania.
    • Identyfikator procesu – jeśli korzystasz z klastra procesów Node.js, jest to identyfikator procesu, w którym wystąpiło logowanie.
    • Nazwa organizacji w Apigee.
    • Nazwa środowiska w organizacji.
    • Nazwa serwera proxy interfejsu API.
    • Adres IP klienta.
    • ClientId.
    • Identyfikator korelacji (obecnie nie jest ustawiony).
    • Nazwa komponentu Edge Microgateway.
    • Komunikat niestandardowy – niektóre obiekty mogą drukować dodatkowe informacje przekazywane do tej właściwości błędu.
    • Metoda żądania (w przypadku żądania HTTP).
    • Kod stanu odpowiedzi (w przypadku żądania HTTP).
    • Komunikat o błędzie.
    • Kod błędu – jeśli obiekt zawiera kod błędu, jest on wyświetlany w tej właściwości.
    • Czas tworzenia.
    • Znacznik końca wiersza w systemie operacyjnym.

    Wartości właściwości null skutkują pustymi nawiasami kwadratowymi, [].

    Poniższy przykład przedstawia format logu:

    Timestamp [level][hostname][ProcessId][Org][Environment][APIProxy][ClientIp][ClientId][][component][customMessage][reqMethod][respStatusCode][errMessage][errCode][timeTaken]

    (137770055)

  • Wydajność: usługi API nie były filtrowane według środowiska. Rozwiązaliśmy ten problem. (135038879)
  • Różne funkcjonalne integracje testów i poprawa jakości kodu.

3.0.2

W środę 3 lipca 2019 r. opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

Jakość kodu – kod został sprawdzony pod kątem jakości i wprowadzono w nim zmiany, aby spełniał standardy jakości wymagane przez użytkowników. Naprawiliśmy błędy związane z jakością kodu i ostrzeżenia związane z JSHint. W rezultacie wykryto i naprawiliśmy niektóre rzeczywiste błędy w kodzie. Ten proces został poddany wszystkim modułom Apigee Edge Microgateway. Zobacz zobowiązania na 28 czerwca i 2 lipca dotyczące microgateway-config, microgateway-core, microgateway-plugins i microgateway. Wszystkie moduły ze zmianami w jakości kodu zostały przetestowane przy użyciu wewnętrznych narzędzi weryfikujących wykonanie Edge Microgateway na potrzeby przypadków użycia klientów.

3.0.1

W piątek 21 czerwca 2019 r. opublikowaliśmy następujące poprawki i ulepszenia w Edge Microgateway.

  • 134834551 – Zmiana obsługiwanych wersji Node.js dla Edge Microgateway
    (Obsługiwane wersje Node.js: 8 i 12; wersje 7, 9 i 11 to wersje eksperymentalne)
  • 134751883 – Edge Microgateway ulega awarii przy ponownym ładowaniu przy załadowaniu
  • 134518428 – punkt końcowy usług Edge Microgateway zwraca wartość 5XX, jeśli wzorzec filtra jest nieprawidłowy
  • 135113408 – instancje robocze powinny uruchomić się ponownie, jeśli nieoczekiwanie się zakończą
  • 134945852 – tokenTokenCacheSize nie jest używany we wtyczce OAuth
  • 134947757 – Ustaw wartość CacheTTL we wtyczce OAuth
  • 135445171 – Obliczenie okresu prolongaty w OAuth jest nieprawidłowe
  • Użyj modułu memored dostępnego w ramach instalacji Edge Microgateway
  • 135367906 – Audyt bezpieczeństwa

Wersja 2.5.x

Nowe funkcje i ulepszenia w wersji 2.5.x

(Poprawiono 38.02.2019, 07.06.2019)

Nieprawidłowo sformatowane tokeny JWT mogą spowodować awarię instancji roboczych podczas korzystania z pamięci podręcznej tokenów. Poprawiono ją w module wtyczek mikrobramy na krawędziach. (b/134672029)

(Dodano 2.5.37) Dodaj opcję interfejsu wiersza poleceń edgemicro-cert -t

Opcja edgemicro cert -t umożliwia określenie tokena OAuth do uwierzytelniania interfejsów API zarządzania. Zobacz też Zarządzanie certyfikatami.

(Dodano 2.5.35) Dodano obsługę debugowania Edge Microgateway za pomocą edgemicroctl

Flagi mgdebug możesz używać razem z elementem edgemicroctl. Zapoznaj się też z zadaniami integracji Kubernetes.

(Dodano 2.5.35) Włącz kompilację Windows dla edgemicroctl

(Dodano 2.5.31) Nowy interfejs Edgemicro-auth/token API

Dodano nowy interfejs API Edgemicro-auth/token API, który umożliwia przekazanie klienta/klucza jako nagłówka podstawowej autoryzacji zakodowanej w standardzie Base64, a jako parametru formularza – grant_type. Zobacz Bezpośrednie uzyskiwanie tokenów okaziciela.

(Poprawiono 2.5.31) Konfiguracja prywatna nie respektuje flagi tokena

Rozwiązaliśmy problem, który powodował, że konfiguracja Edge Microgateway tak, aby używała tokena dostępu OAuth2 w Edge dla chmury prywatnej, nie działała prawidłowo (token nie był respektowany).

Docker: obsługa certyfikatów podpisanych samodzielnie

(Dodano 2.5.29) Jeśli używasz urzędu certyfikacji, który nie jest domyślnie zaufany w Node.js, możesz użyć parametru NODE_EXTRA_CA_CERTS podczas uruchamiania kontenera Dockera z Edge Microgateway. Więcej informacji znajdziesz w artykule na temat używania urzędu certyfikacji, który nie jest zaufany przez Node.js.

Docker: obsługa TLS

(Dodano wersję 2.5.29) Edge Microgateway uruchomiona w kontenerze Docker obsługuje teraz protokół TLS w przypadku żądań przychodzących do serwera Edge Microgateway (żądania w kierunku północnym) oraz żądań wychodzących z Edge Microgateway do aplikacji docelowej (żądania wychodzące z aplikacji południowej).

Poniższe przykłady szczegółowo wyjaśniają, jak skonfigurować te konfiguracje TLS:

Z tych przykładów dowiesz się, jak używać punktu podłączania kontenera /opt/apigee/.edgemicro do wczytywania certyfikatów, do których odwołuje się plik konfiguracji Edge Microgateway.

Docker: obsługa przekazywania żądań przez serwer proxy

(Dodano 2.5.27) Jeśli w kontenerze Dockera uruchamiasz Edge Microgateway, możesz użyć tych opcji, aby kontrolować zachowanie serwera proxy, gdy mikrobrama działa za zaporą sieciową:

  • HTTP_PROXY
  • HTTPS_PROXY
  • NO_PROXY

Więcej informacji znajdziesz w artykule Uruchamianie Edge Micro jako kontenera Dockera.

Docker: zaktualizowane instrukcje dotyczące wtyczki

(Dodano 2.5.27) Jeśli uruchomisz Edge Microgateway w kontenerze Dockera, będziesz mieć teraz 2 możliwości wdrażania wtyczek na 2 sposoby. Jedną z możliwości jest użycie punktu podłączania Dockera. Druga opcja istniała wcześniej i w zasadzie się nie zmieniła. Plik Dockerfile został jednak zaktualizowany. Szczegółowe informacje znajdziesz tutaj:

Nowa obsługa tokena OAuth na potrzeby polecenia uaktualniania KVM

(Dodano 2.5.27) Możesz użyć tokena OAuth w poleceniu upgradekvm. Więcej informacji znajdziesz w artykule o uaktualnianiu KVM.

Segregowanie interfejsów API w Edge Analytics

(Dodano 2.5.26) Nowe flagi wtyczek Analytics umożliwiają agregację określonej ścieżki interfejsu API, dzięki czemu jest ona wyświetlana jako oddzielny serwer proxy w panelach informacyjnych Edge Analytics. Możesz na przykład segregować interfejsy API kontroli stanu, aby uniknąć ich pomylenia z rzeczywistymi wywołaniami interfejsu API. Więcej informacji znajdziesz w artykule o wykluczaniu ścieżek z statystyk.

Konfigurowanie lokalnego serwera proxy

(Dodano wersję 2.5.25) Korzystając z lokalnego serwera proxy, nie musisz ręcznie tworzyć serwera proxy rozpoznającego mikrobramę w Apigee Edge. Zamiast tego mikrobrama będzie używać ścieżki bazowej lokalnego serwera proxy. Więcej informacji znajdziesz w artykule o korzystaniu z lokalnego trybu proxy.

Korzystanie z trybu niezależnego

(Dodano 2.5.25) Możesz uruchomić Edge Microgateway odłączoną całkowicie od dowolnej zależności Apigee Edge. Ten scenariusz, nazywany trybem samodzielnym, umożliwia uruchomienie i przetestowanie Edge Microgateway bez połączenia z internetem. Zobacz Uruchamianie Edge Microgateway w trybie samodzielnym.

Unieważnianie kluczy

(Dodano 2.5.19) Dodano nowe polecenie interfejsu wiersza poleceń unieważniające klucz i tajne dane logowania dla konfiguracji Edge Microgateway.

edgemicro revokekeys -o [organization] -e [environment] -u [username] -k [key] -s [secret]
Więcej informacji znajdziesz w artykule Unieważnianie kluczy.

Obsługa Dockera

(Dodano 2.5.19) Możesz teraz pobrać najnowszą wersję Edge Microgateway jako obraz Dockera:

docker pull gcr.io/apigee-microgateway/edgemicro:latest

Zespół pomocy Kubernetes

(Dodano wersję 2.5.19) Możesz wdrożyć Edge Microgateway jako usługę lub jako bramę pomocniczą przed usługami wdrożonymi w klastrze Kubernetes. Zobacz: Omówienie integracji Edge Microgateway z Kubernetes.

Obsługa opcji układu węzłów TCP

(Dodano 2.5.16) Do konfiguracji Edge Micro dodano nowe ustawienie konfiguracji nodelay.

Domyślnie połączenia TCP używają algorytmu Nagle do buforowania danych przed ich wysłaniem. Ustawienie wartości nodelay na true wyłącza to zachowanie (dane od razu uruchamiają się po każdym wywołaniu parametru socket.write()). Więcej informacji znajdziesz w dokumentacji Node.js.

Aby włączyć usługę nodelay, zmodyfikuj plik konfiguracyjny Edge w ten sposób:

edgemicro:
  nodelay: true
  port: 8000
  max_connections: 1000
  config_change_poll_interval: 600
  logging:
    level: error
    dir: /var/tmp
    stats_log_interval: 60
    rotate_interval: 24

Nowe opcje interfejsu wiersza poleceń do ciągłego monitorowania

(Dodano 2.5.12) Do polecenia edgemicro forever dodano nowe parametry. Te parametry pozwalają określić lokalizację pliku forever.json i umożliwiają uruchamianie lub zatrzymywanie procesu w tle. Zobacz też Monitorowanie bezterminowe

ParametrOpis
-f, --fileOkreśla lokalizację pliku forever.json.
-a, --actionMoże to być start lub stop. Wartość domyślna to „start”.

Przykłady:

Aby zacząć bezterminowo:

edgemicro forever -f ~/mydir/forever.json -a start

Aby zakończyć na zawsze:

edgemicro forever -a stop

Rotacja klucza JWT

Dodano nową funkcję, która umożliwia rotację par kluczy publicznych i prywatnych używanych do generowania tokenów JWT używanych na potrzeby zabezpieczeń protokołu OAuth w Edge Microgateway. Zobacz Rotacja kluczy JWT.

Filtrowanie pobranych serwerów proxy interfejsów API

Domyślnie Edge Microgateway pobiera wszystkie serwery proxy w organizacji Edge, których nazwa zaczyna się od prefiksu „edgemicro_”. Możesz zmienić to ustawienie domyślne, aby pobierać serwery proxy, których nazwy pasują do wzorca. Zobacz Filtrowanie pobranych serwerów proxy.

Określanie produktów bez serwerów proxy interfejsu API

W Apigee Edge możesz utworzyć usługę API, która nie zawiera żadnych serwerów proxy API. Ta konfiguracja usługi umożliwia działanie klucza interfejsu API powiązanego z tą usługą z dowolnym serwerem proxy wdrożonym w organizacji. Od wersji 2.5.4 Edge Microgateway obsługuje tę konfigurację usługi.

Obsługa stałego monitorowania

Edge Microgateway zawiera plik forever.json, który możesz skonfigurować, aby kontrolować liczbę i częstotliwość ponownego uruchamiania Edge Microgateway. Ten plik konfiguruje usługę o nazwie forever-monitor, która automatycznie zarządza usługą Forever. Zobacz Monitorowanie bezterminowe.

Zarządzanie centralnym plikiem konfiguracji Edge Micro

Jeśli używasz wielu instancji Edge Microgateway, możesz zarządzać ich konfiguracjami z jednej lokalizacji. Aby to zrobić, określ punkt końcowy HTTP, z którego Edge Micro może pobrać swój plik konfiguracji. Zapoznaj się z informacjami o określaniu punktu końcowego pliku konfiguracji.

Obsługa opcji stałego interfejsu wiersza poleceń

(Dodano 2.5.8) Użyj polecenia edgemicro forever [package.json], aby określić lokalizację pliku forever.json. Przed dodaniem tego polecenia plik konfiguracji musiał znajdować się w katalogu głównym Edge Microgateway.

Na przykład:

edgemicro forever ~/mydir/forever.json

Dodano opcję configUrl powodującą ponowne załadowanie polecenia

(Dodano 2.5.8) Możesz teraz używać opcji --configUrl lub -u z poleceniem edgemicro reload.

Okres prolongaty w przypadku rozbieżności czasu JWT

(Dodano 2.5.7) Atrybut gracePeriod w konfiguracji OAuth pomaga zapobiegać błędom spowodowanym niewielkimi rozbieżnościami między zegarem systemowym a czasem not before (nbf) lub Issued At (iat) określonym w tokenie autoryzacji JWT. Ustaw w tym atrybucie liczbę sekund, aby umożliwić takie rozbieżności. Zobacz Atrybuty OAuth.

(Dodano 2.5.7) Atrybut gracePeriod w konfiguracji OAuth pomaga zapobiegać błędom spowodowanym niewielkimi rozbieżnościami między zegarem systemowym a czasem not before (nbf) lub Issued At (iat) określonym w tokenie autoryzacji JWT. Ustaw w tym atrybucie liczbę sekund, aby umożliwić takie rozbieżności. Zobacz Atrybuty OAuth.

Poprawki błędów w wersji 2.5.x

  • (Problem nr 236) Usuń literówkę podczas czyszczenia pamięci podręcznej.
  • (Problem nr 234) Awarie ponownego wczytywania dla Edge Microgateway 2.5.35.
  • (135) Podczas korzystania z opcji -v wystąpił błąd nieprawidłowego odniesienia do hosta wirtualnego („secure”). Ta poprawka modyfikuje serwer proxy uwierzytelniania Edgemicro przed wdrożeniem, aby zapewnić, że hosty wirtualne są dokładnie zgodne z wartością określoną we fladze „-v”. Oprócz tego możesz określić dowolną liczbę i dowolną nazwę hosta wirtualnego (nie jest już ograniczona do domyślnej i bezpiecznej).
  • (Problem 141) Polecenie edgemicro load nie obsługuje opcji -c pliku konfiguracji. Naprawiliśmy ten problem.
  • (Problem nr 142) Edge Microgateway zgłasza skargi na wycofywane kryptowaluty podczas instalacji. Naprawiliśmy ten problem.
  • (Problem nr 145) Limit nie działa z Edge Microgateway. Naprawiliśmy ten problem.
  • (Problem ze społecznością Apigee: https://community.apigee.com/questions/33149/emg-jwt-token-validated-against-both-api-proxies-a.html#answer-33336) Token JWT został zweryfikowany w odniesieniu do serwerów API interfejsu API i identyfikatora URI zasobu w OAUTH. Rozwiązaliśmy ten problem.
  • (Problem ze społecznością Apigee: https://community.apigee.com/questions/47846/microgateway-not-working-with-oauth.html) Microgateway nie obsługuje protokołu OAuth. Naprawiliśmy ten problem.
  • Naprawiono pidPath w systemie Windows.
  • (Problem nr 157) Problem, który powodował wyświetlenie następującego komunikatu o błędzie: Nie zdefiniowano atrybutu ReferenceError: deployProxyWithPassword.
  • (Problem 169) Aktualizowanie zależności Node.js (np. kontrola)
  • Serwer proxy edgemicro-auth korzysta teraz z zasad Edge JWT. Serwer proxy nie jest już zależny od środowiska Node.js do obsługi tokenów JWT.

Wersja 2.4.x

Nowe funkcje i ulepszenia, wersja 2.4.x

1. Ustaw niestandardowy alias dla serwera proxy uwierzytelniania Edgemicro (PR 116)

Możesz zmienić domyślną ścieżkę bazową serwera proxy edgemicro-auth. Domyślnie ścieżka bazowa to /edgemicro-auth. Aby ją zmienić, użyj flagi -x w poleceniu edgemicro configure.

Przykład:

edgemicro configure -x /mypath …


2. Obsługa symboli wieloznacznych w ścieżkach podstawowych (PR 77)

W ścieżce podstawowej serwera proxy edgemicro_* możesz użyć 1 lub więcej symboli wieloznacznych „*”. Na przykład ścieżka bazowa /team/*/members pozwala klientom wywoływać https://[host]/team/blue/members i https://[host]/team/green/members bez konieczności tworzenia nowych serwerów proxy interfejsu API do obsługi nowych zespołów. Pamiętaj, że parametr /**/ nie jest obsługiwany.

Ważne: Apigee NIE obsługuje użycia symbolu wieloznacznego „*” jako pierwszego elementu ścieżki podstawowej. Na przykład takie polecenie NIE jest obsługiwane: /*/search.

3. Dodano niestandardową ścieżkę konfiguracji do interfejsu wiersza poleceń dla konfiguracji Private Cloud (PR 99)

Domyślnie plik konfiguracji mikrobramy znajduje się w lokalizacji ./config/config.yaml. W poleceniach inicjowania, konfigurowania i uruchamiania możesz teraz określić niestandardową ścieżkę konfiguracji w wierszu poleceń za pomocą flag -c lub --configDir. Rozwiązaliśmy problem, który powodował, że niestandardowy katalog konfiguracji dla instalacji chmury prywatnej nie był rozpoznawany.

Przykład:

edgemicro start -o docs -e test -k abc123 -s xyz456 -c /home/microgateway/config

4. Uwzględnij zmienne *_PROXY (PR 61)

Jeśli Edge Microgateway jest zainstalowana za zaporą sieciową i nie może komunikować się z Apigee Edge w chmurze publicznej, masz 2 możliwości:

Opcja 1:

Pierwszą opcją jest ustawienie opcji Edgemicro: proxy_tunnel na wartość true w pliku konfiguracyjnym mikrobramy:

edge_config:
   proxy: http://10.224.16.85:3128
   proxy_tunnel: true

Gdy proxy_tunnel ma wartość true, Edge Microgateway używa metody połączenia HTTP do tunelowania żądań HTTP przez pojedyncze połączenie TCP. (To samo dzieje się, jeśli zmienne środowiskowe do konfigurowania serwera proxy mają włączony protokół TLS).

Opcja 2:

Druga opcja to określenie serwera proxy i ustawienie parametru proxy_tunnel na false w pliku konfiguracji mikrobramy. Na przykład:

edge_config:
   proxy: http://10.224.16.85:3128
   proxy_tunnel: false

W tym przypadku możesz ustawić następujące zmienne, aby kontrolować hosty dla każdego serwera proxy HTTP, którego chcesz używać lub które hosty nie powinny obsługiwać serwerów proxy Edge Microgateway: HTTP_PROXY, HTTPS_PROXY i NO_PROXY. Możesz ustawić NO_PROXY jako listę rozdzielonych przecinkami domen, do których Edge Microgateway nie ma serwera proxy. Na przykład:

export HTTP_PROXY='http://localhost:3786'
export HTTPS_PROXY='https://localhost:3786'

Więcej informacji o tych zmiennych znajdziesz w tych artykułach:

https://www.npmjs.com/package/request#controlling-proxy-behaviour-using-environment-variables


5. Ustaw niestandardowy czas oczekiwania dla żądań docelowych (PR 57)

Możesz ustawić niestandardowy limit czasu żądań docelowych w tej konfiguracji:

edgemicro:
    request_timeout: 10

Limit czasu jest ustawiany w sekundach. Jeśli upłynie czas oczekiwania, Edge Microgateway wysyła w odpowiedzi kod stanu 504.

6. Uwzględniaj niestandardowe komunikaty o stanie HTTP w odpowiedzi docelowej (PR 53)

Edge Microgateway respektuje niestandardowe komunikaty o stanie HTTP ustawione w odpowiedzi docelowej. W poprzednich wersjach komunikaty o stanie wysyłane z środowiska docelowego zostały zastąpione wartościami domyślnymi środowiska Node.js.

7. Nagłówek X-Forwarded-For może ustawiać parametr client_ip na potrzeby analityki

Jeśli ta opcja jest dostępna, nagłówek X-Forwarded-For ustawi zmienną client_ip raportowaną w Edge Analytics. Ta funkcja pozwala poznać adres IP klienta, który wysłał żądanie do Edge Microgateway.

8. Zmiany dotyczące wtyczek OAuth

Wtyczka OAuth obsługuje weryfikację klucza interfejsu API i weryfikację tokena dostępu OAuth. Przed tą zmianą wtyczka akceptowała dowolną z tych form zabezpieczeń. Dzięki tej zmianie możesz zezwolić na używanie tylko jednego z tych modeli zabezpieczeń (zachowując zgodność wsteczną).

Wtyczki OAuth dodają 2 nowe flagi:

  • allowOAuthOnly – jeśli ustawisz wartość allowOAuthOnly, każdy interfejs API musi mieć nagłówek autoryzacji z tokenem dostępu okaziciela.

  • allowAPIKeyOnly – jeśli ustawisz wartość true, każdy interfejs API musi mieć nagłówek x-api-key (lub niestandardową lokalizację) z kluczem interfejsu API.

W pliku konfiguracji Edge Microgateway możesz ustawić te flagi w następujący sposób:

oauth:
    allowNoAuthorization: false
    allowInvalidAuthorization: false
    keep-authorization-header: false
    allowOAuthOnly: false
    allowAPIKeyOnly: false

9. Ulepszyliśmy serwer proxy uwierzytelniania Edgemicro (PR 40)

Ulepszyliśmy serwer proxy edgemicro-auth. Przed tymi zmianami serwer proxy przechowujeł klucze w zaszyfrowanym magazynie Edge Secure Store. Teraz serwer proxy przechowuje klucze w zaszyfrowanej mapie par klucz-wartość (KVM) Edge.

10. Przepisywanie domyślnego docelowego adresu URL we wtyczce (PR 74)

Możesz też zastąpić port docelowego punktu końcowego i wybrać HTTP lub HTTPS. Zmodyfikuj te zmienne w kodzie wtyczki: req.targetPort i req.targetSecure. Aby wybrać protokół HTTPS, ustaw req.targetSecure na wartość true, a w przypadku HTTP ustaw na false. Jeśli ustawisz req.targetSecure na wartość true, przeczytaj ten wątek dyskusji, aby uzyskać więcej informacji.

11. Wstępna obsługa uwierzytelniania tokenem OAuth (PR 125)

Możesz skonfigurować Edge Microgateway tak, aby do uwierzytelniania używała tokena OAuth zamiast nazwy użytkownika i hasła. Aby użyć tokena OAuth, użyj tego parametru w poleceniu edgemicro configure:

-t, --token <token>

Na przykład:

edgemicro configure -o docs -e test -t <your token>

Poprawki błędów w wersji 2.4.3

  • Rozwiązaliśmy problem, który powodował, że płatna organizacja była wymagana do prawidłowego uruchomienia serwera proxy uwierzytelniania Edgemicro. Teraz możesz używać Edge Microgateway również w organizacjach próbnych. (PR 5)
  • Rozwiązaliśmy problem polegający na tym, że przetwarzanie danych przez strumień nie zakończyło się, ale moduły obsługi końcowe i tak były wykonywane. Spowodowało to wysłanie częściowej odpowiedzi. (PR 71)
  • Rozwiązaliśmy problem, który powodował, że niestandardowy katalog konfiguracji dla instalacji chmury prywatnej nie był rozpoznawany. (PR 110)
  • Rozwiązaliśmy problem z dwukierunkowym protokołem SSL między klientem a mikrobramą Edge. (70 PR)
  • Rozwiązaliśmy problem, który powodował, że w ścieżce bazowej serwera proxy wymagany był końcowy ukośnik, aby weryfikacja klucza interfejsu API działała prawidłowo. Teraz ukośnik na końcu ścieżki bazowej nie jest wymagany. (PR 48)

Wersja 2.3.5

Nowe funkcje i ulepszenia w wersji 2.3.5

Filtrowanie serwera proxy

Możesz przefiltrować serwery proxy rozpoznające mikrobramy, które będzie przetwarzać instancja Edge Microgateway. Po uruchomieniu Edge Microgateway pobiera wszystkie rozpoznające mikrobramy w organizacji, z którą jest powiązana. Użyj tej konfiguracji, aby ograniczyć serwery proxy przetwarzane przez mikrobramę. Na przykład ta konfiguracja ogranicza serwery proxy przetwarzane przez mikrobramę do 3 serwerów: edgemicro_proxy-1, edgemicro_proxy-2 i edgemicro_proxy-3:

proxies:
  - edgemicro_proxy-1
  - edgemicro_proxy-2
  - edgemicro_proxy-3

Maskowanie danych Analytics

Nowa konfiguracja pozwala zapobiec wyświetlaniu informacji o ścieżce żądania w analityce Edge. Dodaj poniższy kod do konfiguracji mikrobramy, aby zamaskować identyfikator URI żądania lub ścieżkę żądania. Zwróć uwagę, że identyfikator URI składa się z nazwy hosta i ścieżki żądania.

analytics:
  mask_request_uri: 'string_to_mask'
  mask_request_path: 'string_to_mask'

Wersja 2.3.3

Nowe funkcje i ulepszenia w wersji 2.3.3

Poniżej znajdziesz opis nowych funkcji i ulepszeń wprowadzanych w tej wersji.

Wyłączanie automatycznego odpytywania zmian

Możesz wyłączyć automatyczne odpytywanie zmian, ustawiając ten atrybut w konfiguracji mikrobramy:

disabled_config_poll_interval: true

Domyślnie okresowe odpytywanie wykrywa wszystkie zmiany wprowadzone w Edge (zmiany usług, serwerów proxy rozpoznających mikrobramy itp.), a także zmiany wprowadzone w lokalnym pliku konfiguracji. Domyślny interwał odpytywania to 600 sekund (5 minut).

Zapisywanie docelowych adresów URL we wtyczkach

Możesz dynamicznie zastąpić domyślny docelowy URL we wtyczce, modyfikując w kodzie wtyczki te zmienne: req.targetHostname i req.targetPath.

Nowy podpis funkcji wtyczki

Dodano nowy podpis funkcji wtyczki, który udostępnia docelową odpowiedź jako argument. Ułatwia to wtyczkom dostęp do docelowej odpowiedzi.

function(sourceRequest, sourceResponse, targetResponse, data, cb)

Uproszczone domyślne dane wyjściowe rejestrowania

Domyślnie usługa logowania pomija teraz plik JSON z pobranymi serwerami proxy, produktami i tokenami JWT. Możesz zmienić ustawienie domyślne na wyświetlanie tych obiektów, ustawiając DEBUG=* podczas uruchamiania Edge Microgateway. Na przykład:

DEBUG=* edgemicro start -o docs -e test -k abc123 -s xyz456

Niestandardowa ścieżka konfiguracji została dodana do interfejsu wiersza poleceń

Domyślnie plik konfiguracji mikrobramy znajduje się w pliku ./config/config.yaml. W poleceniach inicjowania, konfigurowania i uruchamiania możesz teraz określić niestandardową ścieżkę konfiguracji w wierszu poleceń. Na przykład:

edgemicro start -o docs -e test -k abc123 -s xyz456 -c /home/microgateway/config

Poprawki błędów w wersji 2.3.3

  • Usunięto wyciek pamięci, który występował podczas dużej liczby żądań lub odpowiedzi.
  • Kolejność wykonywania wtyczki została naprawiona. Teraz działa w taki sposób, w jaki jest opisany w dokumentacji.
  • Wtyczka zbierająca żądania nie oczekuje już na żądania GET.
  • Rozwiązaliśmy problem we wtyczce zbierania odpowiedzi, w wyniku której brak treści odpowiedzi powodował błędy.

Wersja 2.3.1

Uwagi dotyczące instalacji

Niektóre poprzednie wersje Edge Microgateway umożliwiają zainstalowanie oprogramowania przez pobranie pliku ZIP. Te pliki ZIP nie są już obsługiwane. Aby zainstalować Edge Microgateway, musisz użyć:

npm install -g edgemicro

Więcej informacji znajdziesz w temacie dotyczącym instalacji.

Nowe funkcje i ulepszenia w wersji 2.3.1

Poniżej znajdziesz opis nowych funkcji i ulepszeń wprowadzanych w tej wersji.

Filtrowanie serwerów proxy

Nowa konfiguracja umożliwia filtrowanie serwerów proxy, które zostaną załadowane przez Edge Microgateway po uruchomieniu. Wcześniej mikrobrama wczytywała wszystkie serwery proxy rozpoznające mikrobramę (serwery proxy o nazwie Edgemicro_*), które zostały pobrane z organizacji lub środowiska Edge określonego w poleceniu konfiguracji Edgemicro. Ta nowa funkcja umożliwia filtrowanie listy serwerów proxy, tak aby Edge Microgateway wczytuje tylko te określone przez Ciebie. Wystarczy dodać element proxy do pliku konfiguracyjnego mikrobramy w ten sposób:

edge micro:
proxies:
    - edgemicro_[name]
    - edgemicro_[name]
    ...

Załóżmy na przykład, że w swojej organizacji/środku Edge masz 50 serwerów proxy edgemicro_*, w tym te o nazwach edgemicro_foo i edgemicro_bar. Możesz skonfigurować mikrobramę tak, aby używała tylko tych 2 serwerów proxy:

edge micro:
proxies:
    - edgemicro_foo
    - edgemicro_bar

Po uruchomieniu mikrobrama będzie mogła wywoływać tylko określone serwery proxy. Każda próba wywołania innych serwerów proxy obsługujących mikrobramy pobrane z organizacji/środowiska Edge zakończy się błędem.

Ustawianie nagłówków żądań we wtyczkach

Istnieją 2 podstawowe wzorce, które należy wziąć pod uwagę, gdy chcesz dodać lub zmodyfikować docelowe nagłówki żądania: jeden, w którym żądanie przychodzące zawiera dane (jak w żądaniu POST), i drugi, w którym nie ma (jak w prostym żądaniu GET).

Przeanalizujmy przypadek, w którym przychodzące żądanie zawiera dane i chcesz ustawić nagłówki żądania w żądaniu docelowym. W poprzednich wersjach Edge Microgateway nie można było poprawnie ustawić nagłówków docelowych.

Kluczem do tego wzorca jest najpierw zgromadzenie wszystkich danych przychodzących od klienta. Następnie w funkcji onend_request() użyj nowej funkcji request.setOverrideHeader(name, value), aby dostosować nagłówki.

Oto przykładowy kod wtyczki, który pokazuje, jak to zrobić. Nagłówki ustawione w onend_request są wysyłane do miejsca docelowego:

module.exports.init = function(config, logger, stats) {


  function accumulate(req, data) {
    if (!req._chunks) req._chunks = [];
    req._chunks.push(data);
  }

  return {

    ondata_request: function(req, res, data, next) {
      if (data && data.length > 0) accumulate(req, data);
      next(null, null);
    },

    onend_request: function(req, res, data, next) {
      if (data && data.length > 0) accumulate(req, data);
      var content = Buffer.concat(req._chunks);
      delete req._chunks;
      req.setOverrideHeader('foo', 'bar');
      req.setOverrideHeader('content-length', content.length);
      next(null, content);
    },


    onerror_request: function(req, res, data, next) {
      next(null, null);
    }

  };

}

Jeśli żądanie nie zawiera danych, możesz ustawić nagłówki docelowe w module obsługi onrequest(). Ten wzorzec nie jest nowy – został już udokumentowany i był używany w przykładowych wtyczkach udostępnianych przez Edge Microgateway.

onrequest: function(req, res, next) {
      debug('plugin onrequest');
      req.headers['x-foo-request-id'] = "bar";
      req.headers['x-foo-request-start'] = Date.now();
      next();
    }

Funkcja ponownego załadowania bez przestoju

Po wprowadzeniu zmiany w konfiguracji Edge Microgateway możesz wczytać konfigurację bez usuwania żadnych wiadomości. Po tej zmianie Edge Microgateway zawsze uruchamia się w trybie klastra, a opcja --cluster została usunięta z polecenia edgemicro start.

Dodaliśmy też 3 nowe polecenia interfejsu wiersza poleceń. Polecenia te musisz uruchamiać w tym samym katalogu, w którym zostało wykonane polecenie startu Edgemicro:

  • edgemicro status – sprawdza, czy Edge Microgateway jest uruchomiona.
  • edgemicro stop – zatrzymuje klaster Edge Microgateway.
  • edgemicro reload – ponownie wczytuje konfigurację Edge Microgateway bez przestojów.

Automatyczne ponowne ładowanie konfiguracji z zerowym czasem przestoju

Edge Microgateway okresowo wczytuje nową konfigurację i wykonuje ponowne załadowanie, jeśli coś się zmieni. Odpytywanie wykrywa wszystkie zmiany wprowadzone w Edge (zmiany w usługach, serwerach proxy rozpoznających mikrobramy itp.), a także zmiany wprowadzone w lokalnym pliku konfiguracyjnym. Domyślny interwał odpytywania to 600 sekund (5 minut). Możesz zmienić wartość domyślną w pliku konfiguracyjnym mikrobramy w ten sposób:

edgemicro:
    config_change_poll_interval: [seconds]

Dodano informacje o wersji do interfejsu wiersza poleceń

Do interfejsu wiersza poleceń została dodana flaga --version. Aby pobrać aktualną wersję Edge Microgateway, użyj:

edgemicro --version

Nowe opcje SSL serwera Edge Microgateway

Edge Microgateway oprócz key i cert obsługuje teraz następujące opcje SSL serwera:

Option Opis
pfx Ścieżka do pliku pfx zawierającego klucz prywatny, certyfikat i certyfikaty urzędów certyfikacji klienta w formacie PFX.
passphrase Ciąg znaków zawierający hasło klucza prywatnego lub pliku PFX.
ca Ścieżka do pliku zawierającego listę zaufanych certyfikatów w formacie PEM.
ciphers Ciąg tekstowy opisujący mechanizmy szyfrowania, których należy użyć, oddzielony znakiem „:”.
rejectUnauthorized Jeśli ma wartość true (prawda), certyfikat serwera jest weryfikowany pod kątem listy urzędów certyfikacji. Jeśli weryfikacja się nie powiedzie, zostanie zwrócony błąd.
secureProtocol Metoda SSL, której chcesz użyć. Przykładem może być SSLv3_method, aby wymuszać protokół SSL do wersji 3.
servername Nazwa serwera dla rozszerzenia TLS SNI (Server Name Indication).

Wyślij pliki dziennika na stdout

Dane logu możesz wysyłać na standardowe dane wyjściowe za pomocą nowego ustawienia konfiguracji:

edgemicro:
  logging:
    to_console: true  

Zobacz Zarządzanie plikami dziennika.

Wersja 2.1.2

Poniżej znajdziesz opis nowych funkcji i ulepszeń wprowadzanych w tej wersji.

Zezwalaj na konfigurację przez niestandardowy punkt końcowy interfejsu API

Dostępne są nowe konfigurowalne punkty końcowe serwera proxy autoryzacji, które obsługują korzystanie z niestandardowej usługi uwierzytelniania. Te punkty końcowe to:

  • edgeconfig:verify_api_key_url
  • edgeconfig:products

Więcej informacji znajdziesz w artykule o korzystaniu z niestandardowej usługi uwierzytelniania.

Wersja 2.1.1

Poniżej znajdziesz opis nowych funkcji i ulepszeń wprowadzanych w tej wersji.

Wdrażaj serwer proxy uwierzytelniania zgodny na wielu platformach

Wprowadziliśmy ulepszenie, dzięki czemu polecenie używane do wdrażania serwera proxy autoryzacji Edge Microgateway na serwerze Edge jest zgodne z systemami Windows.

Wersja 2.1.0

Nowe funkcje i ulepszenia w wersji 21.0

Oto nowe funkcje i ulepszenia:

Określanie opcji SSL/TLS klienta

Możesz określić opcje klienta dla połączeń SSL/TSL z elementami docelowymi, używając nowego zestawu opcji konfiguracji. Zapoznaj się z artykułem Korzystanie z opcji SSL/TSL klienta.

Wersja 2.0.11

Uwagi dotyczące instalacji w wersji 2.0.11

Niektóre poprzednie wersje Edge Microgateway umożliwiają zainstalowanie oprogramowania przez pobranie pliku ZIP. Te pliki ZIP nie są już obsługiwane. Aby zainstalować Edge Microgateway, musisz użyć:

npm install -g edgemicro

Więcej informacji znajdziesz w temacie dotyczącym instalacji.

Nowe funkcje i ulepszenia w wersji 2.0.11

Oto nowe funkcje i ulepszenia:

Określanie portu podczas uruchamiania

Polecenie rozpoczęcia pozwala podać numer portu, który ma zastąpić port określony w pliku konfiguracji. Numer portu możesz też podać w zmiennej środowiskowej PORT. Więcej informacji znajdziesz w polecenie uruchamiania.

Opcjonalnie zachowuj nagłówki uwierzytelniania

Nowe ustawienie konfiguracji keepAuthHeader pozwala zachować nagłówek autoryzacji wysłany w żądaniu. Jeśli zasada ma wartość Prawda, nagłówek uwierzytelniania jest przekazywany do środowiska docelowego. Zobacz atrybuty OAuth.

Możliwość korzystania z niestandardowej usługi autoryzacji

Jeśli do uwierzytelniania chcesz używać własnej usługi niestandardowej, zmień wartość authUri w pliku konfiguracji Edge Microgateway, aby wskazywała Twoją usługę. Więcej informacji znajdziesz w artykule o korzystaniu z niestandardowej usługi uwierzytelniania.

Wersja 2.0.4

Edge Microgateway w wersji 2.0.4 została opublikowana 25 maja 2016 r.

Nowe funkcje i ulepszenia w wersji 2.0.4

Poniżej znajdziesz opis nowych funkcji i ulepszeń wprowadzanych w tej wersji.

Obsługa ścieżek zasobów w usługach

Edge Microgateway obsługuje teraz ścieżki zasobów w usługach. Ścieżki zasobów pozwalają ograniczyć dostęp do interfejsów API na podstawie sufiksu ścieżki serwera proxy. Szczegółowe informacje o tworzeniu usług i konfigurowaniu ścieżek zasobów znajdziesz w artykule Tworzenie usług API.

Obsługa globalnej instalacji npm

Możesz teraz zainstalować Edge Microgateway za pomocą opcji npm -g (globalnej). Szczegółowe informacje na temat tej opcji znajdziesz w dokumentacji npm.

Wersja 2.0.0

Edge Microgateway w wersji 2.0.0 została opublikowana 18 kwietnia 2016 r.

Nowe funkcje i ulepszenia w wersji 2.0.0

Poniżej znajdziesz opis nowych funkcji i ulepszeń wprowadzanych w tej wersji.

Serwer z jednym procesem

Edge Microgateway to teraz serwer z pojedynczym procesem. Nie korzysta już z modelu 2-procesowego, w którym jeden proces (nazywany wcześniej „agentem”) uruchamia Edge Microgateway, czyli drugi proces. Nowa architektura ułatwia automatyzację i konteneryzację.

Pliki konfiguracji z przestrzeniami nazw

Pliki konfiguracji mają teraz przestrzeń nazw z użyciem organizacji i środowiska, dzięki czemu na tym samym hoście może działać wiele instancji Microgateway. Pliki konfiguracji znajdziesz w katalogu ~/.edgemicro po uruchomieniu polecenia config Edge Microgateway.

Nowe zmienne środowiskowe

Dostępne są teraz 4 zmienne środowiskowe: EDGEMICRO_ORG, EDGEMICRO_ENV, EDGEMICRO_KEY i EDGEMICRO_SECRET. Jeśli ustawisz te zmienne w systemie, nie musisz określać ich wartości podczas konfigurowania i uruchamiania Edge Microgateway za pomocą interfejsu wiersza poleceń.

Konfiguracja z pamięci podręcznej

Edge Microgateway używa pliku konfiguracji w pamięci podręcznej w przypadku ponownego uruchomienia bez połączenia z Apigee Edge .

Tryb klastra

Dostępne są teraz opcje uruchamiania Edge Microgateway w trybie klastra. Tryb klastra umożliwia korzystanie z systemów wielordzeniowych. Mikrobrama wykorzystuje w tej funkcji moduł klastra Node.js. Szczegółowe informacje znajdziesz w dokumentacji Node.js.

Poprawki błędów w wersji 2.0.0

Cykl życia zdarzeń wtyczki prawidłowo obsługuje teraz kod asynchroniczny, który zawiera kod z nowym wywołaniem zwrotnym.

Wersja 1.1.2

Edge Microgateway 1.1.2 została opublikowana 14 marca 2016 r.

Nowe funkcje i ulepszenia w wersji 1.1.2

Poniżej znajdziesz opis nowych funkcji i ulepszeń wprowadzanych w tej wersji.

Poprawa wydajności

Edge Microgateway teraz prawidłowo używa agenta HTTP Node.js, aby zapewnić lepsze łączenie połączeń. Poprawia to wydajność i ogólną stabilność przy dużym obciążeniu.

Obsługa zdalnego debugera

Możesz skonfigurować Edge Microgateway tak, aby działała ze zdalnym debugerem, takim jak node-inspector.

Nowa lokalizacja pliku konfiguracyjnego

Po skonfigurowaniu Edge Microgateway plik agent/config/default.yaml zostanie skopiowany do ~./edgemicro/config.yaml.

Obrót pliku dziennika

Nowy atrybut konfiguracji pozwala określić interwał rotacji dla logów Edge Microgateway.

Poprawki błędów w wersji 1.1.2

Naprawiliśmy w wersji 1.1.2 poniższe błędy.

Opis
Objaśnienie w Javie dotyczące wewnętrznego serwera proxy Edgemicro używanego w lokalnym środowisku Edge używa teraz właściwego serwera MGMT.
Usuń zależności TypeScriptu z agenta.
Napraw błąd interfejsu wiersza poleceń podczas korzystania z opcji wdrażania Lean.
Napraw odwołanie do zależności logicznej certyfikatu.