Menyiapkan dan mengonfigurasi Edge Microgateway

Anda sedang melihat dokumentasi Apigee Edge.
Buka Dokumentasi Apigee X.
info

Edge Microgateway v. 3.2.x

Ringkasan

Setelah menyelesaikan langkah-langkah dalam panduan penyiapan ini, Anda akan memiliki Edge yang berfungsi sepenuhnya dan berfungsi Pemasangan microgateway yang mampu memproses permintaan API. Anda akan menguji pengaturan dengan membuat panggilan API aman melalui Edge Microgateway ke target backend. Anda juga akan belajar cara menambahkan plugin penangkapan lonjakan ke Microgateway.

Panduan ini dibagi menjadi bagian-bagian berikut:

Prasyarat: Instal Edge Microgateway

Ikuti petunjuk di Menginstal Edge Microgateway. Setelah menyelesaikan instalasi, Anda akan siap untuk mengikuti langkah-langkah dalam tutorial.

Bagian 1: Mengonfigurasi Edge Microgateway

Di bagian ini, Anda akan menggunakan perintah antarmuka command line (CLI) untuk mengonfigurasi Edge Microgateway ke berkomunikasi dengan Apigee Edge.

Langkah-langkah konfigurasi Apigee Edge Cloud

Ikuti langkah-langkah berikut untuk menggunakan Edge Microgateway dengan Apigee Edge Cloud:

  1. Lakukan inisialisasi Edge Microgateway (Anda hanya perlu melakukan langkah ini satu kali):
    edgemicro init
    
  2. File konfigurasi bernama file default.yaml ditempatkan di rumah Anda dalam subdirektori bernama .edgemicro. Periksa sekarang untuk memastikan file ini ada:
    ls ~/.edgemicro
    default.yaml
    

    Catatan: Dalam dokumen Edge Microgateway, kami merujuk ke direktori utama dengan tanda gelombang (~), yang merupakan pintasan UNIX. Jika Anda menggunakan Windows, jika Anda menjalankan {i>shell<i} yang tidak mendukung tanda gelombang, Anda harus mengganti variabel lingkungan untuk tanda gelombang dalam perintah yang mereferensikan direktori {i>home<i}. Sebagai contoh: %USERPROFILE%/.edgemicro.

  3. Semua perintah CLI memiliki fungsi bantuan. Bantuan cetak untuk edgemicro konfigurasikan perintah:
    edgemicro configure -h
    
  4. Jalankan perintah berikut untuk mengonfigurasi Edge Microgateway:
    edgemicro configure -o [org] -e [env] -u [username] 
    

    Dengan keterangan:

    • org: Nama organisasi Edge Anda (Anda harus merupakan organisasi administrator).
    • env: Lingkungan di organisasi Anda (seperti pengujian atau prod).
    • username: Alamat email yang terkait dengan Akun Apigee.

      Catatan: Perintah config mengizinkan parameter tambahan. Untuk lihat Mengonfigurasi Edge Microgateway untuk Apigee Edge Cloud.

Contoh

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

Langkah-langkah konfigurasi Apigee Private Cloud

Ikuti langkah-langkah berikut untuk menggunakan Edge Microgateway dengan Apigee Private Cloud:

  1. Lakukan inisialisasi Edge Microgateway (Anda hanya perlu melakukan langkah ini satu kali):
    edgemicro init
    
  2. Mencetak informasi bantuan untuk perintah edgemicro private configuration. Anda dapat mencetak dengan cara ini untuk perintah atau opsi perintah Edge Microgateway CLI.
    edgemicro private configure -h
    
  3. Jalankan perintah berikut. Memerlukan informasi standar tentang Apigee Edge Anda Akun Private Cloud: nama organisasi, nama lingkungan, nama pengguna (alamat email), sandi, manajemen IP dan IP {i>router<i}. Anda harus menjadi administrator organisasi Edge untuk menggunakan fitur ini berikut:
    edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]
    

    Dengan keterangan:

    • org adalah nama organisasi Edge Anda (Anda harus merupakan organisasi administrator).
    • env adalah lingkungan di organisasi Anda (seperti pengujian atau prod).
    • runtime_url adalah URL runtime untuk cloud pribadi Anda di instance Compute Engine.
    • mgmt_url adalah URL server pengelolaan untuk di instance private cloud.
    • username adalah alamat email yang terkait dengan Apigee Anda menggunakan akun layanan.
    • virtual_host adalah daftar host virtual yang dipisahkan koma nama. Nilai defaultnya adalah default,secure

