Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X. info
Przegląd
W tym samouczku znajdziesz instrukcje, jak uruchomić instancję Edge Microgateway.
Po wykonaniu tych czynności będziesz mieć w pełni skonfigurowaną i działającą instalację Edge Microgateway, która będzie w stanie przetwarzać żądania interfejsu API. Skonfigurowane ustawienia przetestujesz, wykonując bezpieczne wywołania interfejsu API za pomocą Edge Microgateway do backendu. Dowiesz się też, jak dodać do Microgateway wtyczkę spike arrest.
Ten przewodnik jest podzielony na te części:
- Wymagania wstępne: instalacja Edge Microgateway
- Część 1. Konfigurowanie Edge Microgateway
- Część 2. Tworzenie encji w Apigee Edge
- Część 3. Obsługa Edge Microgateway
- Część 4. Secure Edge Microgateway
- Część 5. Dodaj wtyczkę Spike Arrest
- Część 6. Wyświetlanie danych Analytics w Apigee Edge
Warunek wstępny: zainstaluj Edge Microgateway
Postępuj zgodnie z instrukcjami w artykule Instalowanie Edge Microgateway. Po zakończeniu instalacji możesz wykonać czynności opisane w tym samouczku.
Po zakończeniu instalacji przejdź do następnej sekcji „Część 1. Konfigurowanie Edge Microgateway”.
Część 1. Konfigurowanie Edge Microgateway
W tej części użyjesz polecenia interfejsu wiersza poleceń, aby skonfigurować Edge Microgateway do komunikacji z Apigee Edge. Jeśli używasz Apigee Edge Cloud, wykonaj kroki konfiguracji Apigee Edge Cloud. Jeśli korzystasz z Apigee Private Cloud, wykonaj kroki dotyczące Apigee Edge Private Cloud.
Kroki konfiguracji Apigee Edge Cloud
Aby używać Edge Microgateway z Apigee Edge Cloud, wykonaj te czynności:
- Jeśli nie zostało to jeszcze zrobione, zainicjuj Edge Microgateway (ten krok wystarczy wykonać tylko raz):
edgemicro init
- (Opcjonalnie) Wyświetl pomoc dotyczącą polecenia edgemicro configure:
edgemicro configure -h
- Aby skonfigurować Edge Microgateway, wykonaj to polecenie:
edgemicro configure -o [org] -e [env] -u [username]
Gdzie:
orgto nazwa Twojej organizacji Edge (musisz być administratorem organizacji).envto środowisko w Twojej organizacji (np. testowe lub produkcyjne).usernameto adres e-mail powiązany z Twoim kontem Apigee.
Przykład
edgemicro configure -o docs -e test -u jdoe@example.com
Dane wyjściowe
./edgemicro configure -o docs -e test -u jdoe@apigee.com password: current nodejs version is v6.1.0 current edgemicro version is 2.2.3-beta password: file doesn't exist, setting up Give me a minute or two... this can take a while... App edgemicro-auth deployed. creating vault adding private_key adding public_key configuring host edgemicroservices-us-east-1.apigee.net for region us-east-1 saving configuration information to: /Home/.edgemicro/wwitman-test-config.yaml vault info: -----BEGIN CERTIFICATE----- MIICpDCCAYwCCQCaDpaTttaDANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDEwls b2NhbGhvc3QwHhcNMTYxAxMjA0NzIyWhcNMTYxMTAyMjA0NzIyWjAUMRIwEAYD VQQDEwlsb2NhbGhvcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDA YbtbsFe50GgBrI8QTih5yzxxxvCfdubGrLWmovwwCCFthno3u8lS54ekOL9jQu JTJsocJfNhZxvnXifDsCk5Muwx87Z/D0BYLw9ZhM8TMyA2MCkXgC6RfKT69IdJ jT3X+3D0s+apr3lACsDhgOfaeQfeHAm1SSwH/VemaJqdImGkQMtM8uscMDwG6k vBbCSNS+hh6ZH1m3tAkcKXqvj/E1hbrHNTWr+uiYFRByUzeo1I607daQD4Lxid il4Ng3hr3LC1gEzvobWgVyhQ2ovYB57T886H7dGghTnOUxLm2y/TwmQya+44SL JSsDwauArMF38cRKZZ7VAgMBAAEwDQYJKoZIhvcNAQELBQADEBAHwwu+gOn8Tq jKOYBTXtOX11HPMTxmyvZ/I57R4roE7Z/lXg/DXwbiFpFG2uamXNKq7yTDJH2i iiqdERZOGfv7TJMjRlxEnfVHoCV7UKguKq4zeeAEU2x55yFwpWNrarx0kMXRwI v3WgGfo2bimFQrCjDCNIkDKmYYt4SXIF5zUJmBWPCaK9aJoQb7ARXQO9s2zoOI XZ5bCUDbehQZ+6LyqC0hgDXiIZYy7R0j93yCbQgoHaHUMEprJEEjE24SHdsWBO nxGZxB20JLq5AHTm8lbZp7XtvbU0jVpxyrBo2/olFnmpvBVOq9eIp042IVD7nT J4rPejdK6C4= -----END CERTIFICATE----- The following credentials are required to start edge micro key: e88ec9d5da17cd88ca338d532b7c7a8c4f43ddd3da139d95955ab345af30352d secret: d7f64854eb6889d06b809dd7c161dba5eeba4a2657277fd819921bf992221a8f edgemicro configuration complete!
Kroki konfiguracji Apigee Private Cloud
Aby używać Edge Microgateway z Apigee Private Cloud:
- Wyświetla informacje pomocy dotyczące polecenia edgemicro private configure. W ten sposób możesz wydrukować pomoc dotyczącą dowolnego polecenia lub opcji polecenia interfejsu Edge Microgateway CLI.
edgemicro private configure -h
- Uruchom to polecenie. Wymaga to standardowych informacji o koncie Apigee Edge Private Cloud: nazwy organizacji, nazwy środowiska, nazwy użytkownika (adresu e-mail), hasła, adresu IP serwera zarządzania i adresu IP routera. Aby użyć tego polecenia, musisz być administratorem organizacji Edge:
edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]
Gdzie:
orgto nazwa Twojej organizacji Edge (musisz być administratorem organizacji).envto środowisko w Twojej organizacji (np. testowe lub produkcyjne).runtime_urlto adres URL środowiska wykonawczego instancji chmury prywatnej.mgmt_url– adres URL serwera zarządzania instancji chmury prywatnej.usernameto adres e-mail powiązany z Twoim kontem Apigee.-
virtual_hostto lista nazw hostów wirtualnych rozdzielonych przecinkami. Wartości domyślne todefault,secure.
Przykład
edgemicro private configure -o docs -e test -u jdoe@example.com -r http://192.162.52.106:9001 -m http://192.162.52.106:8080 -v default
Jeśli masz alias hosta wirtualnego myorg-test.mycompany.com, użyj polecenia takiego jak to:
edgemicro private configure -o docs -e test -u jdoe@example.com -r myorg-test.mycompany.com -m http://192.162.52.106:8080 -v default
Dane wyjściowe
delete cache config checking for previously deployed proxies configuring edgemicro internal proxy deploying edgemicro internal proxy deploying edgemicro-auth app copy auth app into tmp dir copy config into tmp deer Give me a minute or two... this can take a while... App edgemicro-auth added to your org. Now adding resources. checking org for existing vault creating vault adding private_key adding public_key configuring host http://192.168.52.106:9001 for region dc-1 saving configuration information to: /Users/ApigeeCorporation/.edgemicro/jdoe-test-config.yaml vault info: -----BEGIN CERTIFICATE----- MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWxKWBDP9o Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz pFkIxepyr/0= -----END CERTIFICATE----- The following credentials are required to start edge micro key: a3f8f3dfe39158fc3c50b274f0af2234246e0d5f6ea4dd09389b645147151ba3 secret: 3e9904802fb3c0e8ca408128a11119cf13546d54dac30ace944c097a726a1263 edgemicro configuration complete!
Sprawdzanie instalacji
Aby sprawdzić instalację, uruchom to polecenie. Jeśli nie zgłoszono żadnych błędów, wszystko jest prawidłowo skonfigurowane i możesz uruchomić Edge Microgateway.
edgemicro verify -o [org] -e [env] -k [key] -s [secret]
Gdzie:
orgto nazwa Twojej organizacji Edge (musisz być administratorem organizacji).envto środowisko w Twojej organizacji (np. testowe lub produkcyjne).keyto klucz zwrócony wcześniej przez polecenie configure.secretto klucz zwrócony wcześniej przez polecenie configure.
Przykład
edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f664ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0556d7132afbd03625bbd85dc34ebfefae4f23fbcb3c
Informacje o konfiguracji
Cała dotychczasowa konfiguracja umożliwia Edge Microgateway samodzielne uruchomienie w Apigee Edge. Po pomyślnym uruchomieniu Edge Microgateway pobiera z Apigee Edge ładunek z dodatkowymi informacjami o konfiguracji.
Do czego służą te informacje o konfiguracji? Jak się przekonamy w następnej części tego samouczka, po uruchomieniu Edge Microgateway musi otrzymać z Apigee Edge listę specjalnych proxy interfejsu API, które są zgodne z Edge Microgateway. W następnej części tego samouczka utworzysz serwer proxy obsługujący Microgateway. Edge Microgateway ogranicza klientów do wywoływania tylko interfejsów API, które są obsługiwane przez te serwery proxy interfejsu API obsługujące Microgateway. Klienci będą (domyślnie) musieli przedstawiać prawidłowy token zabezpieczający przy każdym wywołaniu. Więcej informacji o tych serwerach proxy znajdziesz w sekcji „Co musisz wiedzieć o serwerach proxy obsługujących Edge Microgateway” w Omówieniu Edge Microgateway.
Jako administrator organizacji Edge możesz wiedzieć, że serwery proxy obsługujące Edge Microgateway można dodawać do usług Edge tak samo jak inne serwery proxy. Korzystając z usług i aplikacji deweloperskich, możesz generować tokeny zabezpieczające dla klientów, aby kontrolować dostęp do interfejsów API wywoływanych przez Edge Microgateway. Wzorce są identyczne jak w przypadku pracy z dowolnymi proxy interfejsu API, produktami i aplikacjami deweloperskimi w Apigee Edge. Jeśli chcesz dowiedzieć się więcej o produktach, zacznij od artykułu Czym jest produkt API? w dokumentacji Edge.
Następnie pokażemy, jak tworzyć proxy obsługujące Edge Microgateway, a potem uruchomimy Edge Microgateway i przetestujemy konfigurację.
Część 2. Tworzenie encji w Apigee Edge
W tej części utworzysz na Edge te elementy:
- Serwer proxy obsługujący mikrobramę – jest to specjalny serwer proxy, który Edge Microgateway może wykryć podczas uruchamiania. Pełnomocnicy obsługujący mikrobramę mają konwencję nazewnictwa, której musisz przestrzegać: nazwa musi zaczynać się od znaku
edgemicro_. Na przykładedgemicro_hellolubedgemicro_userinfo. Po uruchomieniu Edge Microgateway pobiera z Edge listę serwerów proxy obsługujących mikrobramę z tej samej organizacji i środowiska Edge, które zostały określone podczas uruchamiania Edge Microgateway.
W przypadku każdego serwera proxy obsługującego mikrobramę Edge Microgateway pobiera docelowy adres URL serwera proxy i jego ścieżkę podstawową. Proxy obsługujące mikrobramę zapewniają też wygodny sposób łączenia danych analitycznych generowanych przez Edge Microgateway z proxy na platformie Edge. Mikrogateway obsługuje wywołania interfejsu API i asynchronicznie przesyła dane analityczne do Edge. Dane Analytics będą widoczne w interfejsie Edge Analytics pod nazwami serwerów proxy obsługujących mikrobramę, tak jak w przypadku innych serwerów proxy.
- Usługa API, programista i aplikacja programisty – Edge Microgateway używa usług API, programistów i aplikacji programistów, aby włączyć zabezpieczenia tokena dostępu OAuth2 lub klucza API. Po uruchomieniu Edge Microgateway pobiera wszystkie konfiguracje produktów z organizacji Apigee Edge. Używa tych informacji do weryfikowania wywołań interfejsu API wykonywanych za pomocą Edge Microgateway za pomocą kluczy interfejsu API lub tokenów dostępu OAuth2.
Więcej informacji: zobacz też „Co musisz wiedzieć o serwerach proxy obsługujących Edge Microgateway” w Omówieniu Edge Microgateway.
1. Tworzenie w Edge proxy interfejsu API obsługującego Edge Microgateway
- Zaloguj się w organizacji w Apigee Edge.
- Kliknij PRZEŁĄCZ NA KLASYCZNY, aby przejść do klasycznego interfejsu Edge.
- W menu u góry wybierz Interfejsy API > Proxy interfejsów API.
- Na stronie Proxy interfejsów API kliknij + API Proxy.
- W kreatorze tworzenia serwera proxy wybierz Serwer proxy zwrotny (najczęstszy).
- Kliknij Dalej.
- Na stronie z informacjami kreatora skonfiguruj te ustawienia: Wypełnij kreator dokładnie tak, jak pokazano poniżej:
- Nazwa proxy: edgemicro_hello
- Podstawowa ścieżka proxy: /hello
- Istniejący interfejs API: http://mocktarget.apigee.net/
- Kliknij Dalej.
- Na stronie Bezpieczeństwo kreatora wybierz Przekazywanie (brak).
- Kliknij Dalej.
- Na stronie Hosty wirtualne w kreatorze zaakceptuj ustawienia domyślne.
- Kliknij Dalej.
- Na stronie Tworzenie kreatora sprawdź ustawienia serwera proxy. Sprawdź, czy wybrane jest środowisko testowe.
- Kliknij Build and Deploy (Skompiluj i wdróż).
2. Tworzenie produktu
Utwórz produkt zawierający 2 proxy:
- Serwer proxy obsługujący mikrobramę: edgemicro_hello
- Serwer proxy uwierzytelniania zainstalowany przez Edge Microgateway: edgemicro-auth.
- W interfejsie Edge (wersja klasyczna) kliknij Opublikuj > Produkty.
- Na stronie Produkty kliknij + Produkt. Wypełnij stronę Szczegóły produktu w ten sposób:
- Nazwa: EdgeMicroTestProduct
- Wyświetlana nazwa: EdgeMicroTestProduct
- Środowisko: testowe i produkcyjne
- Dostęp: publiczny
- Key Approval Type (Typ zatwierdzenia klucza): Automatic (Automatyczne)
-
Zasoby:
- Serwer proxy interfejsu API: wybierz edgemicro_hello.
- Wersja: 1
- Ścieżka zasobu: /**
- Kliknij Importuj zasób.
- W sekcji Zasoby kliknij +API Proxy (Proxy interfejsu API).
- Wybierz edgemicro-auth.
- Kliknij Zapisz.
3. (Opcjonalnie) Tworzenie testowego konta dewelopera
Na potrzeby tego samouczka możesz użyć dowolnego dewelopera, aby przejść do następnego kroku, czyli utworzyć aplikację dewelopera. Jeśli jednak chcesz, możesz teraz utworzyć dewelopera testowego:
- Kliknij Opublikuj > Deweloperzy.
- Na stronie Usługi kliknij + Deweloper.
- Wypełnij okno, aby utworzyć dewelopera testu.
4. Tworzenie aplikacji dewelopera
Do wykonywania bezpiecznych wywołań interfejsu API za pomocą Edge Microgateway będziesz używać danych logowania klienta z tej aplikacji:
- Kliknij Opublikuj > Aplikacje dewelopera.
- Na stronie Aplikacje dewelopera kliknij + Aplikacja dewelopera.
- Wypełnij stronę aplikacji dewelopera w ten sposób:
- Nazwa: EdgeMicroTestApp
- Wyświetlana nazwa: EdgeMicroTestApp
- Deweloper: jeśli masz utworzonego dewelopera testowego, wybierz go. Możesz też użyć dowolnego dewelopera, który już istnieje.
-
Dane logowania:
- Wybierz Datę wygaśnięcia: Nigdy.
- Kliknij + Produkt i wybierz EdgeMicroTestProduct (utworzony przed chwilą produkt).
- Kliknij Zapisz.
- Wrócisz do strony z listą aplikacji dewelopera.
- Wybierz utworzoną aplikację EdgeMicroTestApp.
- Kliknij Pokaż obok pól Klucz klienta i Klucz tajny klienta.

Część 3. Obsługa Edge Microgateway
Po skonfigurowaniu Edge Microgateway i utworzeniu co najmniej jednego serwera proxy obsługującego Edge Microgateway w Edge możesz uruchomić Edge Microgateway. Serwer HTTP Edge Microgateway będzie działać na Twoim komputerze lokalnym, a wywołania interfejsu API będziesz kierować bezpośrednio do tego serwera.
1. Uruchamianie Edge Microgateway
Aby uruchomić Edge Microgateway, użyj polecenia edgemicro start.
- Upewnij się, że masz klucze, które zostały zwrócone wcześniej po uruchomieniu polecenia edgemicro configure. Dane wyjściowe wyglądały mniej więcej tak:
You need key and secret while starting edgemicro instance key: da4778e7c240a5d4585fc559eaba5083328828ac9f3a7f583e8b73e secret: 3aad7439708b4aeb38ee08e87189921ad00e6fc1ba8a8ae9f929ee2
- (Opcjonalnie) Wydrukuj informacje pomocy dotyczące polecenia
edgemicro start.
edgemicro start -h
- Aby uruchomić Edge Microgateway, wykonaj to polecenie:
edgemicro start -o [org] -e [env] -k [key] -s [secret]
Gdzie:
orgto nazwa Twojej organizacji Edge (musisz być administratorem organizacji).envto środowisko w Twojej organizacji (np. testowe lub produkcyjne).keyto klucz zwrócony wcześniej przez polecenie configure.secretto klucz zwrócony wcześniej przez polecenie configure.
Przykład
edgemicro start -o docs -e test -k 701e70e718ce6dc1880616b3c39177d64a88754d615c7a4e1f78b6181d000723 -s 05c14356e42d136b83dd135cf8a18531ff52d7299134677e30ef4e34ab0cc824
Dane wyjściowe
Polecenie start pobiera z Apigee Edge wiele informacji o konfiguracji (które przewijają się w oknie terminala). W danych wyjściowych zobaczysz listę serwerów proxy i usług obsługujących mikrobramy. Na końcu danych wyjściowych powinna pojawić się informacja podobna do tej:
... PROCESS PID : 9757 installed plugin from analytics installed plugin from oauth eb725020-a2b0-11e6-8a52-6de156e3a6e2 edge micro listening on port 8000 installed plugin from analytics installed plugin from oauth installed plugin from analytics installed plugin from oauth installed plugin from analytics installed plugin from oauth eb77ce60-a2b0-11e6-8a88-b96278c0c198 edge micro listening on port 8000 eb78b8c0-a2b0-11e6-bf36-717b986c91fe edge micro listening on port 8000 eb77f570-a2b0-11e6-883e-472b9104351e edge micro listening on port 8000
Co się stało?
Sprawdź terminal, w którym zostało wykonane polecenie edgemicro config. Przewijając standardowe dane wyjściowe w górę, możesz zauważyć, że polecenie pobiera z Apigee Edge ładunek informacji o konfiguracji Edge Microgateway. Są to między innymi:
- Klucz publiczny utworzony i przechowywany wcześniej w skarbcu Apigee.
- Reprezentacja JSON wszystkich proxy obsługujących Edge Microgateway, które znajdują się w organizacji lub środowisku. To wszystkie proxy, których nazwy zaczynają się od prefiksu edgemicro_.
- Reprezentacja JSON wszystkich produktów interfejsu API, które istnieją w organizacji lub środowisku.
Dzięki tym informacjom Edge Microgateway wie, które serwery proxy i ścieżki serwerów proxy może przetwarzać. Wykorzystuje ona informacje o produkcie do egzekwowania zabezpieczeń (dokładnie tak samo jak każdy proxy interfejsu API w Apigee Edge, gdzie klucze aplikacji dewelopera są powiązane z produktami). Za chwilę omówimy kroki, które należy wykonać, aby zabezpieczyć Edge Microgateway.
2. Testowanie Edge Microgateway
Gdy Edge Microgateway jest uruchomiony, możesz wywołać proxy. Konfiguracja serwera proxy edgemicro_hello została pobrana z Edge po uruchomieniu Edge Microgateway. Pamiętaj, że ścieżka podstawowa serwera proxy to /hello.
Aby przetestować Edge Microgateway, zaczynamy od ścieżki podstawowej i dodajemy ścieżkę zasobu /echo. Pamiętaj, że wszystko, co znajduje się po ścieżce podstawowej (w tym parametry zapytania), jest po prostu przekazywane do docelowego backendu:
curl -i http://localhost:8000/hello/echo
{"error":"missing_authorization","error_description":"Missing Authorization header"}Ten błąd występuje, ponieważ w żądaniu nie podano prawidłowego klucza interfejsu API ani tokena dostępu. Domyślnie Edge Microgateway wymaga klucza interfejsu API lub tokena dostępu przy każdym wywołaniu interfejsu API. W następnym kroku tego samouczka zabezpieczymy ten interfejs API i pokażemy, jak uzyskać prawidłowy token dostępu i dołączyć go do żądania.
”.4. Zatrzymywanie Edge Microgateway
- W osobnym oknie terminala
cddo tego samego katalogu, w którym uruchomiono Edge Microgateway. - Wpisz polecenie zatrzymania:
edgemicro stop
Część 4. Secure Edge Microgateway
Wywołania interfejsu API wykonywane za pomocą Edge Microgateway możesz zabezpieczyć za pomocą klucza interfejsu API lub tokena dostępu.
- Zabezpieczanie wywołań interfejsu API za pomocą tokena dostępu OAuth2
- Zabezpieczanie wywołań interfejsu API za pomocą klucza interfejsu API
Zabezpieczanie wywołań interfejsu API za pomocą tokena dostępu OAuth2
Jeśli chcesz uwierzytelniać wywołania interfejsu API za pomocą tokena dostępu OAuth2, wykonaj te czynności:
1. Uzyskiwanie wymaganych kluczy
- W interfejsie Edge przejdź do utworzonej wcześniej aplikacji dewelopera, zgodnie z opisem w części 2: Tworzenie encji w Apigee Edge. Nazwa aplikacji to EdgeMicroTestApp.
- Na stronie aplikacji dewelopera wyświetl klucz klienta i klucz tajny klienta, a następnie je skopiuj. Te wartości są wymagane, aby w następnym kroku uzyskać token dostępu.
2. Uzyskiwanie tokena dostępu
Token dostępu można uzyskać na 2 sposoby. Pokażemy Ci obie metody.
Uzyskiwanie tokena dostępu za pomocą interfejsu wiersza poleceń
Pierwsza metoda jest wygodna i zgodna z wzorcem, którego używaliśmy w tym samouczku. Druga metoda jest zwykle bardziej przydatna dla programistów aplikacji klienckich, którzy muszą wysyłać prośby o tokeny. Rzeczywisty punkt końcowy tokena jest zaimplementowany w proxy edgemicro-auth, które zostało wdrożone podczas konfigurowania Edge Microgateway.
- (Opcjonalnie) Wyświetl pomoc dotyczącą polecenia token get:
edgemicro token get -h
- Wygeneruj token, zastępując wartości klucza klienta i tajnego klucza klienta z utworzonej w Apigee Edge aplikacji dla deweloperów parametrami -i i -s:
edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]
Gdzie:
orgto nazwa Twojej organizacji Edge (musisz być administratorem organizacji).envto środowisko w Twojej organizacji (np. testowe lub produkcyjne).consumer_idto identyfikator konsumenta w aplikacji dewelopera utworzonej wcześniej.consumer_secretto tajny klucz klienta w utworzonej wcześniej aplikacji dla deweloperów.
Przykład
edgemicro token get -o docs -e test -i G0IAeU864EtBo99NvUbn6Z4CBwVcS2 -s uzHTbwNWvoSmOy
Dane wyjściowe (przykład)
current nodejs version is v4.4.4 { token: 'eyJ0eXAiOiJKV1QiLCJhbGciSUzI1NiJ9.eyJhcHBsaWNhdGl vbl9uYW1lIjoiNWNiMGY0tOWMzOC00YmJjLWIzNzEtZGMxZTQzOGYxZGMxI iwiY2xpZW50X2lkIjoiNVVdBWEdvSU9lbzYwYWV3OTRQN0c1TUFaRTNhSnA iLCJzY29wZXMiOltdLCJhcGlfcHJvjdF9saXN0IjpbIkVkZ2VNaWNyb1Rlc 3RQcm9kdWN0IlmlhdCI6MTQ3ODIwODMzMiwiZXhwIjoxNDc4MjEwMTMxfQ. v3Q8Rs0W9FO_XpERwIAMMXhjGamRmmmWgrAy1wJv0-99oajx5ASI5qjNubM nCF14xxwlVXHcz1VfedA8Nx7Ih145zhWWuPKL9muzhXXnVBRFeBMeeLqJk4 QQ7Bhst7xH_68nJSTE20Egu95DHOCUemfrepDFH0VggY4BmzvwLkBNfz_te E_YqwKZbpGOLMdKK1vMk0fk0x19SieIMS_aJYeOAklrzUhnFxWJFrsAWsax NLx_BbQcZzYfK1JSDUrhRNVBuPHMnGjNA_oHw2J4qa6Hsp62PfchG-DIW_t -0BFnYf3rYXmqyNORqFrOMdl4VxqQ' }
(Opcjonalnie) Uzyskiwanie tokena za pomocą interfejsu API
Jeśli zwykle wywołujesz serwery proxy Edge za pomocą polecenia curl lub innego klienta HTTP, z pewnością zainteresuje Cię fakt, że możesz wywoływać punkt końcowy tokena bezpośrednio, zamiast używać polecenia edgemicro token. Oto przykład polecenia curl. Wystarczy, że w adresie URL zastąpisz nazwy organizacji i środowiska oraz przekażesz wartości klucza klienta i tajnego klucza klienta rozdzielone dwukropkiem w nagłówku podstawowego uwierzytelniania:
curl -i -X POST --user [client_id]:[client_secret] "http://[org]-[env].apigee.net/edgemicro-auth/token" -d '{"grant_type": "client_credentials"}' -H "Content-Type: application/json"
Gdzie:
orgto nazwa Twojej organizacji Edge (musisz być administratorem organizacji).envto środowisko w Twojej organizacji (np. testowe lub produkcyjne).client_idto identyfikator konsumenta w aplikacji dewelopera utworzonej wcześniej.client_secretto tajny klucz klienta w utworzonej wcześniej aplikacji dla deweloperów.
Dane wyjściowe (przykład)
Polecenie, niezależnie od tego, czy używasz polecenia interfejsu wiersza poleceń edgemicro token, czy wywołujesz punkt końcowy za pomocą polecenia curl, zwraca podpisany token dostępu, którego można używać do wykonywania wywołań klienta. Na przykład:
MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWxKWBDP9o
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz
pFkIxepyr/0=
3. Sprawdzanie konfiguracji w Edge Microgateway
- Otwórz plik ~
/.edgemicro/org-env-config.yaml.Zobacz też sekcję „Gdzie jest zainstalowana usługa Edge Microgateway” w artykule Instalowanie usługi Edge Microgateway. - Sprawdź, czy te właściwości wtyczki OAuth mają wartość false. Domyślnie mają wartość false, ale warto to sprawdzić:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false
- Upewnij się też, że w pliku
org-env-config.yamlw elemencieplugins:sequenceznajduje się wtyczka oauth, np. tak:plugins: dir: ../plugins sequence: - oauth
- Jeśli wprowadzisz jakiekolwiek zmiany w pliku, ponownie załaduj zmiany do działającej instancji Edge Microgateway. To polecenie ponownie konfiguruje Edge Microgateway z zerowym czasem przestoju:
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Gdzie:
orgto nazwa Twojej organizacji Edge (musisz być administratorem organizacji).envto środowisko w Twojej organizacji (np. testowe lub produkcyjne).keyto klucz zwrócony wcześniej przez polecenie configure.secretto klucz zwrócony wcześniej przez polecenie configure.
Przykład
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
4. Bezpieczne wywoływanie interfejsu API
Gdy masz już token dostępu, możesz bezpiecznie wywołać interfejs API. Na przykład:
curl -i -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhcHBsaWNhdGlvbl 9uYW1lIjoiYmU2YmZjYjAtMWQ0Ni00Y2IxLWFiNGQtZTMxNzRlNTAyMDZkIiwiY2xpZW50X2lkIjoiOGxTTTVIRHdyM VhIT1ZwbmhURExhYW9FVG5STVpwWk0iLCJzY29wZXMiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIk1pY3JvZ2F0ZXdh eVRlQcm9kdWN0Il0sImCI6MTQzNTM0NzY5MiwiZXhwIjoxNDM1MzQ5NDkxfQ.PN30Y6uK1W1f2ONPEsBDB_BT31c6 IsjWGfwpz-p6Vak8r767tAT4mQAjuBpQYv7_IU4DxSrnxXQ_q536QYCP4p4YKfBvyqbnW0Rb2CsPFziy_n8HIczsWO s0p4czcK63SjONaUpxV9DbfGVJ_-WrSdqrqJB5syorD2YYJPSfrCcgKm-LpJc6HCylElFDW8dHuwApaWcGRSV3l5Wx 4A8Rr-WhTIxDTX7TxkrfI4THgXAo37p3au3_7DPB_Gla5dWTzV4j93xLbXPUbwTHzpaUCFzmPnVuYM44FW5KgvBrV0 64RgPmIFUxSqBWGQU7Z1w2qFmWuaDljrMDoLEreI2g" http://localhost:8000/hello/echo
Interfejs API zwraca nagłówki i inne informacje z serwera testowego.
Zabezpieczanie interfejsu API za pomocą klucza interfejsu API
Jeśli chcesz użyć klucza interfejsu API do autoryzacji, wykonaj te czynności:
1. Uzyskiwanie klucza interfejsu API
- W interfejsie Edge przejdź do utworzonej wcześniej aplikacji dewelopera, zgodnie z opisem w części 2: Tworzenie encji w Apigee Edge. Nazwa aplikacji to EdgeMicroTestApp.
- Na stronie aplikacji dewelopera wyświetl klucz konsumenta i skopiuj go. Ta wartość to klucz interfejsu API. Ten klucz będzie używany do wykonywania uwierzytelnionych wywołań interfejsu API.
2. Sprawdzanie konfiguracji w Edge Microgateway
- Otwórz plik ~
/.edgemicro/org-env-config.yaml.Zobacz też sekcję „Gdzie jest zainstalowana usługa Edge Microgateway” w artykule Instalowanie usługi Edge Microgateway. - Sprawdź, czy te właściwości wtyczki OAuth mają wartość false. Domyślnie mają wartość false, ale warto to sprawdzić:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false
- Upewnij się też, że w pliku
org-env-config.yamlw elemencieplugins:sequenceznajduje się wtyczka oauth, np. tak:plugins: dir: ../plugins sequence: - oauth - Jeśli wprowadzisz jakiekolwiek zmiany w pliku, ponownie załaduj zmiany do działającej instancji Edge Microgateway. To polecenie ponownie konfiguruje Edge Microgateway z zerowym czasem przestoju:
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Gdzie:
orgto nazwa Twojej organizacji Edge (musisz być administratorem organizacji).envto środowisko w Twojej organizacji (np. testowe lub produkcyjne).keyto klucz zwrócony wcześniej przez polecenie configure.secretto klucz zwrócony wcześniej przez polecenie configure.
Przykład
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
3. Bezpieczne wywoływanie interfejsu API za pomocą klucza interfejsu API
Wywołaj interfejs API z nagłówkiem x-api-key w ten sposób: Wartość klucza klienta skopiowana z aplikacji dewelopera to klucz interfejsu API. Domyślnie Edge Microgateway oczekuje, że klucz zostanie przekazany w nagłówku o nazwie x-api-key, np. w ten sposób:
curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"
Gdzie:
apikeyto wartość klucza klienta pobrana z aplikacji EdgeMicroTestApp.
Na przykład:
curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxa0ilYQ5szwuljr5bB'
Masz teraz w pełni funkcjonalną i bezpieczną bramę Edge Microgateway. W następnej części tego samouczka przyjrzymy się wtyczkom, które dodają funkcje do Edge Microgateway.
Część 5. Dodawanie wtyczki Spike Arrest
W tej części dodamy do instancji Edge Microgateway funkcję ograniczania liczby żądań o nazwie „spike arrest”.
Czym są wtyczki?
Wtyczka to moduł Node.js, który dodaje funkcje do Edge Microgateway. Moduły wtyczek mają spójny wzorzec i są przechowywane w lokalizacji znanej Edge Microgateway, co umożliwia mikrobramie automatyczne wykrywanie i wczytywanie tych modułów. Więcej informacji o wtyczkach znajdziesz w artykule Korzystanie z wtyczek.
Dodawanie wtyczki Spike Arrest
Zasada Spike Arrest chroni przed nagłymi wzrostami ruchu. Ogranicza liczbę żądań przetwarzanych przez instancję Edge Microgateway.
W Edge Microgateway ochrona przed nagłymi wzrostami ruchu jest zaimplementowana jako moduł wtyczki. Aby ją włączyć, musisz dodać ją do pliku konfiguracyjnego Edge Microgateway.
- Otwórz plik ~
/.edgemicro/org-env-config.yaml.Zobacz też sekcję „Gdzie jest zainstalowana usługa Edge Microgateway” w artykule Instalowanie usługi Edge Microgateway. - Dodaj ten element. Możesz dodać go w dowolnym miejscu w pliku.
spikearrest: timeUnit: minute allow: 10 buffersize: 0 - Dodaj
spikearrestdo elementuedgemicro:sequence, jak pokazano poniżej. Właściwość konfiguracji sequence określa kolejność wykonywania modułów wtyczek w Edge Microgateway.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: - spikearrest - oauth
- Zapisz plik konfiguracji.
- Załaduj ponownie Edge Microgateway za pomocą polecenia reload. To polecenie musisz uruchomić w katalogu, w którym uruchomiono Edge Microgateway.
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Gdzie:
orgto nazwa Twojej organizacji Edge (musisz być administratorem organizacji).envto środowisko w Twojej organizacji (np. testowe lub produkcyjne).keyto klucz zwrócony wcześniej przez polecenie configure.secretto klucz zwrócony wcześniej przez polecenie configure.
Przykład
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
- Spróbuj wywołać interfejs API kilka razy z rzędu. Po drugim wywołaniu Edge Microgateway zwraca ten błąd:
{"message":"SpikeArrest engaged","status":503}
Dzieje się tak, ponieważ ograniczenie skoków wygładza liczbę połączeń, które można wykonać w określonej jednostce czasu. W tym przypadku możesz wykonać 10 połączeń w ciągu minuty, czyli jedno co 6 sekund.
Więcej informacji znajdziesz w sekcji „Jak działa ochrona przed nagłymi wzrostami?” w artykule Korzystanie z wtyczek.
Dodatkowe punkty: dodawanie wtyczki przydziału
Postępując zgodnie z tym samym wzorcem, który został użyty do skonfigurowania ochrony przed nagłymi wzrostami, możesz dodać inne wtyczki, np. wtyczkę limitu. Podobnie jak w przypadku ochrony przed nagłymi wzrostami ruchu wtyczka limitów jest dołączana do każdej instalacji Edge Microgateway. Limit określa liczbę wiadomości z żądaniami, które aplikacja może przesyłać do interfejsu API w określonym przedziale czasu (w minutach lub godzinach).
Aby dowiedzieć się, jak działają limity, przeczytaj sekcję „Korzystanie z wtyczki limitów” w artykule Korzystanie z wtyczek.
Część 6. Wyświetlanie statystyk w Apigee Edge
Mamy już w pełni działającą instancję Edge Microgateway. Zobaczmy, co się w niej dzieje. Domyślnie moduł wtyczki Analytics jest dodawany do Edge Micro. Ten moduł w sposób niewidoczny dla użytkownika przesyła dane analityczne z Edge Micro do Apigee Edge, gdzie są one wykorzystywane przez system Edge Analytics. Sprawdźmy:
- Zaloguj się w organizacji w Apigee Edge.
- Kliknij Statystyki > Wydajność serwera proxy.
- W panelu Skuteczność serwera proxy wybierz edgemicro_hello proxy.
- Wykres zawiera informacje o wzorcach ruchu serwera proxy, takie jak łączny ruch, średni czas odpowiedzi, średni docelowy czas odpowiedzi i inne.
Więcej informacji o panelach Edge Analytics znajdziesz na stronie głównej Paneli Analytics w dokumentacji Edge. Więcej informacji o wtyczkach znajdziesz w artykule Korzystanie z wtyczek.