Edge Microgateway einrichten und konfigurieren

<ph type="x-smartling-placeholder"></ph> Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

Edge Microgateway Version 3.3.x

Übersicht

Nach Abschluss der Schritte in diesem Einrichtungsleitfaden haben Sie einen vollständig konfigurierten, funktionierenden Edge. Microgateway-Installation zur Verarbeitung von API-Anfragen Sie testen die Einrichtung, indem Sie sichere API-Aufrufe über Edge Microgateway an ein Backend-Ziel. Sie werden auch lernen, Spike Arrest-Plug-in auf das Microgateway.

Dieser Leitfaden ist in folgende Teile gegliedert:

Voraussetzung: Edge Microgateway installieren

Folgen Sie der Anleitung unter Edge installieren Microgateway Wenn Sie die Installation abgeschlossen haben, können Sie die Schritte in dieser .

Teil 1: Edge konfigurieren Mikrogateway

In diesem Teil konfigurieren Sie Edge Microgateway über einen Befehlszeilenbefehl. an mit Apigee Edge.

Konfigurationsschritte für Apigee Edge Cloud

Führen Sie die folgenden Schritte aus, um Edge Microgateway mit Apigee Edge Cloud zu verwenden:

  1. Initialisieren Sie Edge Microgateway (Sie müssen diesen Schritt nur einmal ausführen):
    edgemicro init
    
  2. Die Konfigurationsdatei „default.yaml“ wurde in Ihrem Zuhause platziert in einem Unterverzeichnis namens .edgemicro. Überprüfen Sie jetzt, ob diese Datei existiert:
    ls ~/.edgemicro
    default.yaml
    

    Hinweis : In der Edge Microgateway-Dokumentation verweisen wir auf das Basisverzeichnis. mit der Tilde (~), einer UNIX-Verknüpfung. Wenn Sie Windows verwenden, eine Shell ausführen, die die Tilde nicht unterstützt, müssen Sie die entsprechende Umgebungsvariable für die Tilde in Befehlen, die auf das Basisverzeichnis verweisen. Für Beispiel: %USERPROFILE%/.edgemicro.

  3. Alle CLI-Befehle haben eine Hilfefunktion. Hilfe für edgemicro drucken config-Befehl verwenden:
    edgemicro configure -h
    
  4. Führen Sie den folgenden Befehl aus, um Edge Microgateway zu konfigurieren:
    edgemicro configure -o [org] -e [env] -u [username] 
    

    Wobei:

    • org: Name Ihrer Edge-Organisation (Sie müssen eine Organisation sein) Administrator).
    • env: Eine Umgebung in Ihrer Organisation, z. B. „test“ oder prod).
    • username: Die mit Ihrem Apigee-Konto.

      Hinweis:Der Befehl „configure“ lässt zusätzliche Parameter zu. Eine vollständige finden Sie unter Edge Microgateway für Apigee Edge Cloud konfigurieren.

Beispiel

edgemicro configure -o docs -e test -u jdoe@example.com

Ausgabe

./edgemicro configure -o docs -e test -u jdoe@apigee.com
password:
current nodejs version is v12.5.0
current edgemicro version is 3.1.0
password:
file doesn't exist, setting up
Give me a minute or two... this can take a while...
App edgemicro-auth deployed.
checking org for existing KVM
error checking for cert. Installing new cert.
creating KVM
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/docs-test-config.yaml

vault info:
 -----BEGIN CERTIFICATE-----
MIICpDCCAYwCCQCQ2mJZJGbPPTANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3QwHhcNMTcwOTA3MjA0ODA4WhcNMTcwOTA4MjA0ODA4WjAUMRIwEAYD
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDw
yzmqi5CelqqtTr6IaFe1ssrMXEDnNtkBh95U6F5zHLsNQhJcyNUAO9um6FLMSqSd
fTztXfWUZzDgmbb6sfbx/9cqpvQ8TIjxyIz8xGM9H4legRQmsCQoYGkLjpPE5ZOa
wZrI5IaVm8LY6vbopPFwxgKOQ9bphx6k9Na055DmNyZAOTMD+4I0m/RdsrnZnYih
3DaFj1tXHKZI1jfAt/QOif5Nmk4+JckYwF+9HBysWUbbvj/gnBjVYF2Isb7q7oFD
lPGhwFoIebMqHMWD8lG7+9RJDO9dDV6f1g1/9waIrq1D+MoVXos9VMstNrPp0cKF
Ue+lAkct8tylH+2MosF7AgMBAAEwDQYJKoZIhvcNAQELBQADggEBAJMRdcQh3ayy
csVVT4TYwxV7MKWRfhDRz6X+MM9frB+Z7sI4+ZoZbXKOoZI2hSjmbdLpkNR/m9eJ
+1Uk0JKmpSY7Q+1rRrvcHsWNysGf4z+zDJXYECTrtSnXKBXtb9SJ8JAfoZOQD0lA
zmKuJjQMLTdiYMHOBR6ZWnaKaRvrQwGHcQrheJm4a90XgZF6jcRR8CPrBzkmsbCp
IU/Ux3E17wDGYPxjJs5otyQG8rN/88RGyaSeXK8rjKr9D4KFGJeasXBKmTG2afAr
yfBvS4h6s42FCOR/eLpmMllVoO9up71Fa3EtV+aK+FNNY9uMbgUHeLQE7z9nn06q
PTmvExZLkLQ=
-----END CERTIFICATE-----

