Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X. Informacje
Opis
W tym samouczku omawiamy czynności niezbędne do uruchomienia i uruchomienia instancji Edge Microgateway.
Po wykonaniu opisanych tu kroków uzyskasz w pełni skonfigurowaną, działającą instalację Edge Microgateway, która będzie mogła przetwarzać żądania do interfejsu API. Sprawdzisz konfigurację, wykonując bezpieczne wywołania interfejsu API do celu backendu za pomocą Edge Microgateway. Dowiesz się też, jak dodać do Microgateway wtyczkę do aresztowania skokowego.
Przewodnik składa się z tych części:
- Warunek wstępny: instalowanie Edge Microgateway
- Część 1: skonfiguruj Edge Microgateway
- Część 2: tworzenie elementów w Apigee Edge
- Część 3: Operate 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 zawartymi w artykule Instalowanie Edge Microgateway. Po ukoń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. Skonfiguruj Microgateway Edge
W tej części użyjesz polecenia interfejsu wiersza poleceń, aby skonfigurować Edge Microgateway pod kątem komunikacji z Apigee Edge. Jeśli korzystasz z Apigee Edge Cloud, wykonaj instrukcje konfiguracji Apigee Edge Cloud. Jeśli korzystasz z Apigee Private Cloud, wykonaj czynności 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 zrobione wcześniej, zainicjuj Edge Microgateway (musisz to zrobić tylko raz):
edgemicro init
- (Opcjonalnie) Wydrukuj pomoc dotyczącą polecenia edgemicroconfiguration:
edgemicro configure -h
- Aby skonfigurować Edge Microgateway, wykonaj to polecenie:
edgemicro configure -o [org] -e [env] -u [username]
Gdzie:
org
to nazwa organizacji Edge (musisz być administratorem organizacji).env
to środowisko w Twojej organizacji (np. testowe lub produkcyjne).username
to adres e-mail powiązany z Twoim kontem Apigee.
Przykład
edgemicro configure -o docs -e test -u jdoe@example.com
Wyjście
./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, wykonaj te czynności:
- Wydrukuj informacje o pomocy dotyczącej polecenia edgemicro private configure. W ten sposób możesz drukować dla dowolnego polecenia interfejsu wiersza poleceń lub opcji interfejsu Edge Microgateway.
edgemicro private configure -h
- Wykonaj poniższe polecenie. Wymaga on standardowych informacji o Twoim koncie Private Cloud w Apigee Edge: nazwa organizacji, nazwa środowiska, nazwa użytkownika (adres e-mail), hasło, adres IP serwera zarządzania i adres 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:
org
to nazwa organizacji Edge (musisz być jej administratorem).env
to środowisko w Twojej organizacji (np. testowe lub produkcyjne).runtime_url
to adres URL środowiska wykonawczego instancji chmury prywatnej.mgmt_url
to adres URL serwera zarządzania instancji chmury prywatnej.username
to adres e-mail powiązany z Twoim kontem Apigee.-
virtual_host
to rozdzielana przecinkami lista nazw hostów wirtualnych. 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
lub jeśli masz alias hosta wirtualnego myorg-test.mycompany.com
, użyj tego polecenia:
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
Wyjście
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!
Zweryfikuj instalację
Uruchom to polecenie, aby sprawdzić poprawność instalacji. Jeśli nie zostaną zgłoszone żadne błędy, wszystko jest skonfigurowane poprawnie i możesz uruchomić Edge Microgateway.
edgemicro verify -o [org] -e [env] -k [key] -s [secret]
Gdzie:
org
to nazwa organizacji Edge (musisz być administratorem organizacji).env
to środowisko w Twojej organizacji (np. testowe lub produkcyjne).key
to klucz zwrócony wcześniej przez polecenie konfiguracji.secret
to klucz zwrócony wcześniej przez polecenie konfiguracji.
Przykład
edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f664ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0556d7132afbd03625bbd85dc34ebfefae4f23fbcb3c
Informacje o konfiguracji
Cała dotychczasowa konfiguracja umożliwia Edge Microgateway wczytanie się do Apigee Edge. Po zakończeniu wczytywania Edge Microgateway pobiera ładunek z dodatkowymi informacjami o konfiguracji z Apigee Edge.
Do czego służą te informacje o konfiguracji? W następnej części tego samouczka dowiesz się, że po uruchomieniu Edge Microgateway musi otrzymać listę specjalnych serwerów proxy interfejsu Edge Microgateway API z Apigee Edge. W następnej części tego samouczka utworzysz serwer proxy rozpoznawany przez Microgateway. Edge Microgateway ogranicza klienty do wywoływania tylko interfejsów API, z których korzystają te serwery proxy interfejsów API korzystających z mikrobramy. Klienty będą (domyślnie wymagane) do przedstawienia prawidłowego tokena zabezpieczeń przy każdym wywołaniu. Aby dowiedzieć się więcej o tych serwerach proxy, zapoznaj się z sekcją „Co musisz wiedzieć o serwerach proxy obsługujących Edge Microgateway w artykule Omówienie Edge Microgateway.
Jako administrator organizacji Edge możesz chcieć wiedzieć, że serwery proxy obsługujące Edge Microgateway można dodawać do usług Edge tak jak dowolne inne serwery proxy. Za pomocą usług i aplikacji programisty możesz generować tokeny zabezpieczeń dla konkretnego klienta, aby kontrolować dostęp do interfejsów API wywoływanych przez Edge Microgateway. Tego typu wzorce są takie same jak w przypadku pracy z serwerami proxy, usługami i aplikacjami deweloperskimi interfejsu API w Apigee Edge. Jeśli chcesz dowiedzieć się więcej o usługach, zacznij od przeczytania sekcji Co to jest usługa API? w dokumentacji Edge.
Teraz pokażemy, jak tworzyć serwery proxy obsługujące Edge Microgateway, a później uruchomimy Edge Microgateway i przetestujemy konfigurację.
Część 2. Tworzenie encji w Apigee Edge
W tej części utworzysz te elementy w Edge:
- Serwer proxy identyfikujący bramę – jest to specjalny serwer proxy, który Edge Microgateway może wykryć podczas uruchamiania. Serwery proxy rozpoznające mikrobramy mają konwencję nazewnictwa, której musisz przestrzegać: nazwa musi zawierać nazwę
edgemicro_
. Na przykładedgemicro_hello
lubedgemicro_userinfo
. Po uruchomieniu Edge Microgateway pobiera z Edge listę serwerów proxy rozpoznających mikrobramy z tej samej organizacji i środowiska Edge, które zostały określone podczas uruchamiania Edge Microgateway.
Dla każdego serwera proxy rozpoznającego mikrobradę Edge Microgatway pobiera docelowy adres URL serwera proxy i jego ścieżkę podstawową. Serwery proxy działające przy użyciu mikrobram to również wygodny sposób na powiązanie danych analitycznych wygenerowanych przez Edge Microgateway z serwerem proxy na platformie Edge. Microgateway obsługuje wywołania interfejsu API, dlatego asynchronicznie przekazuje dane analityczne do Edge. Dane Analytics będą wyświetlane w interfejsie użytkownika Edge Analytics pod nazwami serwerów proxy rozpoznających mikrobramy, podobnie jak w przypadku każdego innego serwera proxy.
- Aplikacja, produkt, programista i deweloper – Edge Microgateway korzysta z usług, programistów i aplikacji programisty, aby włączyć token dostępu OAuth2 lub zabezpieczenia klucza interfejsu API. Po uruchomieniu Edge Microgateway pobiera wszystkie konfiguracje usług z organizacji Apigee Edge. Służy on do weryfikowania wywołań interfejsu API wykonywanych przez Edge Microgateway z użyciem kluczy interfejsu API lub tokenów dostępu OAuth2.
Więcej informacji: Zobacz też artykuł „Co musisz wiedzieć o serwerach proxy obsługujących Edge Microgateway” w artykule Omówienie Edge Microgateway.
1. Tworzenie serwera proxy interfejsu Edge Microgateway API w Edge
- Zaloguj się w swojej organizacji w Apigee Edge.
- Kliknij PRZEŁĄCZ NA KLASYCZNE, aby przejść do klasycznego interfejsu Edge.
- W menu u góry wybierz Interfejsy API > Serwery proxy API.
- Na stronie Proxies API kliknij + Serwer proxy interfejsu API.
- W kreatorze tworzenia serwera proxy wybierz Odwrotny serwer proxy (najczęstszy).
- Kliknij Dalej.
- Na stronie Szczegóły kreatora wykonaj następujące czynności: Wypełnij kreator dokładnie w takiej postaci:
- Nazwa serwera proxy: edgemicro_hello
- Ścieżka podstawowa serwera proxy: /hello
- Dotychczasowy interfejs API: http://mocktarget.apigee.net/
- Kliknij Dalej.
- Na stronie Zabezpieczenia kreatora wybierz Przekazywany (brak).
- Kliknij Dalej.
- Na stronie Hosty wirtualne w kreatorze zaakceptuj wartości domyślne.
- Kliknij Dalej.
- Na stronie kompilacji w kreatorze sprawdź ustawienia serwera proxy. Wybierz środowisko testowe.
- Kliknij Skompiluj i wdróż.
2. Utwórz produkt
Utwórz produkt, który zawiera 2 serwery proxy:
- Serwer proxy identyfikujący mikrobramę: edgemicro_hello
- Serwer proxy uwierzytelniania zainstalowany przez Edge Microgateway: edgemicro-auth.
- W interfejsie użytkownika Edge (w wersji klasycznej) kliknij Publikowanie > Usługi.
- Na stronie Produkty kliknij + Usługa. Wypełnij stronę z informacjami o produkcie w ten sposób:
- Nazwa: EdgeMicroTestProduct
- Wyświetlana nazwa: EdgeMicroTestProduct
- Środowisko: testowanie i produkcja
- Dostęp: publiczny
- Typ zatwierdzenia: Automatycznie
-
Informacje:
- API Proxy: wybierz edgemicro_hello.
- Wersja: 1
- Ścieżka do zasobu: /**
- Kliknij Importuj zasób.
- W sekcji Zasoby kliknij + Serwer proxy interfejsu API.
- Wybierz edgemicro-auth.
- Kliknij Zapisz.
3. (Opcjonalnie) Utwórz programistę testów
W tym samouczku w następnym kroku możesz skorzystać z usług dowolnego istniejącego dewelopera, którym utworzysz aplikację dewelopera. Jeśli jednak chcesz, możesz teraz utworzyć programistę testową:
- Kliknij Publish > Developers (Publikowanie > Programiści).
- Na stronie Produkty kliknij + Deweloper.
- Wypełnij okno, aby utworzyć dewelopera do testów.
4. Tworzenie aplikacji dewelopera
Będziesz używać danych logowania klienta z tej aplikacji do wykonywania bezpiecznych wywołań interfejsu API przez Edge Microgateway:
- Kliknij Publikowanie > Aplikacje dla deweloperów.
- Na stronie Aplikacje dla deweloperów kliknij + Aplikacja dewelopera.
- Wypełnij stronę aplikacji dewelopera w ten sposób:
- Nazwa: EdgeMicroTestApp
- Wyświetlana nazwa: EdgeMicroTestApp
- Programista: jeśli masz konto programisty testowego, wybierz go. W tym samouczku możesz też skorzystać z usług dowolnego istniejącego programisty.
-
Dane logowania:
- Wybierz datę wygaśnięcia: nigdy.
- Kliknij + Usługa i wybierz EdgeMicroTestProduct (utworzoną właśnie usługę).
- Kliknij Zapisz.
- Jesteś z powrotem na stronie z listą aplikacji dla deweloperów.
- Wybierz utworzoną przed chwilą aplikację EdgeMicroTestApp.
- Kliknij Pokaż obok pozycji Klucz klienta i Tajny klucz klienta.
Część 3. Obsługa Edge Microgateway
Po skonfigurowaniu Edge Microgateway i co najmniej 1 serwera proxy rozpoznającego Edge Microgateway na urządzeniu Edge możesz uruchomić Edge Microgateway. Serwer HTTP Edge Microgateway będzie działać na Twoim komputerze lokalnym i będziesz wykonywać wywołania interfejsu API bezpośrednio na tym serwerze.
1. Uruchom Edge Microgateway
Użyj polecenia edgemicro start, aby uruchomić Edge Microgateway.
- Sprawdź, czy masz klucze, które zostały zwrócone podczas uruchamiania 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:
org
to nazwa organizacji Edge (musisz być administratorem organizacji).env
to środowisko w Twojej organizacji (np. testowe lub produkcyjne).key
to klucz zwrócony wcześniej przez polecenie konfiguracji.secret
to klucz zwrócony wcześniej przez polecenie konfiguracji.
Przykład
edgemicro start -o docs -e test -k 701e70e718ce6dc1880616b3c39177d64a88754d615c7a4e1f78b6181d000723 -s 05c14356e42d136b83dd135cf8a18531ff52d7299134677e30ef4e34ab0cc824
Wyjście
Polecenie start pobiera wiele informacji o konfiguracji z Apigee Edge (które są przewijane do okna terminala). W danych wyjściowych pojawi się lista serwerów proxy rozpoznających mikrobramy i usług, które zostały wykryte. Na końcu danych wyjściowych powinno znajdować się coś takiego:
... 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 uruchomione polecenie edgemicro config. Po przewinięciu w górę standardowych danych wyjściowych możesz zobaczyć, że polecenie pobiera ładunek z informacjami o konfiguracji Edge Microgateway z Apigee Edge. Są to między innymi:
- Klucz publiczny utworzony i zapisany wcześniej w magazynie Apigee.
- Reprezentacja w formacie JSON wszystkich serwerów proxy obsługujących Edge Microgateway, które istnieją w organizacji lub środowisku. To wszystkie serwery proxy o nazwach z prefiksem edgemicro_.
- Reprezentacja w formacie JSON wszystkich usług 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 informacje o usłudze do egzekwowania zabezpieczeń (dokładnie tak samo jak każdy serwer proxy interfejsu API w Apigee Edge, gdzie klucze aplikacji dla programistów są powiązane z usługami). Wkrótce przeprowadzimy kroki zabezpieczania Edge Microgateway.
2. Testuj mikrobramę Edge
Po uruchomieniu Edge Microgateway możesz wywołać serwer proxy. Konfiguracja serwera proxy edgemicro_hello została pobrana z Edge podczas uruchamiania Edge Microgateway. Pamiętaj, że ścieżka bazowa serwera proxy to /hello.
Aby przetestować Edge Microgateway, zaczynamy od ścieżki podstawowej i dodajesz ścieżkę zasobu /echo. Pamiętaj, że wszystko po ścieżce podstawowej (w tym parametry zapytania) jest po prostu przekazywane do miejsca docelowego backendu:
curl -i http://localhost:8000/hello/echo {"error":"missing_authorization","error_description":"Missing Authorization header"}
Ten błąd występuje, ponieważ z żądaniem nie wysłano prawidłowego klucza interfejsu API lub 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 samouczka prawidłowo zabezpieczymy ten interfejs API i pokażemy Ci, jak uzyskać prawidłowy token dostępu i uwzględnić go w żądaniu.
4. Zatrzymuj Edge Microgateway
- W osobnym oknie terminala wpisz
cd
do tego samego katalogu, w którym uruchomiono Edge Microgateway. - Wpisz polecenie zatrzymania:
edgemicro stop
Część 4. Zabezpieczenie Edge
Możesz zabezpieczyć wywołania interfejsu API wykonywane przez Edge Microgateway za pomocą klucza interfejsu API lub tokena dostępu.
- Bezpieczne wywołania interfejsu API z użyciem tokena dostępu OAuth2
- Bezpieczne wywołania interfejsu API za pomocą klucza interfejsu API
Bezpieczne wywołania interfejsu API z tokenem 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 użytkownika Edge otwórz wcześniej utworzoną aplikację programisty zgodnie z opisem w części 2. Tworzenie elementów w Apigee Edge. Aplikacja nazywała się EdgeMicroTestApp.
- Na stronie aplikacji dla programistów pokaż klucz klienta i tajny klucz klienta, a następnie je skopiuj. Te wartości są wymagane do uzyskania tokena dostępu w następnym kroku.
2. Uzyskaj token 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 jest zgodna ze wzorcem używanym w trakcie samouczka. Druga metoda jest zwykle bardziej przydatna dla deweloperów aplikacji klienckich, którzy chcą wysyłać żądania tokenów. Rzeczywisty punkt końcowy tokena jest zaimplementowany na serwerze proxy edgemicro-auth, który został wdrożony 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 aplikacji dla deweloperów utworzonej w Apigee Edge w parametrach -i i -s:
edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]
Gdzie:
org
to nazwa organizacji Edge (musisz być administratorem organizacji).env
to środowisko w Twojej organizacji (np. testowe lub produkcyjne).consumer_id
to identyfikator klienta w utworzonej wcześniej aplikacji dewelopera.consumer_secret
to tajny klucz klienta w utworzonej wcześniej aplikacji programisty.
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 korzystasz z serwerów proxy Edge za pomocą curl lub innego klienta HTTP, może Ci się przydać możliwość bezpośredniego wywoływania punktu końcowego tokena, zamiast używania polecenia edgemicro token. Oto przykład curl. Zastąp nazwy organizacji i środowiska w adresie URL, a następnie przekaż rozdzielone dwukropkami wartości klucza klienta:Tajny klucz klienta w nagłówku uwierzytelniania podstawowego:
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:
org
to nazwa organizacji Edge (musisz być administratorem organizacji).env
to środowisko w Twojej organizacji (np. testowe lub produkcyjne).client_id
to identyfikator klienta w utworzonej wcześniej aplikacji dewelopera.client_secret
to tajny klucz klienta w utworzonej wcześniej aplikacji programisty.
Dane wyjściowe (przykład)
Niezależnie od tego, czy zostało użyte polecenie interfejsu wiersza poleceń edgemicro, czy wywoływany punkt końcowy za pomocą curl, zwraca podpisany token dostępu, którego można użyć do wywoływania 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. Sprawdź konfigurację w Edge Microgateway
- Otwórz plik ~
/.edgemicro/org-env-config.yaml.
Zobacz też sekcję „Gdzie jest zainstalowana Edge Microgateway” w artykule Instalowanie Edge Microgateway. - Upewnij się, że wartość tych właściwości wtyczki OAuth jest ustawiona na false. Domyślnie mają one wartość „fałsz”, ale warto to sprawdzić:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false
- Poza tym w pliku
org-env-config.yaml
upewnij się, że wtyczka protokołu OAuth została dodana do elementuplugins:sequence
w ten sposób:plugins: dir: ../plugins sequence: - oauth
- Jeśli wprowadzisz zmiany w pliku, załaduj je ponownie w 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:
org
to nazwa organizacji Edge (musisz być administratorem organizacji).env
to środowisko w Twojej organizacji (np. testowe lub produkcyjne).key
to klucz zwrócony wcześniej przez polecenie konfiguracji.secret
to klucz zwrócony wcześniej przez polecenie konfiguracji.
Przykład
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
4. Bezpieczne wywoływanie interfejsu API
Mając token dostępu, możesz teraz bezpiecznie wykonywać wywołanie interfejsu 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 próbnego.
Zabezpieczanie interfejsu API za pomocą klucza interfejsu API
Jeśli do autoryzacji chcesz użyć klucza interfejsu API, wykonaj te czynności:
1. Uzyskiwanie klucza interfejsu API
- W interfejsie użytkownika Edge otwórz wcześniej utworzoną aplikację programisty zgodnie z opisem w części 2. Tworzenie elementów w Apigee Edge. Aplikacja nazywała się EdgeMicroTestApp.
- Na stronie aplikacji dewelopera pokaż klucz klienta i skopiuj go. Ta wartość to klucz interfejsu API. Będziesz używać tego klucza do uwierzytelnionych wywołań interfejsu API.
2. Sprawdź konfigurację w Edge Microgateway
- Otwórz plik ~
/.edgemicro/org-env-config.yaml.
Zobacz też sekcję „Gdzie jest zainstalowana Edge Microgateway” w artykule Instalowanie Edge Microgateway. - Upewnij się, że wartość tych właściwości wtyczki OAuth jest ustawiona na false. Domyślnie mają one wartość „fałsz”, ale warto to sprawdzić:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false
- Poza tym w pliku
org-env-config.yaml
upewnij się, że wtyczka protokołu OAuth została dodana do elementuplugins:sequence
w ten sposób:plugins: dir: ../plugins sequence: - oauth
- Jeśli wprowadzisz zmiany w pliku, załaduj je ponownie w 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:
org
to nazwa organizacji Edge (musisz być administratorem organizacji).env
to środowisko w Twojej organizacji (np. testowe lub produkcyjne).key
to klucz zwrócony wcześniej przez polecenie konfiguracji.secret
to klucz zwrócony wcześniej przez polecenie konfiguracji.
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 podany niżej sposób. Wartość klucza klienta skopiowana z aplikacji programisty jest kluczem interfejsu API. Domyślnie Edge Microgateway wymaga przekazania klucza w nagłówku x-api-key, na przykład:
curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"
Gdzie:
apikey
to wartość klucza klienta pobrana z EdgeMicroTestApp.
Na przykład:
curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxa0ilYQ5szwuljr5bB'
Masz teraz w pełni funkcjonalną i bezpieczną usługę Edge Microgateway. W następnej części samouczka przyjrzymy się wtyczkom, które dodają funkcje do Edge Microgateway.
Część 5. Dodaj wtyczkę Spike Arrest
W tej części dodamy do Twojej instancji Edge Microgateway funkcję ograniczania liczby żądań zwaną zatrzymywaniem skokowych żądań.
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 przez Edge Microgateway, co umożliwia mikrobramę ich automatyczne wykrywanie i ładowanie. Więcej o wtyczkach znajdziesz w artykule o korzystaniu z wtyczek.
Dodawanie wtyczki do szybkiego zatrzymania
Spike Arrest chroni przed gwałtownym wzrostem natężenia ruchu. Ogranicza liczbę żądań przetwarzanych przez instancję Edge Microgateway.
W Edge Microgateway blokowanie skoków jest zaimplementowane jako moduł wtyczki. Aby go włączyć, musisz go dodać do pliku konfiguracji Edge Microgateway.
- Otwórz plik ~
/.edgemicro/org-env-config.yaml.
Zobacz też sekcję „Gdzie jest zainstalowana Edge Microgateway” w artykule Instalowanie Edge Microgateway. - Dodaj ten element. Możesz dodać go w dowolnym miejscu w pliku.
spikearrest: timeUnit: minute allow: 10 buffersize: 0
- Dodaj
spikearrest
do elementuedgemicro:sequence
, jak pokazano poniżej. Właściwość konfiguracji sekwencji informuje Edge Microgateway o kolejności wykonywania modułów wtyczek.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 konfiguracyjny.
- Załaduj ponownie Edge Microgateway za pomocą polecenia reload. Musisz uruchomić to polecenie w katalogu, w którym uruchomiono Edge Microgateway.
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Gdzie:
org
to nazwa organizacji Edge (musisz być administratorem organizacji).env
to środowisko w Twojej organizacji (np. testowe lub produkcyjne).key
to klucz zwrócony wcześniej przez polecenie konfiguracji.secret
to klucz zwrócony wcześniej przez polecenie konfiguracji.
Przykład
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
- Spróbuj wywołać interfejs API kilka razy w krótkim odstępie czasu. Po drugim wywołaniu Edge Microgateway zwraca ten błąd:
{"message":"SpikeArrest engaged","status":503}
Dzieje się tak, ponieważ nagłe aresztowanie wygładza liczbę wywołań, które można wykonać w określonej jednostce czasu. W tym przypadku możesz wykonać 10 połączeń w ciągu minuty lub jedno co 6 sekund.
Więcej informacji znajdziesz w sekcji „Jak działa szybkie zatrzymanie” artykułu Używanie wtyczek.
Dodatkowy udział: dodanie wtyczki limitu
Korzystając z tego samego wzorca, który służy do konfigurowania zatrzymywania skoków, możesz dodać inne wtyczki, np. wtyczkę limitu. Podobnie jak w przypadku aresztowania skokowego, wtyczka limitu jest dołączona do każdej instalacji Edge Microgateway. Limit określa liczbę wiadomości z żądaniami, które aplikacja może przesłać do interfejsu API w określonym przedziale czasu (w minutach lub godzinach).
Aby dowiedzieć się, jak działają limity, zapoznaj się z sekcją „Korzystanie z wtyczki limitów” w artykule Używanie wtyczek.
Część 6. Wyświetlanie statystyk w Apigee Edge
Mamy teraz w pełni funkcjonalną instancję Edge Microgateway. Zobaczmy, czym się ona stanie. Domyślnie moduł wtyczki Analytics jest dodawany do Edge Micro. Ten moduł dyskretnie przesyła dane analityczne z Edge Micro do Apigee, gdzie są one wykorzystywane przez system Edge Analytics. Zobaczmy:
- Zaloguj się w swojej organizacji w Apigee Edge.
- Wybierz Analytics > Wydajność serwera proxy.
- W panelu wydajności serwera proxy wybierz serwer proxy edgemicro_hello.
- Wykres zawiera informacje o wzorcach ruchu serwera proxy, w tym łączny ruch, średni czas odpowiedzi, średni czas odpowiedzi docelowej 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.