Menyiapkan dan mengonfigurasi Edge Microgateway

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

Edge Microgateway v. 3.1.5 dan yang lebih baru

Ringkasan

Setelah menyelesaikan langkah-langkah dalam panduan penyiapan ini, Anda akan memiliki penginstalan Edge Microgateway yang telah dikonfigurasi sepenuhnya dan berfungsi serta mampu memproses permintaan API. Anda akan menguji penyiapan dengan melakukan panggilan API yang aman melalui Edge Microgateway ke target backend. Anda juga akan mempelajari cara menambahkan plugin lonjakan penangkapan ke Microgateway.

Panduan ini dibagi menjadi beberapa bagian berikut:

Prasyarat: Instal Edge Microgateway

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

Bagian 1: Mengonfigurasi Edge Microgateway

Di bagian ini, Anda akan menggunakan perintah antarmuka command line (CLI) untuk mengonfigurasi Edge Microgateway agar dapat 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 direktori utama Anda di subdirektori bernama .edgemicro. Periksa sekarang untuk memastikan file ini ada:
    ls ~/.edgemicro
    default.yaml
    

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

  3. Semua perintah CLI memiliki fungsi bantuan. Bantuan cetak untuk perintah edgemicro konfigurasi:
    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 menjadi administrator org).
    • env: Lingkungan dalam organisasi Anda (seperti pengujian atau produksi).
    • username: Alamat email yang terkait dengan akun Apigee Anda.

      Catatan: Perintah konfigurasi memungkinkan parameter tambahan. Untuk mengetahui daftar lengkapnya, 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. Cetak informasi bantuan untuk perintah edgemicro private configure. Anda dapat mencetak bantuan dengan cara ini untuk semua opsi perintah atau perintah Edge Microgateway CLI.
    edgemicro private configure -h
    
  3. Jalankan perintah berikut. Diperlukan informasi standar tentang akun Apigee Edge Private Cloud Anda: nama organisasi, nama lingkungan, nama pengguna (alamat email), sandi, IP server pengelolaan, dan IP router. Anda harus menjadi administrator organisasi Edge untuk menggunakan perintah ini:
    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 menjadi administrator org).
    • env adalah lingkungan dalam organisasi Anda (seperti pengujian atau prod).
    • runtime_url adalah URL runtime untuk instance cloud pribadi Anda.
    • mgmt_url adalah URL server pengelolaan untuk instance cloud pribadi Anda.
    • username adalah alamat email yang terkait dengan akun Apigee Anda.
    • virtual_host adalah daftar nama host virtual yang dipisahkan koma. 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 host virtual myorg-test.mycompany.com, Anda akan menggunakan perintah 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, semuanya telah disiapkan dengan benar dan Anda akan dapat memulai Edge Microgateway dengan sukses.

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

Dengan keterangan:

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

Contoh

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

Tentang konfigurasi

Semua konfigurasi yang dilakukan sejauh ini memungkinkan Edge Microgateway melakukan bootstrap sendiri ke Apigee Edge. Setelah bootstrap berhasil, Edge Microgateway akan mengambil payload informasi konfigurasi tambahan dari Apigee Edge.

Untuk apa informasi konfigurasi ini digunakan? Seperti yang akan kita temukan di bagian selanjutnya dari tutorial ini, saat Edge Microgateway dimulai, Edge Microgateway perlu menerima daftar proxy API khusus Edge Microgateway dari Apigee Edge. Di bagian selanjutnya dari tutorial ini, Anda akan membuat proxy yang peka terhadap Microgateway. Edge Microgateway membatasi klien untuk hanya memanggil API yang ditangani oleh proxy API berbasis Microgateway ini, dan klien akan diminta (secara default) untuk menampilkan token keamanan yang valid untuk setiap panggilan. Untuk membaca selengkapnya tentang proxy ini, lihat "Yang perlu Anda ketahui tentang proxy Edge Microgateway" di Ringkasan Edge Microgateway.