The following credentials are required to start edge micro
  key: 27ee39567c75e4567a66236cbd4e86d1cc93df6481454301bd5fac4d3497fcbb
  secret: 4618b0008a6185d7327ebf53bee3c50282ccf45a3cceb1ed9828bfbcf1148b47
    

Konfigurationsschritte für die Apigee Private Cloud

Führen Sie die folgenden Schritte aus, um Edge Microgateway mit Apigee Private Cloud zu verwenden:

  1. Initialisieren Sie Edge Microgateway (Sie müssen diesen Schritt nur einmal ausführen):
    edgemicro init
    
  2. Drucken Sie Hilfeinformationen für den Befehl edgemicro privateconfigure. Ich Sie können auf diese Weise Hilfe für alle Edge Microgateway-Befehlszeilenbefehle oder Befehlsoptionen ausgeben.
    edgemicro private configure -h
    
  3. Führen Sie folgenden Befehl aus: Sie erfordert Standardinformationen zu Ihrem Apigee Edge Private Cloud-Konto: Organisationsname, Umgebungsname, Nutzername (E-Mail-Adresse), Passwort, die IP-Adresse des Verwaltungsservers und des Routers. Sie müssen ein Edge-Organisationsadministrator sein, um diese Funktion zu verwenden Befehl:
    edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]
    

    Wobei:

    • org ist der Name Ihrer Edge-Organisation (Sie müssen eine Organisation sein) Administrator).
    • env ist eine Umgebung in Ihrer Organisation, z. B. „test“ oder prod).
    • runtime_url ist die Laufzeit-URL für Ihre private Cloud Instanz.
    • mgmt_url ist die URL des Verwaltungsservers für Ihr private Cloud-Instanz.
    • username ist die mit Ihrem Apigee verknüpfte E-Mail-Adresse. Konto.
    • virtual_host ist eine durch Kommas getrennte Liste von virtuellen Hosts Namen. Die Standardwerte sind default,secure

Beispiel

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

Wenn Sie den virtuellen Host-Alias myorg-test.mycompany.com haben, verwenden Sie den wie in diesem Beispiel dargestellt:

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

Ausgabe

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 KVM
error checking for cert. Installing new cert.
creating KVM
adding private_key
adding public_key
configuring host http://192.168.52.106:9001 for region dc-1

saving configuration information to: $HOME/.edgemicro/jdoe-test-config.yaml
vault info: 
-----BEGIN CERTIFICATE----- 
MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWsKWBDP9o
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: a3f8f3dfe39158fc3c50b274f0af2234246e0d5f6ea4ad09389b645147151ba3
   secret: 3e9904802fb3c0e8ca408128a11119cf13546d54dac10ace944c097a726a1263

edgemicro configuration complete!
    

Installation überprüfen

Führen Sie den folgenden Befehl aus, um die Installation zu überprüfen. Wenn keine Fehler gemeldet werden, ist alles eingerichtet. sodass Sie das Edge Microgateway erfolgreich starten können.

edgemicro verify -o [org] -e [env] -k [key] -s [secret]

Wobei:

  • org ist der Name Ihrer Edge-Organisation (Sie müssen eine Organisation sein) Administrator).
  • env ist eine Umgebung in Ihrer Organisation, z. B. „test“ oder prod).
  • key ist der Schlüssel, der zuvor vom „configure“ zurückgegeben wurde. .
  • secret ist der Schlüssel, der zuvor vom „configure“ zurückgegeben wurde. .

Beispiel

edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f624ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0156d7132afbd03625bbd85dc34ebfefae4f23fbcb3c

Informationen zur Konfiguration

Die gesamte bisherige Konfiguration ermöglicht es Edge Microgateway, sich selbst mit Apigee zu starten Edge Nach dem erfolgreichen Bootstrapping ruft Edge Microgateway eine Nutzlast Konfigurationsinformationen von Apigee Edge.

Wofür werden diese Konfigurationsinformationen verwendet? Wie wir im nächsten Teil erfahren werden, Edge Microgateways muss beim Start eine Liste spezieller Edge- Microgateway-fähige API-Proxys von Apigee Edge Im nächsten Teil dieser Anleitung einen Microgateway-fähigen Proxy zu erstellen. Edge Microgateway beschränkt Clients auf den Aufruf nur der APIs vor diesen Microgateway-fähigen API-Proxys und Clients sind (standardmäßig) erforderlich, stellen Sie für jeden Aufruf ein gültiges Sicherheitstoken bereit. Weitere Informationen zu diesen Proxys finden Sie unter "Was müssen Sie mehr über Edge Microgateway-Proxys erfahren“ in der Übersicht über Edge Microgateway