Contoh

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

atau, jika Anda memiliki alias virtual host myorg-test.mycompany.com, Anda akan menggunakan seperti ini:

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!
    

Memverifikasi penginstalan

Jalankan perintah ini untuk memverifikasi penginstalan. Jika tidak ada error yang dilaporkan, artinya semuanya sudah disiapkan dengan benar dan Anda akan berhasil memulai Edge Microgateway.

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

Dengan keterangan:

  • org adalah nama organisasi Edge Anda (Anda harus merupakan organisasi administrator).
  • env adalah lingkungan di organisasi Anda (seperti pengujian atau prod).
  • key adalah kunci yang ditampilkan sebelumnya oleh konfigurasi perintah.
  • secret adalah kunci yang ditampilkan sebelumnya oleh konfigurasi perintah.

Contoh

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

Tentang konfigurasi

Semua konfigurasi yang telah dilakukan sejauh ini memungkinkan Edge Microgateway untuk mem-bootstrap dirinya sendiri ke Apigee Edge. Setelah bootstrap berhasil, Edge Microgateway mengambil payload informasi konfigurasi dari Apigee Edge.

Untuk apa informasi konfigurasi ini digunakan? Seperti yang akan kita temukan di bagian selanjutnya dari ini, saat Edge Microgateway dimulai, Edge Microgateway perlu menerima daftar Proxy API berbasis Microgateway dari Apigee Edge. Di bagian selanjutnya dari tutorial ini, Anda akan membuat Microgateway-aware proxy. Edge Microgateway membatasi klien untuk hanya memanggil API ditangani oleh proxy API yang mendukung Microgateway ini, dan klien akan diminta (secara default) untuk menunjukkan token keamanan yang valid untuk setiap panggilan. Untuk membaca selengkapnya tentang proxy ini, lihat "Apa Anda perlu mengetahui tentang proxy berbasis Edge Microgateway" di Overview of Edge Microgateway.

Sebagai admin org Edge, Anda mungkin tertarik untuk mengetahui bahwa proxy yang peka Microgateway Edge dapat ditambahkan ke produk Edge, sama seperti proxy lainnya. Melalui penggunaan produk dan developer Anda bisa membuat token keamanan spesifik per klien untuk mengontrol akses ke API yang dipanggil melalui Edge Microgateway. Sekali lagi, pola yang terlibat identik dengan bekerja dengan {i>proxy<i} API apa pun, produk, dan aplikasi developer di Apigee Edge. Jika Anda ingin membaca informasi tentang produk, mulailah dengan Apa yang dimaksud dengan produk API? di Edge dokumentasi tambahan.

Selanjutnya kita akan membahas cara membuat {i>proxy<i} yang berbasis {i>Microgateway<i}, dan setelah itu, kita akan mulai Edge Microgateway dan uji penyiapan.

Bagian 2: Membuat entity di Apigee Edge