Sebagai admin org Edge, Anda akan tertarik untuk mengetahui bahwa proxy yang mendukung Edge Microgateway dapat ditambahkan ke produk Edge, seperti proxy lainnya. Melalui penggunaan produk dan aplikasi developer, Anda dapat membuat token keamanan khusus klien untuk mengontrol akses ke API yang dipanggil melalui Edge Microgateway. Sekali lagi, pola yang terlibat identik dengan penggunaan proxy, produk, dan aplikasi developer API apa pun di Apigee Edge. Jika Anda ingin membaca tentang produk, mulailah dengan What is an API product? dalam dokumentasi Edge.

Berikutnya, kita akan membahas cara membuat proxy berbasis Edge Microgateway, dan setelah itu, kita akan memulai Edge Microgateway dan menguji penyiapannya.

Bagian 2: Membuat entity di Apigee Edge

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

  • Proxy yang mendukung microgateway - Ini adalah proxy khusus yang dapat ditemukan Edge Microgateway saat startup. Proxy yang mendukung microgateway memiliki konvensi penamaan yang harus Anda ikuti: namanya harus menggunakan edgemicro_. Misalnya edgemicro_hello atau edgemicro_userinfo. Saat Edge Microgateway dimulai, Edge akan mengambil daftar proxy yang mendukung microgateway dari organisasi dan lingkungan Edge yang sama yang Anda tentukan saat memulai Edge Microgateway.

    Untuk setiap proxy yang mendukung microgateway, Edge Microgatway akan mengambil URL target proxy dan jalur dasarnya. Proxy yang peka terhadap microgateway juga memberikan cara yang mudah untuk mengaitkan data analisis yang dihasilkan oleh Edge Microgateway dengan proxy di platform Edge. Karena Microgateway menangani panggilan API, data analisis akan dikirim secara asinkron ke Edge. Data analisis akan muncul di UI Edge Analytics di bagian nama proxy microgateway-aware, seperti pada proxy lainnya.
  • Aplikasi, developer, dan developer - Edge Microgateway menggunakan produk, developer, dan aplikasi developer untuk mengaktifkan token akses OAuth2 atau keamanan kunci API. Saat Edge Microgateway dimulai, semua konfigurasi produk akan didownload dari organisasi Apigee Edge Anda. Informasi ini digunakan untuk memverifikasi panggilan API yang dilakukan melalui Edge Microgateway dengan kunci API atau token akses OAuth2.

1. Membuat proxy API Edge Microgateway di Edge

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

2. Membuat produk

  1. Pilih Publish > API Products 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 + Resource Kustom lagi.
  11. Masukkan /
  12. Klik Simpan.

3. (Opsional) Membuat developer pengujian

Untuk keperluan tutorial ini, Anda dapat menggunakan developer yang ada untuk langkah berikutnya, yaitu membuat aplikasi developer. Namun, jika ingin, buat developer pengujian sekarang:

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

4. Membuat aplikasi developer

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

  1. Pilih Publikasikan > Aplikasi di menu navigasi samping.
  2. Klik + Aplikasi. 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 dapat menggunakan developer yang sudah ada untuk keperluan 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 Secret.

Bagian 3: Mengoperasikan Edge Microgateway

Setelah Anda mengonfigurasi Edge Microgateway dan setidaknya satu proxy yang mendukung Edge Microgateway di Edge, saatnya untuk memulai Edge Microgateway. Server HTTP Edge Microgateway akan berjalan di mesin lokal Anda, dan Anda harus 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 menjalankan perintah edgemicro configure. 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 menjadi administrator org).
    • env adalah lingkungan dalam organisasi Anda (seperti pengujian atau produksi).
    • key adalah kunci yang ditampilkan sebelumnya oleh perintah konfigurasi.
    • secret adalah kunci yang ditampilkan sebelumnya oleh perintah konfigurasi.

    Contoh

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

    Output

    Perintah start mengambil banyak informasi konfigurasi dari Apigee Edge (yang men-scroll ke jendela terminal). Pada output, Anda akan melihat daftar produk dan proxy yang peka terhadap microgateway yang ditemukan. Di akhir output, Anda akan melihat yang 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 yang lain, cd ke direktori yang sama tempat Anda memulai Edge Micro, lalu 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?

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

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