Als Edge-Organisationsadministrator möchten Sie sicher wissen, dass Edge Microgateway-fähige Proxys vom die zu Edge-Produkten hinzugefügt wurden, genau wie alle anderen Proxys. Durch die Nutzung von Produkten und können Sie clientseitige Sicherheitstokens generieren, um den Zugriff auf APIs zu steuern, die über Edge Microgateway. Auch hier sind die beteiligten Muster identisch mit der Arbeit mit API-Proxys, und Entwickler-Apps auf Apigee Edge. Wenn du dich über Produkte informieren möchtest, beginne mit Was ist ein API-Produkt? in Edge Dokumentation.

Als Nächstes sehen wir uns an, wie Sie Edge Microgateway-kompatible Proxys erstellen, und danach Edge Microgateway starten und die Einrichtung testen.

Teil 2: Entitäten erstellen auf Apigee Edge

In diesem Teil erstellen Sie die folgenden Entitäten in Edge:

  • Ein Microgateway-aware Proxy: Dies ist ein spezieller Proxy, den Edge Microgateway anhand von Start-up. Microgateway-fähige Proxys haben eine Namenskonvention, die Sie befolgen müssen: der Name muss mit edgemicro_ beginnen. Beispiel: edgemicro_hello oder edgemicro_userinfo Beim Start von Edge Microgateway werden von Edge eine Liste von Microgateway-fähigen Proxys aus derselben Edge-Organisation und -Umgebung aus das Sie beim Start von Edge Microgateway angegeben haben.

    Für jeden Microgateway-fähigen Proxy ruft Edge Microgatway die Ziel-URL des Proxys ab und und ihren Basispfad. Microgateway-fähige Proxys bieten auch eine bequeme Möglichkeit, Analysen zu verknüpfen Daten, die von Edge Microgateway mit einem Proxy auf der Edge-Plattform generiert wurden. Als Microgateway API-Aufrufe verarbeitet, überträgt es Analysedaten asynchron an Edge. Nun werden Analytics-Daten angezeigt. in der Edge Analytics-Benutzeroberfläche unter den Microgateway-fähigen Proxynamen, wie es auch bei anderen Proxy.
  • Eine Produkt-, Entwickler- und Entwickler-App: Edge Microgateway verwendet Produkte, Entwickler und Entwickler-Apps, um die Sicherheit von OAuth2-Zugriffstokens oder API-Schlüsseln zu aktivieren. Wenn Edge Microgateway wird gestartet und alle Produktkonfigurationen von Ihrem Apigee Edge werden heruntergeladen. Unternehmen. Es verwendet diese Informationen, um API-Aufrufe zu überprüfen, die über Edge Microgateway mit API-Schlüssel oder OAuth2-Zugriffstokens

1. Erstellen einen Edge Microgateway-fähigen API-Proxy in Edge

  1. Melden Sie sich in Ihrer Organisation in Apigee Edge an.
  2. Wählen Sie Entwickeln > API-Proxys.
  3. Klicken Sie auf + Proxy. Der Assistent zum Erstellen eines Proxys wird aufgerufen.
  4. Wählen Sie auf der ersten Seite des Assistenten Reverse-Proxy (am häufigsten) aus.
  5. Klicken Sie auf Weiter.
  6. Konfigurieren Sie die Konfiguration auf der Seite „Details“ des Assistenten wie folgt. Assistenten ausfüllen Genau wie hier gezeigt:
    • Proxy-Name: edgemicro_hello
    • Proxy-Basispfad: /hello
    • Vorhandene API: http://mocktarget.apigee.net/
  7. Klicken Sie auf Weiter.
  8. Wählen Sie auf der Seite „Sicherheit“ des Assistenten Pass through (none) aus.
  9. Klicken Sie auf Weiter.
  10. Übernehmen Sie auf der Seite Virtual Hosts (Virtuelle Hosts) des Assistenten die Standardeinstellungen.
  11. Klicken Sie auf Weiter.
  12. Überprüfen Sie auf der Build-Seite des Assistenten Ihre Proxy-Einstellungen. Achten Sie darauf, dass die test ausgewählt ist.
  13. Klicken Sie auf Build and Deploy (Erstellen und bereitstellen).

2. API-Produkt erstellen