Di bagian ini, Anda akan membuat entity ini di Edge:

  • J microgateway-aware proxy - Ini adalah proxy khusus yang dapat ditemukan oleh Edge Microgateway sistem dimulai. Proxy berbasis Microgateway memiliki konvensi penamaan yang harus Anda ikuti: harus bersama edgemicro_. Misalnya edgemicro_hello atau edgemicro_userinfo. Saat Microgateway Edge dimulai, ia mengambil dari Edge daftar proxy berbasis microgateway dari organisasi dan lingkungan Edge yang sama yang Anda tentukan saat memulai Edge Microgateway.

    Untuk setiap {i>microgateway-aware proxy<i}, Edge Microgatway mengambil URL target dari proxy dan jalur dasarnya. Proxy berbasis Microgateway juga menyediakan cara yang mudah untuk mengaitkan analisis data yang dihasilkan oleh Edge Microgateway dengan proxy di platform Edge. Sebagai Microgateway menangani panggilan API, model ini akan mengirim data analisis ke Edge secara asinkron. Data Analytics akan muncul di UI Edge Analytics di bawah nama proxy berbasis microgateway, seperti halnya untuk {i>proxy<i}.
  • Aplikasi, developer, dan developer - Edge Microgateway menggunakan produk developer, dan aplikasi developer untuk mengaktifkan keamanan kunci API atau token akses OAuth2. Ketika Edge Microgateway dimulai, lalu mendownload semua konfigurasi produk dari Apigee Edge organisasi/pengaturan. Informasi ini digunakan untuk memverifikasi panggilan API yang dilakukan melalui Edge Microgateway dengan Kunci API atau token akses OAuth2.

1. Berkreasi proxy API berbasis Edge Microgateway di Edge

  1. Login ke organisasi Anda di Apigee Edge.
  2. Pilih Develop > Proxy API di menu navigasi samping.
  3. Klik + Proxy. Wizard Build a Proxy dipanggil.
  4. Di halaman wizard pertama, pilih Reverse proxy (paling umum).
  5. Klik Berikutnya.
  6. Di halaman Detail wizard, konfigurasikan sebagai berikut. Pastikan untuk mengisi wizard persis seperti yang ditampilkan:
    • Nama Proxy: edgemicro_hello
    • Jalur Dasar Proxy: /hello
    • API yang sudah ada: http://mocktarget.apigee.net/
  7. Klik Berikutnya.
  8. Di halaman Security di wizard, pilih Pass through (none).
  9. Klik Berikutnya.
  10. Pada halaman Host Virtual wizard, terima setelan default.
  11. Klik Berikutnya.
  12. Pada halaman Build di wizard, tinjau setelan proxy Anda. Pastikan test dipilih.
  13. Klik Build and Deploy.