Dengan informasi ini, Edge Microgateway akan mengetahui proxy dan jalur proxy yang diizinkan untuk diproses. Privacy Sandbox menggunakan informasi produk untuk menegakkan keamanan (dengan cara yang sama persis seperti proxy API apa pun di Apigee Edge, tempat kunci aplikasi developer terkait dengan produk). Kami akan segera menjelaskan langkah-langkah untuk mengamankan Edge Microgateway.

2. Menguji Edge Microgateway

Dengan Edge Microgateway yang berjalan, Anda dapat memanggil proxy. Konfigurasi untuk proxy edgemicro_hello didownload dari Edge saat Anda memulai Edge Microgateway. Ingat, basepath proxy adalah /hello.

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

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

Error terjadi karena Anda tidak mengirimkan kunci API atau token akses yang valid bersama permintaan. Secara default, Edge Microgateway memerlukan kunci API atau token akses pada setiap panggilan API. Pada langkah tutorial berikutnya, kami akan mengamankan API ini dengan benar dan menunjukkan cara mendapatkan token akses yang valid dan menyertakannya bersama permintaan.

4. Hentikan Edge Microgateway

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

Bagian 4: Mengamankan Edge Microgateway

Anda dapat mengamankan panggilan API yang dilakukan melalui Edge Microgateway menggunakan kunci API atau token akses.

Mengamankan panggilan API dengan token akses OAuth2

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

1. Dapatkan kunci yang diperlukan

  1. Di UI Edge, buka Aplikasi Developer yang Anda buat sebelumnya. Nama Aplikasinya 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 mendapatkan token akses. Kami akan menunjukkan kedua metode tersebut.

Menggunakan CLI untuk mendapatkan token akses

Metode pertama praktis, dan mengikuti pola yang telah kita gunakan selama tutorial. Metode kedua umumnya lebih berguna bagi developer aplikasi klien yang perlu meminta token. Endpoint token yang sebenarnya diterapkan di proxy edgemicro-auth yang di-deploy 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 Anda dari aplikasi developer yang Anda buat di Apigee Edge dalam parameter -i dan -s:
    edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]
    

    Dengan keterangan:

    • org adalah nama organisasi Edge Anda (Anda harus menjadi administrator org).
    • env adalah lingkungan dalam organisasi Anda (seperti pengujian atau produksi).
    • consumer_id adalah ID Konsumen di Aplikasi Developer yang Anda buat sebelumnya.
    • consumer_secret adalah Rahasia Konsumen di Aplikasi Developer 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 untuk mengetahui bahwa Anda dapat memanggil endpoint token secara langsung, daripada menggunakan perintah edgemicro token. Berikut adalah contoh curl. Cukup ganti nama organisasi dan lingkungan di URL, dan teruskan nilai Consumer Key:Consumer Secret yang dipisahkan titik dua di header Autentikasi Dasar:

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 menjadi administrator org).
  • env adalah lingkungan dalam organisasi Anda (seperti pengujian atau produksi).
  • client_id adalah ID Konsumen di Aplikasi Developer yang Anda buat sebelumnya.
  • client_secret adalah Rahasia Konsumen di Aplikasi Developer yang Anda buat sebelumnya.

Output (Sampel)

Perintah tersebut, baik Anda menggunakan perintah CLI edgemicro token maupun memanggil endpoint menggunakan curl, akan 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 Di mana Edge Microgateway diinstal jika Anda tidak dapat menemukan file ini.
  2. Pastikan properti plugin oauth ini ditetapkan ke false. Nilainya salah secara default, 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 tersebut ke instance Edge Microgateway yang sedang berjalan. Perintah ini mengonfigurasi ulang Edge Microgateway dengan periode nonaktif nol:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Dengan keterangan:

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

    Contoh

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