<ph type="x-smartling-placeholder">
  1. Wählen Sie im seitlichen Navigationsmenü Veröffentlichen > API-Produkte aus.
  2. Klicken Sie auf + API-Produkt.
  3. Geben Sie die Produktdetails aus der folgenden Tabelle ein:
    Feld Beschreibung
    Name EdgeMicroTestProduct
    Anzeigename Edge Microgatway-Testprodukt
    Umgebung Test
    Zugriff Öffentlich
    Schlüsselgenehmigungstyp Automatisch
  4. Fügen Sie im Abschnitt mit den API-Ressourcen den gerade erstellten API-Proxy und den edgemicro-auth-Proxy hinzu: <ph type="x-smartling-placeholder">
      </ph>
    • edgemicro_hello
    • edgemicro-auth
  5. Klicken Sie auf Speichern.

3. Erstellen: Entwickler

Für diese Anleitung können Sie einen beliebigen Entwickler für den nächsten Schritt verwenden. für die Erstellung einer Entwickler-App. Wenn Sie möchten, können Sie jetzt einen Testentwickler erstellen:

  1. Klicken Sie im seitlichen Navigationsmenü auf Veröffentlichen > Entwickler.
  2. Klicken Sie auf + Entwickler.
  3. Füllen Sie das Dialogfeld aus, um einen Testentwickler zu erstellen.

4. Entwickler-App erstellen

Sie verwenden die Clientanmeldedaten dieser Anwendung, um sichere API-Aufrufe über Edge Microgateway:

  1. Klicken Sie im seitlichen Navigationsmenü auf Veröffentlichen > Apps.
  2. Klicken Sie auf + App. Die Seite „Entwickler-App-Details“ wird angezeigt.
  3. Füllen Sie die Developer App-Seite wie folgt aus: <ph type="x-smartling-placeholder">
      </ph>
    1. Name:EdgeMicroTestApp
    2. Anzeigename:EdgeMicroTestApp
    3. Entwickler:Wenn Sie einen Testentwickler erstellt haben, wählen Sie ihn aus. Alternativ können Sie für die Zwecke dieses Tutorials erstellen.
    4. Anmeldedaten: <ph type="x-smartling-placeholder">
        </ph>
      1. Wählen Sie „Ablaufdatum“: Nie aus.
      2. Klicken Sie auf + Produkt und wählen Sie EdgeMicroTestProduct aus. (das Produkt, das Sie gerade erstellt haben)
  4. Klicken Sie auf Speichern.
  5. Sie befinden sich wieder auf der Seite mit der Apps-Liste.
  6. Wählen Sie die App aus, die Sie gerade erstellt haben: EdgeMicroTestApp.
  7. Klicken Sie neben Consumer Key (Consumer-Key) und Consumer Key (Consumer-Key) auf Anzeigen. Secret:

Teil 3: Edge Microgateway betreiben

Nachdem Sie nun ein konfiguriertes Edge Microgateway und mindestens ein Edge Microgateway-fähiges Gateway haben, Proxy auf Edge, ist es an der Zeit, Edge Microgateway zu starten. Ein Edge Microgateway-HTTP-Server wird ausgeführt auf Ihrem lokalen Computer ausführen und Sie führen API-Aufrufe direkt an diesen Server.

1. Edge Microgateway starten

Edge mit dem Befehl edgemicro start starten Microgateway.

  1. Achten Sie darauf, dass Sie die Schlüssel haben, die bei Ausführung von edgemicro zurückgegeben wurden. konfigurieren. Die Ausgabe sah in etwa so aus:
    You need key and secret while starting edgemicro instance
    
    key: da4778e7c240a5d4585fc559eaba5083328828bc9f3a7f583e8b73e
    secret: 3aad7439708b4aeb38ee08e82189921ad00e6fc1ba8a8ae9f929ee2
    
  2. Optional: Drucken Sie Hilfeinformationen zum Befehl edgemicro start.
    edgemicro start -h
    
  3. Führen Sie den folgenden Befehl aus, um Edge Microgateway zu starten:
    edgemicro start -o [org] -e [env] -k [key] -s [secret]
    

    Wobei:

    • org ist der Name Ihrer Edge-Organisation (Sie müssen eine Organisation sein) Administrator).
    • env ist eine Umgebung in Ihrer Organisation, z. B. „test“ oder prod).
    • key ist der Schlüssel, der zuvor vom „configure“ zurückgegeben wurde. .
    • secret ist der Schlüssel, der zuvor vom „configure“ zurückgegeben wurde. .

    Beispiel

    edgemicro start -o docs -e test -k 701e70e718ce6dc1880616b3c39177d64a88754d615c7a4e1f78b6181d000723 -s 05c14356e42d136b83dd135cf8a18531ff52d7299134677e30ef4e34ab0cc824
    

    Ausgabe

    Mit dem Startbefehl werden viele Konfigurationsinformationen von Apigee Edge abgerufen, zum Terminal-Fenster scrollt). In der Ausgabe sehen Sie eine Liste Proxys und Produkte, die gefunden wurden. Am Ende der Ausgabe sollten Sie etwas sehen, wie hier:

    ...
    
    current nodejs version is v12.5.0
    current edgemicro version is 3.1.0
    info: jwk_public_keys download from null returned 200 undefined
    info: jwt_public_key download from https://docs-test.apigee.net/edgemicro-auth/publicKey returned 200 OK
    info: products download from https://docs-test.apigee.net/edgemicro-auth/products returned 200 OK
    info: config download from https://edgemicroservices-us-east-1.apigee.net/edgemicro/bootstrap/organization/docs/environment/test returned 200 OK
    PROCESS PID : 17991
    
  4. Überprüfen Sie den Microgateway-Status. Gehen Sie in einem anderen Terminalfenster "cd" in das Verzeichnis, Sie haben Edge Micro gestartet und geben folgenden Befehl ein:
    edgemicro status
    current nodejs version is v12.5.0
    current edgemicro version is 3.1.0
    edgemicro is running with 8 workers
    