2. Membuat produk

  1. Pilih Publikasikan > Produk API di menu navigasi samping.
  2. Klik + Produk API. Halaman Detail Produk akan muncul.
  3. Isi halaman Detail Produk sebagai berikut:
    • Nama: EdgeMicroTestProduct
    • Nama Tampilan: EdgeMicroTestProduct
    • Lingkungan: pengujian dan produksi
    • Akses: Publik
    • Jenis Persetujuan Kunci: Otomatis
  4. Di Resources, klik +API Proxy
  5. Pilih edgemicro-auth
  6. Klik +API Proxy lagi.
  7. Pilih edgemicro_hello
  8. Pilih + Resource Kustom
  9. Masukkan /**
  10. Pilih + Custom Resource lagi.
  11. Masukkan /
  12. Klik Simpan.

3. (Opsional) Buat developer uji

Untuk tujuan tutorial ini, Anda dapat menggunakan pengembang yang ada untuk langkah berikutnya, membuat aplikasi pengembang. Namun, jika Anda mau, Anda dapat membuat developer pengujian sekarang:

  1. Pilih Publikasikan > Developer di menu navigasi samping.
  2. Klik + Developer.
  3. Isi dialog untuk membuat developer pengujian.

4. Membuat aplikasi developer

Anda akan menggunakan kredensial klien dari aplikasi ini untuk melakukan panggilan API aman melalui Microgateway Edge:

  1. Pilih Publikasikan > Aplikasi di menu navigasi samping.
  2. Klik + App. Halaman Detail Aplikasi Developer akan muncul.
  3. Isi halaman Aplikasi Developer sebagai berikut:
    1. Nama: EdgeMicroTestApp
    2. Nama Tampilan: EdgeMicroTestApp
    3. Developer: Jika Anda membuat developer pengujian, pilih developer tersebut. Atau, Anda bisa menggunakan pengembang yang ada untuk tujuan tutorial ini.
    4. Kredensial:
      1. Pilih Akhir Masa Berlaku: Tidak pernah.
      2. Klik + Product dan pilih EdgeMicroTestProduct (produk yang baru saja Anda buat)
  4. Klik Simpan.
  5. Anda kembali ke halaman Daftar aplikasi.
  6. Pilih aplikasi yang baru saja Anda buat, EdgeMicroTestApp.
  7. Klik Show di samping Consumer Key dan Consumer Rahasia.

Bagian 3: Mengoperasikan Edge Microgateway

Setelah Anda memiliki Edge Microgateway yang dikonfigurasi dan setidaknya satu Edge Microgateway-aware di Edge, saatnya memulai Edge Microgateway. Server HTTP Edge Microgateway akan berjalan di komputer lokal Anda, dan Anda akan melakukan panggilan API langsung ke server tersebut.

1. Mulai Edge Microgateway

Gunakan perintah edgemicro start untuk memulai Edge Microgateway.

  1. Pastikan Anda memiliki kunci yang dikembalikan sebelumnya saat Anda menjalankan edgemicro konfigurasikan aplikasi Anda. Output tersebut akan terlihat seperti ini:
    You need key and secret while starting edgemicro instance
    
    key: da4778e7c240a5d4585fc559eaba5083328828bc9f3a7f583e8b73e
    secret: 3aad7439708b4aeb38ee08e82189921ad00e6fc1ba8a8ae9f929ee2
    
  2. (Opsional) Cetak informasi bantuan untuk perintah edgemicro start.
    edgemicro start -h
    
  3. Untuk memulai Edge Microgateway, jalankan perintah berikut:
    edgemicro start -o [org] -e [env] -k [key] -s [secret]
    

    Dengan keterangan:

    • org adalah nama organisasi Edge Anda (Anda harus merupakan organisasi administrator).
    • env adalah lingkungan di organisasi Anda (seperti pengujian atau prod).
    • key adalah kunci yang ditampilkan sebelumnya oleh konfigurasi perintah.
    • secret adalah kunci yang ditampilkan sebelumnya oleh konfigurasi perintah.

    Contoh

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

    Output

    Perintah start mengambil banyak informasi konfigurasi dari Apigee Edge (yang akan men-scroll ke jendela terminal). Di output, Anda akan melihat daftar antarmuka berbasis microgateway {i>proxy<i} dan produk yang ditemukan. Di akhir output, Anda akan melihat sesuatu seperti ini:

    ...
    
    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. Periksa status microgateway. Di jendela terminal lainnya, cd ke direktori yang sama tempat Anda telah memulai Edge Micro dan masukkan perintah ini:
    edgemicro status
    current nodejs version is v12.5.0
    current edgemicro version is 3.1.0
    edgemicro is running with 8 workers
    

Apa yang terjadi?

Muatan Edge Informasi konfigurasi Microgateway didownload dari Apigee Edge dan di-cache secara lokal. Informasi ini mencakup:

  • Kunci publik yang kita buat dan simpan sebelumnya dalam Key Value Map (KVM) terenkripsi.
  • Representasi semua proxy berbasis Edge Microgateway yang ada di organisasi/lingkungan Anda. Ini semua adalah proxy yang diberi nama dengan awalan edgemicro_.
  • Representasi dari semua produk API yang ada dalam organisasi/lingkungan Anda.

Dengan informasi ini, Edge Microgateway mengetahui proxy dan jalur proxy mana yang diizinkan {i>checkout<i}. Proses ini menggunakan informasi produk untuk menegakkan keamanan (dengan cara yang sama persis dengan API apa pun dilakukan di Apigee Edge, tempat kunci aplikasi developer memiliki hubungan dengan produk). Mari kita lanjutkan melalui langkah-langkah untuk segera mengamankan Edge Microgateway.

2. Menguji Microgateway Edge

Saat Edge Microgateway berjalan, Anda dapat memanggil proxy. Konfigurasi untuk Proxy edgemicro_hello didownload dari Edge saat Anda memulai Edge Microgateway. Ingat, jalur basis proxy adalah /hello.

Untuk menguji Edge Microgateway, kita mulai dengan jalur dasar dan menambahkan jalur resource /echo. Perhatikan bahwa semua yang ditulis setelah jalur dasar (termasuk parameter kueri) hanya diteruskan ke target backend:

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

Error terjadi karena Anda tidak mengirim kunci API atau token akses yang valid bersama permintaan. Menurut secara default, Edge Microgateway memerlukan kunci API atau token akses di setiap panggilan API. Di beberapa langkah tutorial berikutnya, kami akan mengamankan API ini dengan benar dan menunjukkan cara token akses dan menyertakannya dengan permintaan.

4. Hentikan Microgateway Edge

  1. Di jendela terminal terpisah, cd ke direktori yang sama tempat Anda telah memulai Edge Microgateway.
  2. Masukkan perintah berhenti:
    edgemicro stop
    

Bagian 4: Secure Edge Microgateway

Anda bisa mengamankan panggilan API yang dilakukan melalui Edge Microgateway menggunakan kunci API atau sebelumnya yang benar.

Panggilan API yang aman dengan token akses OAuth2

Ikuti langkah-langkah berikut jika Anda ingin mengautentikasi panggilan API dengan token akses OAuth2:

1. Mendapatkan kunci yang diperlukan

  1. Di UI Edge, navigasikan ke Aplikasi Developer yang Anda buat sebelumnya. Nama Aplikasi adalah EdgeMicroTestApp.
  2. Di halaman Aplikasi Developer, tampilkan Kunci Konsumen dan Rahasia Konsumen, lalu salin. Nilai ini diperlukan untuk mendapatkan token akses pada langkah berikutnya.

2. Mendapatkan token akses

Ada dua cara untuk memperoleh token akses. Kami akan menunjukkan kedua metode tersebut.

Menggunakan CLI untuk mendapatkan token akses

Metode pertama mudah, dan mengikuti pola yang telah kita gunakan di seluruh tutorial. Metode kedua umumnya lebih berguna untuk aplikasi klien developer yang perlu meminta token. Endpoint token yang sebenarnya diimplementasikan dalam Proxy edgemicro-auth yang diterapkan saat Anda mengonfigurasi Edge Microgateway.

  1. (Opsional) Lihat bantuan untuk perintah token get:
    edgemicro token get -h
    
  2. Buat token, dengan mengganti nilai Kunci Konsumen dan Rahasia Konsumen dari aplikasi developer yang Anda buat di Apigee Edge di -i dan -s parameter:
    edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]
    

    Dengan keterangan:

    • org adalah nama organisasi Edge Anda (Anda harus merupakan organisasi administrator).
    • env adalah lingkungan di organisasi Anda (seperti pengujian atau prod).
    • consumer_id adalah ID Konsumen di Aplikasi Developer yang Anda buat sebelumnya.
    • consumer_secret adalah Rahasia Konsumen di Developer Aplikasi yang Anda buat sebelumnya.

    Contoh

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

    Output (Contoh)

    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' }
    

(Opsional) Menggunakan API untuk mendapatkan token

Jika Anda terbiasa memanggil proxy Edge menggunakan curl atau klien HTTP lainnya, Anda akan tertarik mengetahui bahwa Anda dapat memanggil endpoint token secara langsung, daripada menggunakan class edgemicro token. Berikut adalah contoh curl. Cukup ganti nama organisasi dan lingkungan Anda di URL, dan teruskan nilai Consumer Key:Consumer Secret yang dipisahkan titik dua dalam Header autentikasi:

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"

Dengan keterangan:

  • org adalah nama organisasi Edge Anda (Anda harus merupakan organisasi administrator).
  • env adalah lingkungan di organisasi Anda (seperti pengujian atau prod).
  • client_id adalah ID Konsumen di Aplikasi Developer yang Anda buat seperti yang telah dibahas sebelumnya.
  • client_secret adalah Rahasia Konsumen di Aplikasi Developer yang Anda buat sebelumnya.

Output (Contoh)

Perintah ini, baik Anda menggunakan perintah CLI edgemicro token atau menggunakan curl, menampilkan token akses bertanda tangan yang dapat digunakan untuk melakukan panggilan klien. Sesuatu seperti ini:

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. Periksa konfigurasi di Edge Microgateway

  1. Buka file $HOME/.edgemicro/org-env-config.yaml. Lihat Lokasi Edge Microgateway terinstal jika Anda tidak dapat menemukan file ini.
  2. Pastikan properti plugin oauth ini disetel ke false. Mereka keliru oleh secara {i>default<i}, tetapi sebaiknya periksa kembali:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
    
  3. Selain itu, di file org-env-config.yaml, pastikan plugin oauth ditambahkan ke elemen plugins:sequence, seperti ini:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
    
  4. Jika Anda membuat perubahan pada file, muat ulang perubahan ke file Instance Edge Microgateway. Perintah ini mengonfigurasi ulang Edge Microgateway dengan zero-downtime:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Dengan keterangan:

    • org adalah nama organisasi Edge Anda (Anda harus merupakan organisasi administrator).
    • env adalah lingkungan di organisasi Anda (seperti pengujian atau prod).
    • key adalah kunci yang ditampilkan sebelumnya oleh konfigurasi perintah.
    • secret adalah kunci yang ditampilkan sebelumnya oleh konfigurasi perintah.

    Contoh

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

4. Memanggil API dengan aman

Dengan token akses yang ada, Anda kini dapat melakukan panggilan API dengan aman. Contoh:

  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

API menampilkan header dan informasi lainnya dari server tiruan.

Mengamankan API dengan kunci API

Jika Anda ingin menggunakan kunci API untuk otorisasi, ikuti langkah-langkah berikut:

1. Mendapatkan kunci API

  1. Di UI Edge, navigasikan ke Aplikasi Developer yang Anda buat sebelumnya. Nama Aplikasi adalah EdgeMicroTestApp.
  2. Di halaman Aplikasi Developer, tampilkan Kunci Konsumen, lalu salin. Nilai ini merupakan API Google. Anda akan menggunakan kunci ini untuk melakukan panggilan API yang diautentikasi.

2. Periksa konfigurasi di Edge Microgateway

  1. Buka file $HOME/.edgemicro/org-env-config.yaml. Lihat Lokasi apakah Edge Microgateway sudah diinstal jika Anda tidak dapat menemukan file ini.
  2. Pastikan properti plugin oauth ini disetel ke false. Mereka keliru oleh secara default, tetapi Anda dapat memeriksa ulang jika mau:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
    
  3. Selain itu, di file org-env-config.yaml, pastikan plugin oauth ditambahkan ke elemen plugins:sequence, seperti ini:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
        
    
  4. Jika Anda membuat perubahan pada file, muat ulang perubahan ke file Instance Edge Microgateway. Perintah ini mengonfigurasi ulang Edge Microgateway dengan zero-downtime:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Dengan keterangan:

    • org adalah nama organisasi Edge Anda (Anda harus merupakan organisasi administrator).
    • env adalah lingkungan di organisasi Anda (seperti pengujian atau prod).
    • key adalah kunci yang ditampilkan sebelumnya oleh konfigurasi perintah.
    • secret adalah kunci yang ditampilkan sebelumnya oleh konfigurasi perintah.

    Contoh

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

3. Memanggil API secara aman dengan kunci API

Panggil API dengan header x-api-key seperti berikut. Kunci Konsumen memberikan nilai yang disalin dari Aplikasi Developer adalah kunci API. Secara default, Edge Microgateway mengharapkan Anda lulus kunci di header yang disebut x-api-key, seperti ini:

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

Dengan keterangan:

  • apikey adalah nilai Kunci Konsumen yang diambil dari EdgeMicroTestApp.

Contoh:

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

Anda kini memiliki Edge Microgateway yang berfungsi penuh dan aman. Pada bagian selanjutnya dari kita akan melihat plugin yang menambahkan fungsionalitas ke Edge Microgateway.

Bagian 5: Menambahkan Pangkal Lonjakan plugin

Di bagian ini, kita akan menambahkan fitur pembatasan kapasitas yang disebut penangkapan lonjakan ke instance Edge Anda Microgateway.

Apa itu plugin?

Plugin adalah modul Node.js yang menambahkan fungsionalitas ke Edge Microgateway. Modul plugin mengikuti pola yang konsisten dan disimpan di lokasi yang dikenal oleh Edge Microgateway, sehingga memungkinkan microgateway untuk menemukan dan memuatnya secara otomatis. Anda dapat membaca lebih lanjut tentang plugin di Gunakan plugin.

Menambahkan plugin penangkapan lonjakan

Lonjakan plugin arrest melindungi jaringan dari lonjakan traffic. Membatasi jumlah permintaan yang diproses oleh instance Edge Microgateway.

Di Edge Microgateway, penghentian lonjakan diterapkan sebagai modul plugin. Untuk mengaktifkannya, Anda memerlukan untuk menambahkannya ke file konfigurasi Edge Microgateway.

  1. Buka file $HOME/.edgemicro/org-env-config.yaml.Di mana apakah Edge Microgateway sudah diinstal jika Anda tidak dapat menemukan file ini.
  2. Tambahkan elemen berikut. Anda dapat menambahkannya di mana pun dalam file.
       spikearrest:
          timeUnit: minute   
          allow: 10   
          buffersize: 0   
    
  3. Tambahkan spikearrest ke elemen edgemicro:sequence, seperti yang ditunjukkan di bawah ini. Properti konfigurasi urutan memberi tahu Edge Microgateway tentang urutan dan menjalankan modul plugin.
    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. Simpan file konfigurasi.
  5. Muat ulang Edge Microgateway dengan perintah reload. Anda harus menjalankan perintah ini dari direktori tempat Anda memulai Edge Microgateway.
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Dengan keterangan:

    • org adalah nama organisasi Edge Anda (Anda harus merupakan administrator org).
    • env adalah lingkungan di organisasi Anda (seperti pengujian atau prod).
    • key adalah kunci yang ditampilkan sebelumnya oleh konfigurasi perintah.
    • secret adalah kunci yang ditampilkan sebelumnya oleh perintah config.

    Contoh

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
    
  6. Coba panggil API beberapa kali secara berurutan. Setelah panggilan kedua, Edge Microgateway menampilkan error ini:
    {"message":"SpikeArrest engaged","status":503}
    

Alasannya adalah karena penghentian lonjakan satuan waktu yang ditentukan. Jadi, dalam hal ini, Anda dapat melakukan 10 panggilan dalam satu menit, atau satu panggilan setiap 6 detik.

Kredit ekstra: Menambahkan plugin kuota

Dengan mengikuti pola yang sama yang digunakan untuk mengonfigurasi penahanan lonjakan, Anda dapat menambahkan plugin lain, seperti plugin kuota. Seperti penghentian lonjakan, plugin kuota disertakan dengan setiap penginstalan Edge Microgateway. J kuota menentukan jumlah pesan permintaan yang boleh dikirimkan aplikasi ke API melalui interval waktu yang ditentukan (menit atau jam).

Bagian 6: Menonton analisis di Apigee Edge

Kita sekarang memiliki instance Edge Microgateway yang berfungsi penuh. Mari kita lihat apa saja yang telah kita lakukan. Secara default, modul plugin analisis ditambahkan ke Edge Micro. Modul ini secara otomatis mendorong data analisis dari Edge Micro hingga edge Apigee, yang dipakai oleh sistem Analisis Edge. Mari kita lihat:

  1. Login ke organisasi Anda di Apigee Edge.
  2. Pilih Analytics > Performa Proxy.
  3. Di dasbor Performa Proxy, pilih proxy edgemicro_hello.
  4. Grafik ini menampilkan informasi tentang pola traffic proxy, seperti total traffic, waktu respons rata-rata, waktu respons target rata-rata, dan banyak lagi.

Anda dapat membaca lebih lanjut tentang dasbor Edge Analytics di halaman beranda Dasbor Analytics di Dokumentasi Edge. Untuk mempelajari plugin lebih lanjut, lihat Menggunakan plugin