4. Panggil API dengan aman

Dengan memiliki token akses, sekarang Anda 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, buka Aplikasi Developer yang Anda buat sebelumnya. Nama Aplikasinya adalah EdgeMicroTestApp.
  2. Di halaman Aplikasi Developer, tampilkan Kunci Konsumen, lalu salin. Nilai ini adalah kunci API. 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 Di mana Edge Microgateway diinstal jika Anda tidak dapat menemukan file ini.
  2. Pastikan properti plugin oauth ini ditetapkan ke false. Nilainya salah secara default, tetapi Anda dapat memeriksa kembali apakah Anda 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 tersebut ke instance Edge Microgateway yang sedang berjalan. Perintah ini mengonfigurasi ulang Edge Microgateway dengan periode nonaktif nol:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Dengan keterangan:

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

    Contoh

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

3. Panggil API secara aman menggunakan kunci API

Panggil API dengan header x-api-key sebagai berikut. Nilai Kunci Konsumen yang Anda salin dari Aplikasi Developer adalah kunci API. Secara default, Edge Microgateway mengharapkan Anda meneruskan kunci dalam 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. Di bagian tutorial berikutnya, kita akan melihat plugin yang menambahkan fungsionalitas ke Edge Microgateway.

Bagian 5: Menambahkan plugin Spike Arrest

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

Apa itu plugin?

Plugin adalah modul Node.js yang menambahkan fungsi ke Edge Microgateway. Modul plugin mengikuti pola yang konsisten dan disimpan di lokasi yang dikenal oleh Edge Microgateway, sehingga microgateway dapat menemukan dan memuatnya secara otomatis. Anda dapat membaca plugin selengkapnya di artikel Menggunakan plugin.

Menambahkan plugin lonjakan penangkapan

Plugin spike arrest melindungi dari lonjakan traffic. Aturan ini men-throttle jumlah permintaan yang diproses oleh instance Edge Microgateway.

Di Edge Microgateway, penahanan lonjakan diterapkan sebagai modul plugin. Untuk mengaktifkannya, Anda harus menambahkannya ke file konfigurasi Edge Microgateway.

  1. Buka file $HOME/.edgemicro/org-env-config.yaml.Di mana Edge Microgateway terinstal jika Anda tidak dapat menemukan file ini.
  2. Tambahkan elemen berikut. Anda dapat menambahkannya di mana saja 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 eksekusi 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 menjadi administrator org).
    • env adalah lingkungan dalam organisasi Anda (seperti pengujian atau produksi).
    • key adalah kunci yang ditampilkan sebelumnya oleh perintah konfigurasi.
    • secret adalah kunci yang ditampilkan sebelumnya oleh perintah konfigurasi.

    Contoh

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

Alasannya adalah penangkapan lonjakan akan memperhalus jumlah panggilan yang dapat dilakukan selama satuan waktu yang ditentukan. Jadi, dalam kasus 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 dengan yang digunakan untuk mengonfigurasi penangkapan lonjakan, Anda dapat menambahkan plugin lain, seperti plugin kuota. Seperti halnya lonjakan lonjakan, plugin kuota disertakan dengan setiap penginstalan Edge Microgateway. Kuota menentukan jumlah pesan permintaan yang diizinkan untuk dikirim oleh aplikasi ke API selama interval waktu yang ditentukan (menit atau jam).

Bagian 6: Melihat analisis di Apigee Edge

Sekarang kita memiliki instance Edge Microgateway yang berfungsi penuh. Mari kita lihat apa yang terjadi. Secara default, modul plugin analisis ditambahkan ke Edge Micro. Modul ini mengirim data analisis secara otomatis dari Edge Micro ke Apigee edge, yang digunakan oleh sistem Edge Analytics. Mari kita lihat:

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

Anda dapat membaca informasi selengkapnya tentang dasbor Edge Analytics di halaman beranda Dasbor Analytics dalam dokumentasi Edge. Untuk mempelajari plugin lebih lanjut, baca artikel Menggunakan plugin