Was ist passiert?

Eine Nutzlast von Edge Die Konfigurationsinformationen von Microgateway werden von Apigee Edge heruntergeladen und lokal im Cache gespeichert. Zu diesen Informationen gehören:

  • Der öffentliche Schlüssel, den wir zuvor erstellt und in einer verschlüsselten Key Value Map (KVM) gespeichert haben.
  • Eine Darstellung aller Edge Microgateway-fähigen Proxys, die im Organisation/Umgebung. Dies sind alle Proxys, die mit dem Präfix edgemicro_ hat.
  • Eine Darstellung aller API-Produkte, die in der Organisation/Umgebung.

Mit diesen Informationen weiß Edge Microgateway, welche Proxys und Proxy-Pfade es ausführen darf . Die Produktinformationen werden verwendet, um die Sicherheit zu gewährleisten (genau wie bei jeder anderen API). auf Apigee Edge, wo Entwickler-App-Schlüssel eine Verknüpfung mit Produkten haben). Wir gehen die Schritte zum Sichern von Edge Microgateway.

2. Edge Microgateway testen

Wenn Edge Microgateway ausgeführt wird, können Sie den Proxy aufrufen. Die Konfiguration für den Der Proxy edgemicro_hello wurde von Edge heruntergeladen, als du Edge gestartet hast. Microgateway. Denken Sie daran, dass der Proxy-Basispfad /hello ist.

Um Edge Microgateway zu testen, beginnen wir mit dem Basispfad und fügen einen Ressourcenpfad hinzu /echo. Beachten Sie, dass alles, was auf den Basispfad folgt (einschließlich Abfrageparameter) wird einfach an das Back-End-Ziel weitergegeben:

curl -i http://localhost:8000/hello/echo
{"error":"missing_authorization","error_description":"Missing Authorization header"}

Der Fehler tritt auf, weil Sie mit der Anfrage keinen gültigen API-Schlüssel oder kein Zugriffstoken gesendet haben. Von Standardmäßig erfordert Edge Microgateway bei jedem API-Aufruf entweder einen API-Schlüssel oder ein Zugriffstoken. In Im nächsten Schritt der Anleitung werden wir diese API ordnungsgemäß sichern und Ihnen zeigen, wie Sie ein gültiges Zugriffs-Token verwenden und der Anfrage hinzufügen.

4. Edge Microgateway beenden

  1. Führen Sie in einem separaten Terminalfenster cd in dasselbe Verzeichnis durch, wobei haben Sie Edge Microgateway gestartet.
  2. Geben Sie den Befehl „stop“ ein:
    edgemicro stop
    

Teil 4: Secure Edge Mikrogateway

Sie können API-Aufrufe über Edge Microgateway mit einem API-Schlüssel oder einem Zugriff sichern Token.

Sichere API-Aufrufe mit einem OAuth2-Zugriffstoken

So authentifizieren Sie API-Aufrufe mit einem OAuth2-Zugriffstoken:

1. Erforderliche Schlüssel abrufen

  1. Navigieren Sie in der Edge-Benutzeroberfläche zu der Entwickler-App, die Sie zuvor erstellt haben. Der Name der App war EdgeMicroTestApp.
  2. Zeigen Sie auf der Seite der Entwickler-App den Consumer Key und das Consumer Secret an und kopieren Sie sie. Diese Werte sind erforderlich, um im nächsten Schritt ein Zugriffstoken abzurufen.

2. Zugriffstoken abrufen

Es gibt zwei Möglichkeiten, ein Zugriffstoken zu erhalten. Wir zeigen Ihnen beide Methoden.

Zugriffstoken über die Befehlszeile abrufen

