Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione
Documentazione di Apigee X. Informazioni
Edge Microgateway versione 3.0.x
Panoramica
Dopo aver completato i passaggi di questa guida alla configurazione, avrai un Edge completamente configurato Installazione di microgateway in grado di elaborare le richieste API. Eseguirai il test della configurazione effettuando chiamate API sicure tramite Edge Microgateway a una destinazione del backend. Imparerai inoltre ad aggiungere di picco di arresto nel Microgateway.
Questa guida è suddivisa nelle seguenti parti:
- Prerequisito: installazione di Edge Microgateway
- Parte 1: configura Edge Microgateway
- Parte 2: Creare entità su Apigee Edge
- Parte 3: utilizza Edge Microgateway
- Parte 4: Secure Edge Microgateway
- Parte 5: aggiungi il plug-in Spike Arrest
- Parte 6: visualizza i dati di analisi su Apigee Edge
Prerequisito: installare Edge Microgateway
Segui le istruzioni in Installazione di Edge Microgateway. Una volta completata l'installazione, potrai seguire la procedura descritta in questa tutorial di Google Cloud.
Parte 1: configura Edge Microgateway
In questa parte utilizzerai un comando dell'interfaccia a riga di comando (CLI) per configurare Edge Microgateway a comunicare con Apigee Edge.
- Se utilizzi Apigee Edge Cloud, segui le istruzioni di Apigee Edge Passaggi per la configurazione di Google Cloud.
- Se stai utilizzando Apigee Private Cloud, segui la Apigee Edge Passaggi per il cloud privato.
Passaggi per la configurazione di Apigee Edge Cloud
Segui questi passaggi per utilizzare Edge Microgateway con Apigee Edge Cloud:
- Inizializza Edge Microgateway (devi eseguire questo passaggio una sola volta):
edgemicro init
- Un file di configurazione denominato file
default.yaml
è stato inserito nella tua casa in una sottodirectory denominata.edgemicro
. Verifica ora che questo file esiste:ls ~/.edgemicro default.yaml
Nota: nella documentazione di Edge Microgateway, facciamo riferimento alla home directory con la tilde (
~
), una scorciatoia UNIX. Se usi Windows, una shell che non supporta la tilde, dovrai sostituire il token variabile di ambiente per la tilde nei comandi che fanno riferimento alla home directory. Per esempio:%USERPROFILE%/.edgemicro
. - Tutti i comandi dell'interfaccia a riga di comando hanno una funzione di aiuto. Guida alla stampa per edgemicro
configura:
edgemicro configure -h
- Esegui questo comando per configurare Edge Microgateway:
edgemicro configure -o [org] -e [env] -u [username]
Dove:
org:
Il nome dell'organizzazione Edge (devi essere un'organizzazione) amministratore).env:
Un ambiente nella tua organizzazione, ad esempio test o prod).username:
L'indirizzo email associato al tuo Account Apigee.
Nota: il comando di configurazione consente parametri aggiuntivi. Per un consulta Configurazione di Edge Microgateway per Apigee Edge Cloud.
Esempio
edgemicro configure -o docs -e test -u jdoe@example.com
Output
./edgemicro configure -o docs -e test -u jdoe@apigee.com password: current nodejs version is v12.5.0 current edgemicro version is 3.0.2 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
Passaggi per la configurazione di Apigee Private Cloud
Segui questi passaggi per utilizzare Edge Microgateway con Apigee Private Cloud:
- Inizializza Edge Microgateway (devi eseguire questo passaggio una sola volta):
edgemicro init
- Stampa le informazioni della guida per il comando edgemicro private configure. Tu
in questo modo è possibile stampare la guida per qualsiasi comando o opzione dell'interfaccia a riga di comando di Edge Microgateway.
edgemicro private configure -h
- Esegui questo comando. Richiede informazioni standard su Apigee Edge
Account cloud privato: nome organizzazione, nome ambiente, nome utente (indirizzo email), password.
dell'IP del server di gestione
e dell'IP del router. Devi essere un amministratore dell'organizzazione Edge per utilizzare questo
:
edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]
Dove:
org
è il nome dell'organizzazione Edge (devi essere un'organizzazione) amministratore).env
è un ambiente della tua organizzazione (ad esempio test o prod).runtime_url
è l'URL di runtime per il tuo cloud privato in esecuzione in un'istanza Compute Engine.mgmt_url
è l'URL del server di gestione un'istanza cloud privato.username
è l'indirizzo email associato al tuo account Apigee .-
virtual_host
è un elenco di host virtuale separato da virgole i nomi degli utenti. I valori predefiniti sonodefault,secure
Esempio
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
oppure, se hai un alias host virtuale di myorg-test.mycompany.com
, useresti un
come questo:
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
Output
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!
Verifica l'installazione
Esegui questo comando per verificare l'installazione. Se non vengono segnalati errori, è tutto configurato correttamente e potrai avviare Edge Microgateway correttamente.
edgemicro verify -o [org] -e [env] -k [key] -s [secret]
Dove:
org
è il nome dell'organizzazione Edge (devi essere un'organizzazione) amministratore).env
è un ambiente della tua organizzazione (ad esempio test o prod).key
è la chiave restituita in precedenza dal comando .secret
è la chiave restituita in precedenza dal comando .
Esempio
edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f624ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0156d7132afbd03625bbd85dc34ebfefae4f23fbcb3c
Informazioni sulla configurazione
Tutta la configurazione eseguita finora consente a Edge Microgateway di eseguire il bootstrap in Apigee perimetrali. Una volta riuscito il bootstrap, Edge Microgateway recupera un payload di configurazione da Apigee Edge.
A cosa servono queste informazioni di configurazione? Come vedremo nella prossima parte quando viene avviato Edge Microgateway, deve ricevere un elenco di componenti Proxy API Microgateway-aware di Apigee Edge. Nella prossima parte di questo tutorial, per creare un proxy Microgateway-aware. Edge Microgateway limita i client a chiamare solo le API che utilizzano questi proxy API Microgateway-aware e i client dovranno (per impostazione predefinita) un token di sicurezza valido per ogni chiamata. Per ulteriori informazioni su questi proxy, consulta "Che cosa devi conoscere i proxy sensibili a Edge Microgateway" nella sezione Panoramica di Edge Microgateway.
In qualità di amministratore dell'organizzazione Edge, ti interesserà sapere che i proxy connessi a Edge Microgateway possono aggiunti ai prodotti Edge, proprio come qualsiasi altro proxy. Tramite l'uso di prodotti e strumenti di Google Cloud, puoi generare token di sicurezza specifici del client per controllare l'accesso alle API Microgateway Edge. Anche in questo caso, i pattern coinvolti sono identici a quelli utilizzati con qualsiasi proxy API. e app per sviluppatori su Apigee Edge. Se vuoi informazioni sui prodotti, inizia con Che cos'è un prodotto API? in Edge documentazione.
A seguire, vedremo come creare proxy connessi a Edge Microgateway, avvia Edge Microgateway e testa la configurazione.
Parte 2 - Creare entità su Apigee Edge
In questa parte creerai queste entità su Edge:
- Un
proxy sensibile al microgateway - Si tratta di un proxy speciale che Edge Microgateway può rilevare
avvio automatico. I proxy sensibili al Microgateway hanno una convenzione di denominazione che devi seguire: il nome
deve essere con
edgemicro_
. Ad esempio:edgemicro_hello
oedgemicro_userinfo
All'avvio, Edge Microgateway recupera da Edge un elenco di proxy sensibili al microgateway della stessa organizzazione e dello stesso ambiente Edge specificato all'avvio di Edge Microgateway.
Per ogni proxy sensibile al microgateway, Edge Microgatway recupera l'URL di destinazione del proxy e del suo percorso di base. I proxy Microgateway-aware offrono anche un modo conveniente per associare i dati e le analisi generati da Edge Microgateway con un proxy sulla piattaforma Edge. Come microgateway gestisce le chiamate API, invia i dati di analisi in modo asincrono a Edge. Vengono visualizzati i dati di Google Analytics nell'interfaccia utente di Edge Analytics sotto i nomi dei proxy microgateway-aware, come per qualsiasi altro proxy.
- Un prodotto, uno sviluppatore e un'app per sviluppatori - Edge Microgateway utilizza prodotti, sviluppatori e app di sviluppatori per attivare la sicurezza del token di accesso o delle chiavi API OAuth2. Quando Edge Microgateway si avvia, scarica tutte le configurazioni dei prodotti da Apigee Edge dell'organizzazione. Utilizza queste informazioni per verificare le chiamate API effettuate tramite Edge Microgateway con chiavi API o token di accesso OAuth2.
1. Crea un proxy API Edge Microgateway-aware su Edge
- Accedi alla tua organizzazione su Apigee Edge.
- Seleziona Sviluppo > Proxy API nel menu di navigazione laterale.
- Fai clic su + Proxy. Viene richiamata la procedura guidata Crea un proxy.
- Nella prima pagina della procedura guidata, seleziona Inverti proxy (più comune).
- Fai clic su Avanti.
- Nella pagina Dettagli della procedura guidata, configura come segue. Assicurati di compilare la procedura guidata
esattamente come mostrato:
- Nome proxy: edgemicro_hello
- Percorso di base proxy: /hello
- API esistente: http://mocktarget.apigee.net/
- Fai clic su Avanti.
- Nella pagina Sicurezza della procedura guidata, seleziona Passthrough (nessuno).
- Fai clic su Avanti.
- Nella pagina Host virtuali della procedura guidata, accetta i valori predefiniti.
- Fai clic su Avanti.
- Nella pagina Crea della procedura guidata, rivedi le impostazioni del proxy. Assicurati che test.
- Fai clic su Crea ed esegui il deployment.
2. Creare un prodotto
- Seleziona Pubblica > Prodotti API nel menu di navigazione laterale.
- Fai clic su + Prodotto API. Viene visualizzata la pagina Dettagli prodotto.
- Compila la pagina Dettagli prodotto come segue:
- Nome:EdgeMicroTestProduct
- Nome visualizzato: EdgeMicroTestProduct
- Ambiente: test e produzione
- Accesso:pubblico
- Key Approval Type (Tipo di approvazione chiave): automatico
- In Risorse, fai clic su +Proxy API
- Seleziona edgemicro-auth
- Fai di nuovo clic su +proxy API.
- Seleziona edgemicro_hello
- Seleziona + Risorsa personalizzata.
- Inserisci /**
- Seleziona di nuovo + Risorsa personalizzata.
- Inserisci /
- Fai clic su Salva.
3. (Facoltativo) Crea un sviluppatore di test
Ai fini di questo tutorial, puoi usare qualsiasi sviluppatore esistente per il passaggio successivo, la creazione di un'app sviluppatore. Se vuoi, però, puoi creare subito uno sviluppatore di test:
- Seleziona Pubblica > Sviluppatori nel menu di navigazione laterale.
- Fai clic su + Sviluppatore.
- Compila la finestra di dialogo per creare uno sviluppatore di test.
4. Creare un'app sviluppatore
Utilizzerai le credenziali client di questa app per effettuare chiamate API sicure tramite Microgateway Edge:
- Seleziona Pubblica > App nel menu di navigazione laterale.
- Fai clic su + App. Viene visualizzata la pagina dei dettagli dell'app sviluppatore.
- Compila la pagina dell'app sviluppatore come segue:
- Nome:EdgeMicroTestApp
- Nome visualizzato: EdgeMicroTestApp
- Sviluppatore: se hai creato uno sviluppatore di test, selezionalo. In alternativa, puoi utilizzare a qualsiasi sviluppatore esistente ai fini di questo tutorial.
-
Credenziali:
- .
- Seleziona Scadenza: Mai.
- Fai clic su + Product (+ Prodotto) e seleziona EdgeMicroTestProduct. (il prodotto appena creato)
- Fai clic su Salva.
- Sei di nuovo nella pagina dell'elenco delle app.
- Seleziona l'app appena creata, EdgeMicroTestApp.
- Fai clic su Mostra accanto a Chiave utente e Consumer Secret:
Parte 3: aziona il microgateway Edge
Ora che hai configurato un gateway Edge Microgateway e almeno un gateway Edge Microgateway su Edge, è il momento di avviare Edge Microgateway. Verrà eseguito un server HTTP Edge Microgateway sul computer locale ed effettuerai chiamate API direttamente a quel server.
1. Avvia microgateway Edge
Utilizza il comando edgemicro start per avviare Edge Microgateway.
- Assicurati di avere le chiavi che erano state restituite in precedenza durante l'esecuzione di edgemicro
configura. L'output aveva un aspetto simile al seguente:
You need key and secret while starting edgemicro instance key: da4778e7c240a5d4585fc559eaba5083328828bc9f3a7f583e8b73e secret: 3aad7439708b4aeb38ee08e82189921ad00e6fc1ba8a8ae9f929ee2
- (Facoltativo) Stampa le informazioni della guida per il comando
edgemicro start
.
edgemicro start -h
- Per avviare Edge Microgateway, esegui questo comando:
edgemicro start -o [org] -e [env] -k [key] -s [secret]
Dove:
org
è il nome dell'organizzazione Edge (devi essere un'organizzazione) amministratore).env
è un ambiente della tua organizzazione (ad esempio test o prod).key
è la chiave restituita in precedenza dal comando .secret
è la chiave restituita in precedenza dal comando .
Esempio
edgemicro start -o docs -e test -k 701e70e718ce6dc1880616b3c39177d64a88754d615c7a4e1f78b6181d000723 -s 05c14356e42d136b83dd135cf8a18531ff52d7299134677e30ef4e34ab0cc824
Output
Il comando start recupera molte informazioni di configurazione da Apigee Edge, scorre fino a visualizzare la finestra del terminale). Nell'output, vedrai un elenco di etichette microgateway-aware proxy e prodotti scoperti. Alla fine dell'output, dovresti vedere qualcosa nel seguente modo:
... current nodejs version is v12.5.0 current edgemicro version is 3.0.2 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
- Controlla lo stato del microgateway. In un'altra finestra del terminale, trasferisci la directory nella stessa directory in cui
hai avviato Edge Micro e inserisci questo comando:
edgemicro status current nodejs version is v12.5.0 current edgemicro version is 3.0.2 edgemicro is running with 8 workers
Che cosa è successo?
Un payload di Edge Le informazioni di configurazione del microgateway vengono scaricate da Apigee Edge e memorizzate nella cache localmente. Queste informazioni comprendono:
- La chiave pubblica che abbiamo creato e memorizzato in precedenza in una mappa chiave-valore (KVM) criptata.
- Una rappresentazione di tutti i proxy sensibili a Edge Microgateway esistenti nella organizzazione/ambiente. Sono tutti i proxy denominati con il prefisso edgemicro_.
- Una rappresentazione di tutti i prodotti API esistenti nella organizzazione/ambiente.
Con queste informazioni, Edge Microgateway conosce i proxy e i percorsi proxy a cui è consentito e il processo di sviluppo. Utilizza le informazioni sul prodotto per rafforzare la sicurezza (esattamente come qualsiasi API) proxy su Apigee Edge, dove le chiavi delle app sviluppatore sono associate ai prodotti). Iniziamo i passaggi per proteggere Edge Microgateway a breve.
2. Testa il microgateway Edge
Con Edge Microgateway in esecuzione, puoi chiamare il proxy. La configurazione del parametro Il proxy edgemicro_hello è stato scaricato da Edge quando hai avviato Edge Microgateway. Ricorda che il percorso di base del proxy è /hello.
Per testare Edge Microgateway, iniziamo con il percorso di base e aggiungiamo un percorso della risorsa /echo. Tieni presente che tutto ciò che segue il percorso di base (inclusi eventuali parametri di query) viene semplicemente trasmesso alla destinazione del backend:
curl -i http://localhost:8000/hello/echo {"error":"missing_authorization","error_description":"Missing Authorization header"}
L'errore si verifica perché non hai inviato una chiave API o un token di accesso validi con la richiesta. Di per impostazione predefinita, Edge Microgateway richiede una chiave API o un token di accesso per ogni chiamata API. Nella Nel passaggio successivo del tutorial proteggeremo correttamente l'API e ti mostreremo come ottenere di accesso a Internet e includerlo nella richiesta.
4. Arresta microgateway Edge
- In una finestra separata del terminale,
cd
nella stessa directory in cui hai avviato Edge Microgateway. - Inserisci il comando di interruzione:
edgemicro stop
Parte 4: Secure Edge Microgateway
Puoi proteggere le chiamate API effettuate tramite Edge Microgateway utilizzando una chiave API o un accesso di accesso.
Chiamate API sicure con un token di accesso OAuth2
Segui questi passaggi se vuoi autenticare le chiamate API con un token di accesso OAuth2:
1. Recupera le chiavi richieste
- Nella UI di Edge, vai all'app sviluppatore creata in precedenza. Il nome dell'app era EdgeMicroTestApp.
- Nella pagina dell'app sviluppatore, mostra la chiave utente e il segreto utente e copiali. Questi valori sono necessari per ottenere un token di accesso nel passaggio successivo.
2. Richiedi un token di accesso
Esistono due modi per ottenere un token di accesso. Ti mostreremo entrambi i metodi.
Utilizzo dell'interfaccia a riga di comando per ottenere un token di accesso
Il primo metodo è pratico e segue lo schema che abbiamo utilizzato in precedenza nel tutorial. Il secondo metodo è generalmente più utile per le app client agli sviluppatori che devono richiedere token. L'endpoint del token effettivo viene implementato Proxy edgemicro-auth di cui è stato eseguito il deployment al momento della configurazione di Edge Microgateway.
- (Facoltativo) Visualizza la guida per il comando token get:
edgemicro token get -h
- Genera il token, sostituendo i valori della Chiave utente e del Segreto consumatore dalla
creata su Apigee Edge in -i e -s
parametri:
edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]
Dove:
org
è il nome dell'organizzazione Edge (devi essere un'organizzazione) amministratore).env
è un ambiente della tua organizzazione (ad esempio test o prod).consumer_id
è l'ID consumatore nell'app sviluppatore creati in precedenza.consumer_secret
è il segreto utente nello sviluppatore App creata in precedenza.
Esempio
edgemicro token get -o docs -e test -i G0IAeU864EtBo99NvUbn6Z4CBwVcS2 -s uzHTbwNWvoSmOy
Output (esempio)
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' }
(Facoltativo) Utilizzare l'API per ricevere un token
Se sei abituato a chiamare i proxy Edge tramite curl o un altro client HTTP, ti interesserà sapere che è possibile chiamare direttamente l'endpoint del token, anziché utilizzare la funzione edgemicro token. Ecco un esempio di curl. Basta sostituire i nomi dell'organizzazione e dell'ambiente in l'URL e passa i valori Consumer Key:Consumer Secret separati da due punti in un Intestazione autenticazione:
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"
Dove:
org
è il nome dell'organizzazione Edge (devi essere un'organizzazione) amministratore).env
è un ambiente della tua organizzazione (ad esempio test o prod).client_id
è l'ID consumatore nell'app sviluppatore che hai creato in precedenza.client_secret
è il segreto utente nell'app sviluppatore creati in precedenza.
Output (esempio)
Il comando, sia che tu abbia utilizzato il comando dell'interfaccia a riga di comando tokenedgemicro o abbia chiamato utilizzando curl, restituisce un token di accesso firmato che può essere utilizzato per effettuare chiamate client. Qualcosa di simile:
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. controlla la configurazione in Edge Microgateway
- Apri il file
$HOME/.edgemicro/org-env-config.yaml
. Vedi Dov'è installato Edge Microgateway se non riesci a trovare questo file. - Assicurati che le proprietà del plug-in OAuth siano impostate su false. Sono false per
ma è buona norma ricontrollare:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false
- Sempre nel file
org-env-config.yaml
, assicurati che il plug-in OAuth sia aggiunto all'elementoplugins:sequence
, in questo modo:plugins: dir: ../plugins sequence: - oauth
- Se apporti modifiche al file, ricarica le modifiche nell'
Istanza Edge Microgateway. Questo comando riconfigura Edge Microgateway con tempo di inattività pari a zero:
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Dove:
org
è il nome dell'organizzazione Edge (devi essere un'organizzazione) amministratore).env
è un ambiente della tua organizzazione (ad esempio test o prod).key
è la chiave restituita in precedenza dal comando .secret
è la chiave restituita in precedenza dal comando .
Esempio
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
4. Chiama l'API in modo sicuro
Con un token di accesso in mano, ora puoi effettuare la chiamata API in modo sicuro. Ad esempio:
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
L'API restituisce intestazioni e altre informazioni dal server fittizio.
Protezione dell'API con una chiave API
Se vuoi utilizzare una chiave API per l'autorizzazione, segui questi passaggi:
1. Ottieni la chiave API
- Nella UI di Edge, vai all'app sviluppatore creata in precedenza. Il nome dell'app era EdgeMicroTestApp.
- Nella pagina App sviluppatore, mostra la chiave utente e copiala. Questo valore corrisponde all'API chiave. Utilizzerai questa chiave per effettuare chiamate API autenticate.
2. controlla la configurazione in Edge Microgateway
- Apri il file
$HOME/.edgemicro/org-env-config.yaml.
Visualizza Dove se è installato Edge Microgateway se non riesci a trovare questo file. - Assicurati che le proprietà del plug-in OAuth siano impostate su false. Sono false per
ma puoi controllare se vuoi:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false
- Sempre nel file
org-env-config.yaml
, assicurati che il plug-in OAuth sia aggiunto all'elementoplugins:sequence
, in questo modo:plugins: dir: ../plugins sequence: - oauth
- Se apporti modifiche al file, ricarica le modifiche nell'
Istanza Edge Microgateway. Questo comando riconfigura Edge Microgateway con tempo di inattività pari a zero:
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Dove:
org
è il nome dell'organizzazione Edge (devi essere un'organizzazione) amministratore).env
è un ambiente della tua organizzazione (ad esempio test o prod).key
è la chiave restituita in precedenza dal comando .secret
è la chiave restituita in precedenza dal comando .
Esempio
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c30177d64a88754d615c74e1f78b6181d
3. Chiama l'API in modo sicuro con una chiave API
Chiama l'API con l'intestazione x-api-key come segue. Il valore della chiave utente copiata dall'app sviluppatore è la chiave API. Per impostazione predefinita, Edge Microgateway prevede che la chiave in un'intestazione denominata x-api-key, in questo modo:
curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"
Dove:
apikey
è il valore della chiave utente tratto da EdgeMicroTestApp.
Ad esempio:
curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxd0ilYQ5szwuljr5bB'
Ora disponi di un Edge Microgateway completamente funzionante e sicuro. Nella parte successiva daremo un'occhiata ai plug-in che aggiungono funzionalità a Edge Microgateway.
Parte 5: aggiungere un arresto dei picchi plug-in
In questa parte, aggiungeremo una funzionalità di limitazione della frequenza chiamata arresto dei picchi alla tua istanza di Edge Microgateway.
Che cosa sono i plug-in?
Un plug-in è un modulo Node.js che aggiunge funzionalità a Edge Microgateway. Moduli plug-in seguono un pattern coerente e vengono archiviati in una posizione nota a Edge Microgateway, consentendo un microgateway per scoprirli e caricarli automaticamente. Puoi trovare ulteriori informazioni sui plug-in nella Utilizza plug-in.
Aggiunta di un plug-in di arresto dei picchi
Un picco il plug-in di arresto protegge dai picchi di traffico. Limita il numero di richieste elaborate da un'istanza Edge Microgateway.
In Edge Microgateway, l'arresto dei picchi viene implementato come modulo di plug-in. Per abilitarla, devi avere per aggiungerlo al file di configurazione di Edge Microgateway.
- Apri il file
$HOME/.edgemicro/org-env-config.yaml.
Dove se è installato Edge Microgateway se non riesci a trovare questo file. - Aggiungi il seguente elemento. Puoi aggiungerlo in qualsiasi punto del file.
spikearrest: timeUnit: minute allow: 10 buffersize: 0
- Aggiungi
spikearrest
all'elementoedgemicro:sequence
, come mostrato di seguito. La proprietà di configurazione della sequenza indica a Edge Microgateway l'ordine in cui vengono eseguiti tutti i moduli plug-in.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
- Salva il file di configurazione.
- Ricarica Edge Microgateway con il comando reload. Devi eseguire
dalla directory in cui hai avviato Edge Microgateway.
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Dove:
org
è il nome dell'organizzazione Edge (devi essere un amministratore dell'organizzazione).env
è un ambiente della tua organizzazione (ad esempio test o prod).key
è la chiave restituita in precedenza dal comando .secret
è la chiave restituita in precedenza dal configurare.
Esempio
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
- Prova a chiamare l'API più volte in rapida successione. Dopo la seconda chiamata, Edge
Microgateway restituisce questo errore:
{"message":"SpikeArrest engaged","status":503}
Il motivo è che l'arresto dei picchi agevola il numero di chiamate che possono essere effettuate sulla unità di tempo specificata. Quindi, in questo caso, puoi effettuare 10 chiamate al minuto o una ogni 6 secondi.
Ulteriore riconoscimento: l'aggiunta di plug-in quota
Seguendo lo stesso pattern utilizzato per configurare l'arresto dei picchi, puoi aggiungere altri plug-in, come plug-in delle quote. Come per l'arresto dei picchi, il plug-in delle quote è incluso in ogni installazione di Edge Microgateway. R quota specifica il numero di messaggi di richiesta che un'app può inviare a un'API tramite un all'intervallo di tempo specificato (minuti o ore).
Parte 6 - Visualizzazione di analisi su Apigee Edge
Ora abbiamo un'istanza Edge Microgateway completamente funzionante. Vediamo cosa succede. Per impostazione predefinita, il modulo del plug-in di analisi viene aggiunto a Edge Micro. Questo modulo esegue automaticamente il push dati di analisi da Edge Micro a Apigee perimetrali, dove vengono utilizzati dal sistema Edge Analytics. Vediamo:
- Accedi alla tua organizzazione su Apigee Edge.
- Seleziona Analytics > Prestazioni del proxy.
- Nella dashboard delle prestazioni del proxy, seleziona il proxy edgemicro_hello.
- Il grafico mostra informazioni sui modelli di traffico del proxy, come traffico totale, tempo di risposta medio, tempo medio di risposta target e altro ancora.
Per ulteriori informazioni sulle dashboard di analisi perimetrale consulta la home page delle dashboard di analisi nel documentazione di Edge. Per ulteriori informazioni sui plug-in, consulta la sezione Utilizzo dei plug-in.