Konfigurowanie Edge Microgateway

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

Edge Microgateway wersja 2.3.x

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

  1. Jeśli nie zostało to zrobione wcześniej, zainicjuj Edge Microgateway (musisz to zrobić tylko raz):
    edgemicro init
    
  2. (Opcjonalnie) Wydrukuj pomoc dotyczącą polecenia edgemicroconfiguration:
    edgemicro configure -h
    
  3. 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:

  1. 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
    
  2. 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 to default,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ład edgemicro_hello lub edgemicro_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

  1. Zaloguj się w swojej organizacji w Apigee Edge.
  2. Kliknij PRZEŁĄCZ NA KLASYCZNE, aby przejść do klasycznego interfejsu Edge.
  3. W menu u góry wybierz Interfejsy API > Serwery proxy API.
  4. Na stronie Proxies API kliknij + Serwer proxy interfejsu API.
  5. W kreatorze tworzenia serwera proxy wybierz Odwrotny serwer proxy (najczęstszy).
  6. Kliknij Dalej.
  7. 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/
  8. Kliknij Dalej.
  9. Na stronie Zabezpieczenia kreatora wybierz Przekazywany (brak).
  10. Kliknij Dalej.
  11. Na stronie Hosty wirtualne w kreatorze zaakceptuj wartości domyślne.
  12. Kliknij Dalej.
  13. Na stronie kompilacji w kreatorze sprawdź ustawienia serwera proxy. Wybierz środowisko testowe.
  14. 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.
  1. W interfejsie użytkownika Edge (w wersji klasycznej) kliknij Publikowanie > Usługi.
  2. 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: /**
  3. Kliknij Importuj zasób.
  4. W sekcji Zasoby kliknij + Serwer proxy interfejsu API.
  5. Wybierz edgemicro-auth.
  6. 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ą:

  1. Kliknij Publish > Developers (Publikowanie > Programiści).
  2. Na stronie Produkty kliknij + Deweloper.
  3. 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:

  1. Kliknij Publikowanie > Aplikacje dla deweloperów.
  2. Na stronie Aplikacje dla deweloperów kliknij + Aplikacja dewelopera.
  3. Wypełnij stronę aplikacji dewelopera w ten sposób:
    1. Nazwa: EdgeMicroTestApp
    2. Wyświetlana nazwa: EdgeMicroTestApp
    3. Programista: jeśli masz konto programisty testowego, wybierz go. W tym samouczku możesz też skorzystać z usług dowolnego istniejącego programisty.
    4. Dane logowania:
      1. Wybierz datę wygaśnięcia: nigdy.
      2. Kliknij + Usługa i wybierz EdgeMicroTestProduct (utworzoną właśnie usługę).
  4. Kliknij Zapisz.
  5. Jesteś z powrotem na stronie z listą aplikacji dla deweloperów.
  6. Wybierz utworzoną przed chwilą aplikację EdgeMicroTestApp.
  7. 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.

  1. 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
    
  2. (Opcjonalnie) Wydrukuj informacje pomocy dotyczące polecenia edgemicro start.
    edgemicro start -h
    
  3. 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

  1. W osobnym oknie terminala wpisz cd do tego samego katalogu, w którym uruchomiono Edge Microgateway.
  2. 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 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

  1. 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.
  2. 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.

  1. (Opcjonalnie) Wyświetl pomoc dotyczącą polecenia token get:
    edgemicro token get -h
    
  2. 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

  1. Otwórz plik ~/.edgemicro/org-env-config.yaml. Zobacz też sekcję „Gdzie jest zainstalowana Edge Microgateway” w artykule Instalowanie Edge Microgateway.
  2. 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
    
  3. Poza tym w pliku org-env-config.yaml upewnij się, że wtyczka protokołu OAuth została dodana do elementu plugins:sequence w ten sposób:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
    
  4. 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

  1. 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.
  2. 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

  1. Otwórz plik ~/.edgemicro/org-env-config.yaml. Zobacz też sekcję „Gdzie jest zainstalowana Edge Microgateway” w artykule Instalowanie Edge Microgateway.
  2. 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
    
  3. Poza tym w pliku org-env-config.yaml upewnij się, że wtyczka protokołu OAuth została dodana do elementu plugins:sequence w ten sposób:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
        
    
  4. 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.

  1. Otwórz plik ~/.edgemicro/org-env-config.yaml. Zobacz też sekcję „Gdzie jest zainstalowana Edge Microgateway” w artykule Instalowanie Edge Microgateway.
  2. Dodaj ten element. Możesz dodać go w dowolnym miejscu w pliku.
       spikearrest:
          timeUnit: minute   
          allow: 10   
          buffersize: 0   
    
  3. Dodaj spikearrest do elementu edgemicro: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 
    
  4. Zapisz plik konfiguracyjny.
  5. 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
    
  6. 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:

  1. Zaloguj się w swojej organizacji w Apigee Edge.
  2. Wybierz Analytics > Wydajność serwera proxy.
  3. W panelu wydajności serwera proxy wybierz serwer proxy edgemicro_hello.
  4. 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.