Die erste Methode ist praktisch und folgt dem Muster, das wir überall verwendet haben. der Anleitung. Die zweite Methode ist im Allgemeinen nützlicher für Client-Apps. Entwickler, die Tokens anfordern müssen. Der tatsächliche Tokenendpunkt wird im edgemicro-auth-Proxy, der bei der Konfiguration von Edge bereitgestellt wurde Microgateway.

  1. Optional: Hilfe zum Befehl token get:
    edgemicro token get -h
    
  2. Generieren Sie das Token und ersetzen Sie dabei Ihre Werte für Consumer Key und Consumer Secret aus der Entwickler-App, die Sie in Apigee Edge in -i und -s erstellt haben Parameter:
    edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]
    

    Wobei:

    • org ist der Name Ihrer Edge-Organisation (Sie müssen eine Organisation sein) Administrator).
    • env ist eine Umgebung in Ihrer Organisation, z. B. „test“ oder prod).
    • consumer_id ist die Verbraucher-ID in der Entwickler-App, die du die zuvor erstellt wurden.
    • consumer_secret ist das Consumer-Secret im Entwickler Zuvor erstellte App.

    Beispiel

    edgemicro token get -o docs -e test -i G0IAeU864EtBo99NvUbn6Z4CBwVcS2 -s uzHTbwNWvoSmOy
    

    Ausgabe (Beispiel)

    current nodejs version is v12.5.0
    { token: 'eyJ0eXAiOiJKV1QiLCJhbGciSUzI1NiJ9.eyJhcHBsaWNhdGl
    vbl9uYW1lIjoiNWNiMGY0tOWMzOC00YmJjLWIzNzEtZGMxZTQzOGYxZGMxI
    iwiY2xpZW50X2lkIjoiNVVdBWEdvSU9lbzYwYWV3OTRQN0c1TUFaRTNhSnA
    iLCJzY29wZXMiOltdLCJhcGlfcHJvjdF9saXN0IjpbIsVkZ2VNaWNyb1Rlc
    3RQcm9kdWN0IlmlhdCI6MTQ3ODIwODMzMiwiZXhwIjoxNDc4MjEwMTMxfQ.
    v3Q8Rs0W9FO_XpERwIAMMXhjGamRmmmWgrAy1wJv0-99oajx5ASI5qjNubM
    nCF14xxwlVXHcz1VfedA8Nx7Ih145zhWWuPKL9muzhXXnVBRFeBMeeLqJk4
    QQ7Bhst7xH_68nJSTE20Egu95DHOCUemfrepDFH0VggY4BmzvwLkBNfz_te
    E_YqwKZbpGOLMdKK1vMk0fk0x19SieIMS_aJYeOAklrzUhnFxWJFrsAWsax
    NLx_BbQcZzYfK1JSDUrhRNVBuPHMnGjNA_oHw2J4qa6Hsp62PfchG-DIW_t
    -0BFnYf3rYXmqyNORqFrOMdl4VxqQ' }
    

Optional: Token mit der API abrufen

Wenn Sie es gewohnt sind, Edge-Proxys mit curl oder einem anderen HTTP-Client aufzurufen, wissen Sie, dass Sie den Tokenendpunkt direkt aufrufen können, anstatt das edgemicro-Element zu verwenden. token-Befehl. Hier ist ein curl-Beispiel. Ersetzen Sie einfach die Namen Ihrer Organisation und Umgebung in die URL und übergeben Sie die durch einen Doppelpunkt getrennten Werte für "Consumer Key:Consumer Secret" in einem Authentifizierungsheader:

curl -i -X POST "http://[org]-[env].apigee.net/edgemicro-auth/token" -d '{ "client_id": "your consumer key", "client_secret": "your consumer secret", "grant_type": "client_credentials" }' -H "Content-Type: application/json"

Wobei:

  • org ist der Name Ihrer Edge-Organisation (Sie müssen eine Organisation sein) Administrator).
  • env ist eine Umgebung in Ihrer Organisation, z. B. „test“ oder prod).
  • client_id ist die Verbraucher-ID in der von dir erstellten Entwickler-App .
  • client_secret ist das Consumer-Secret in der Entwickler-App, die zuvor erstellt wurden.

Ausgabe (Beispiel)

Mit dem Befehl unabhängig davon, ob Sie den CLI-Befehl edgemicro token oder den Befehl mithilfe von curl ein signiertes Zugriffstoken zurück, das für Clientaufrufe verwendet werden kann. Etwa so:

MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFsnhB0Yvg6JKWxKWBDP9o
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik241yfBku7olooXKRKTRKOUoXa
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. Konfiguration in Edge Microgateway prüfen

  1. Öffnen Sie die Datei $HOME/.edgemicro/org-env-config.yaml. Weitere Informationen finden Sie unter . Wo ist Edge Microgateway installiert, wenn Sie diese Datei nicht finden können.
  2. Achten Sie darauf, dass diese Eigenschaften des OAuth-Plug-ins auf false gesetzt sind. Sie sind falsch, überprüfen Sie Folgendes:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
    
  3. Achten Sie außerdem darauf, dass das OAuth-Plug-in in der Datei org-env-config.yaml wie folgt zum plugins:sequence-Element hinzugefügt:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
    
  4. Wenn Sie Änderungen an der Datei vornehmen, laden Sie diese neu in den Edge Microgateway-Instanz Mit diesem Befehl wird Edge Microgateway ohne Ausfallzeiten neu konfiguriert:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Wobei:

    • org ist der Name Ihrer Edge-Organisation (Sie müssen eine Organisation sein) Administrator).
    • env ist eine Umgebung in Ihrer Organisation, z. B. „test“ oder prod).
    • key ist der Schlüssel, der zuvor vom „configure“ zurückgegeben wurde. .
    • secret ist der Schlüssel, der zuvor vom „configure“ zurückgegeben wurde. .

    Beispiel

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
    

4. API sicher aufrufen

Mit einem Zugriffstoken können Sie jetzt den API-Aufruf sicher ausführen. Beispiel:

  curl -i -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhcHBsaWNhdGlvbl
9uYW1lIjoiYmU2YmZjYjAtMWQ0Ni00Y2IxLWFiNGQtZTMxNzRlNTAyMDZkIiwiY2xpZW50X2lkIjoiOGxTTTVIRHdyM
VhIT1ZwbmhURExhYW9FVG5STVpwWk0iLCJzY29wZXMiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIk1pY3JvZ2F0ZXdh
eVRlQcm9kdWN0Il0sImCI6MTQzNTM0NzY5MiwiZXhwIjoxNDM1MzQ5NDkxfQ.PL30Y6uK1W1f2ONPEsBDB_BT31c6
IsjWGfwpz-p6Vak8r767tAT4mQAjuBpQYv7_IU4DxSrnxXQ_q536QYCP4p4YKfBvyqbnW0Rb2CsPFziy_n8HIczsWO
s0p4czcK63SjONaUpxV9DbfGVJ_-WrSdqrqJB5syorD2YYJPSfrCcgKm-LpJc6HCylElFDW8dHuwApaWcGRSV3l5Wx
4A8Rr-WhTIxDTX7TxkrfI4THgXAo37p3au3_7DPB_Gla5dWTzV4j93xLbXPUbwTHzpaUCFzmPnVuYM44FW5KgvBrV0
64RgPmIFUxSqBWGQU7Z1w2qFmWuaDljrMDoLEreI2g" http://localhost:8000/hello/echo

Die API gibt Header und andere Informationen vom simulierten Server zurück.

API mit einem API-Schlüssel sichern

Wenn Sie einen API-Schlüssel für die Autorisierung verwenden möchten, gehen Sie so vor:

1. API-Schlüssel abrufen

  1. Navigieren Sie in der Edge-Benutzeroberfläche zu der Entwickler-App, die Sie zuvor erstellt haben. Der Name der App war EdgeMicroTestApp.
  2. Zeigen Sie auf der Seite der Entwickler-App den Consumer-Key an und kopieren Sie ihn. Dieser Wert entspricht der API Schlüssel. Sie verwenden diesen Schlüssel für authentifizierte API-Aufrufe.

2. Konfiguration in Edge Microgateway prüfen

  1. Datei öffnen $HOME/.edgemicro/org-env-config.yaml. Wo finde ich das? Edge Microgateway installiert ist, wenn Sie diese Datei nicht finden können.
  2. Achten Sie darauf, dass diese Eigenschaften des OAuth-Plug-ins auf false festgelegt sind. Sie sind falsch, ist standardmäßig aktiviert. Sie können dies jedoch überprüfen, wenn Sie möchten:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
    
  3. Achten Sie außerdem darauf, dass das OAuth-Plug-in in der Datei org-env-config.yaml wie folgt zum plugins:sequence-Element hinzugefügt:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
        
    
  4. Wenn Sie Änderungen an der Datei vornehmen, laden Sie diese neu in den Edge Microgateway-Instanz Mit diesem Befehl wird Edge Microgateway ohne Ausfallzeiten neu konfiguriert:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Wobei:

    • org ist der Name Ihrer Edge-Organisation (Sie müssen eine Organisation sein) Administrator).
    • env ist eine Umgebung in Ihrer Organisation, z. B. „test“ oder prod).
    • key ist der Schlüssel, der zuvor vom „configure“ zurückgegeben wurde. .
    • secret ist der Schlüssel, der zuvor vom „configure“ zurückgegeben wurde. .

    Beispiel

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c30177d64a88754d615c74e1f78b6181d
    

3. API mit einem API-Schlüssel sicher aufrufen

Rufen Sie die API mit dem Header x-api-key wie folgt auf: Der Consumer Key-Wert, den Sie kopiert haben, ist der API-Schlüssel. Standardmäßig erwartet Edge Microgateway, dass Sie den Schlüssel in einem Header namens x-api-key so:

curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"

Wobei:

  • apikey ist der Consumer Key-Wert, der von EdgeMicroTestApp.

Beispiel:

curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxd0ilYQ5szwuljr5bB'

Sie haben jetzt ein voll funktionsfähiges und sicheres Edge Microgateway. Im nächsten Teil der schauen wir uns Plug-ins an, die Edge Microgateway Funktionalität hinzufügen.

Teil 5: Spike Arrest hinzufügen Plug-in

In diesem Teil fügen wir Ihrer Edge-Instanz eine Ratenbegrenzungsfunktion namens Spike Arrest hinzu. Microgateway.

Was sind Plug-ins?

Ein Plug-in ist ein Node.js-Modul, das Edge Microgateway um Funktionen ergänzt. Plug-in-Module einem einheitlichen Muster folgen und an einem Edge Microgateway bekannten Speicherort gespeichert werden. um sie automatisch zu erkennen und zu laden. Weitere Informationen zu Plug-ins finden Sie in der Plug-ins verwenden

Spike Arrest-Plug-in hinzufügen

Ein Spitz Arrest-Plug-in schützt vor Traffic-Spitzen. Die Anzahl der verarbeiteten Anfragen wird gedrosselt. durch eine Edge Microgateway-Instanz.

In Edge Microgateway ist Spike Arrest als Plug-in-Modul implementiert. Zur Aktivierung müssen Sie um es der Konfigurationsdatei von Edge Microgateway hinzuzufügen.

  1. Öffne die Datei $HOME/.edgemicro/org-env-config.yaml..Wo Edge Microgateway installiert ist, wenn Sie diese Datei nicht finden können.
  2. Fügen Sie das folgende Element hinzu. Sie können es an einer beliebigen Stelle in der Datei hinzufügen.
       spikearrest:
          timeUnit: minute   
          allow: 10   
          buffersize: 0   
    
  3. Fügen Sie spikearrest zum edgemicro:sequence-Element hinzu, wie hier gezeigt. unten. Die Sequenzkonfigurationseigenschaft teilt Edge Microgateway mit, in welcher Reihenfolge ausgeführt werden.
    edgemicro:
      home: ../gateway
      port: 8000
      max_connections: -1
      max_connections_hard: -1
      logging:
        level: info
        dir: /var/tmp
        stats_log_interval: 60
      plugins:
        dir: ../plugins
      sequence:
        - oauth
        - spikearrest
    
  4. Speichern Sie die Konfigurationsdatei.
  5. Aktualisieren Sie Edge Microgateway mit dem Befehl reload. Sie müssen aus dem Verzeichnis, in dem Sie Edge Microgateway gestartet haben.
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Wobei:

    • org ist der Name Ihrer Edge-Organisation (Sie müssen ein Organisationsadministrator).
    • env ist eine Umgebung in Ihrer Organisation, z. B. „test“ oder prod).
    • key ist der Schlüssel, der zuvor vom „configure“ zurückgegeben wurde. .
    • secret ist der zuvor vom konfigurierten Befehl.

    Beispiel

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
    
  6. Versuchen Sie, die API mehrmals schnell hintereinander aufzurufen. Nach dem zweiten Anruf Microgateway gibt folgenden Fehler zurück:
    {"message":"SpikeArrest engaged","status":503}
    

Der Grund dafür ist, dass Spike Arrest die Anzahl der Anrufe, die über den Zeitraum angegebene Zeiteinheit. In diesem Fall können Sie also zehn Anrufe pro Minute oder einen alle sechs Anrufe tätigen. Sekunden.

Zusatzaufgabe: Kontingent-Plug-in

Nach demselben Muster wie bei der Konfiguration von Spike Arrest können Sie weitere Plug-ins wie das Kontingent-Plug-in. Wie bei Spike Arrest ist das Kontingent-Plug-in in jeder Edge Microgateway-Installation enthalten. A Kontingent gibt die Anzahl der Anfragenachrichten an, die eine App über eine angegebenen Zeitintervall (Minuten oder Stunden).

Teil 6: Ansehen Analysen in Apigee Edge

Wir haben jetzt eine voll funktionsfähige Edge Microgateway-Instanz. Mal sehen, wie es funktioniert. Standardmäßig wird das Modul des Analyse-Plug-ins zu Edge Micro hinzugefügt. Dieses Modul verschiebt von Edge Micro bis Apigee Edge, wo sie vom Edge Analytics-System verwendet werden. Sehen wir uns das genauer an:

  1. Melden Sie sich in Ihrer Organisation in Apigee Edge an.
  2. Wählen Sie Analytics > Proxy-Leistung.
  3. Wählen Sie im Proxy-Leistungs-Dashboard den edgemicro_hello-Proxy aus.
  4. Die Grafik zeigt Ihnen Informationen über die Traffic-Muster des Proxys, wie z. B. den gesamten Traffic, durchschnittliche Reaktionszeit, durchschnittliche Zielantwortzeit und mehr.

Weitere Informationen zu Edge Analytics-Dashboards finden Sie auf der Startseite der Analytics-Dashboards in der Edge-Dokumentation Weitere Informationen zu Plug-ins finden Sie unter Plug-ins verwenden.