Sunday, July 1, 2018

Tutorial paling dasar dalam penggunaan OAG

Halo gaes, kembali lagi dengan saya Bimo A.K.A. Bear disini,
pada kesempatan ini saya ingin berbagi bagaimana cara penggunaan paling dasar dari OAG :D

Latar Belakang:

Dahulu saat saya baru pertama kali mengerjakan projek OAG, saya membutuhkan waktu yang cukup lama untuk memahami cara penggunaan dan kapabilitas OAG. Hal ini dikarenakan dokumentasi dari Oracle cukup sulit untuk dipahami dan kurang straight forward bagi developer yang perlu memahami cara penggunaannya dalam waktu yang cukup cepat. Selain itu blog-blog di nostra yang tentang OAG kebanyakan langsung lompat dalam pembuatan policy (apa yang akan dilakukan oleh OAG), bukan bagaimana dasar penggunaan OAG. Kesulitan saya ini ternyata dialami juga oleh pegawai lain yang juga harus menggunakan OAG pada projeknya, maka dari itu saya memutuskan untuk membuat tutorial paling dasar dalam penggunaan OAG, sehingga untuk semua orang yang membaca blog ini dapat langsung paham garis besar cara penggunaan OAG :)

Apasih OAG itu dan kenapa harus pakai OAG?

Kalau nyontek dari blog-blog OAG lain, didapatkan:

"Oracle API Gateway (OAG) adalah sebuah platform yang komprehensif untuk mengelola dan mengamankan web API." - Isnin David 2016 (Source)

Dari penjelasan bung Isnin diatas dapat diketahui bahwa OAG itu platform yang komprehensif, dan kenapa digunakan itu karena OAG dapat mengelola dan mengamankan web API. dan berdasarkan namanya OAG itu adalah sebuag gateway, jadi OAG juga merupakan pintu yang memberikan jalan untuk API yang ditembak dari luar mencapai Sistem kita :)

begini nih kalo penggambarannya:


Gambar hasil nyolong dari sini dan diedit pake MS Paint.

Tuh dari gambar itu kita tau jadi setiap orang luar (External Clients) kalau mau masuk ke Sistem kita harus lewat OAG, si OAG yang nantinya bakal nentuin apakah yang mereka kasih bisa diterima atau tidak di sistem kita.

Penggunaan paling dasar OAG

Seperti yang saya jelaskan sebelumnya, setiap orang luar (External Clients) kalau mau masuk ke Sistem kita harus lewat OAG. Agar orang tersebut dapat masuk ke sistem kita, maka mereka perlu mengetahui cara mengakses sistem kita, namun dikarenakan alasan keamanan orang luar tersebut pasti tidak boleh langsung mengakses sistem kita jadi dia hanya diberi akses untuk mengakses ke OAG dimana OAG dapat mengakses sistem kita sehingga seolah-olah orang luar tersebut langsung mengakses ke sistem kita.

"Simplenya sih, External Client akan mengakses endpoint OAG untuk mendapatkan apa yang dibutuhkannya" - Bimo (Bear) 2018

Hal-hal yang dibutuhkan:

1. Web Browser atau postman untuk pengetesan endpoint.

2. Server OAG dengan gateway yang sudah up.

3. Aplikasi OAG Policy Studio yang dapat digunakan untuk membuat dan merubah konfigurasi pada OAG.

Tata cara pembuatan endpoint OAG:

1. Pikirkanlah port dan path yang paling cocok untuk servis anda.

Sebagai contoh saya akan memakai OAG pada localhost (bila menggunakan server luar, masukan alamat server OAG tersebut), saya akan menggunakan port 3939 dan path /test sehingga alamat endpoint OAG saya adalah:

http://localhost:3939/test

2. Daftarkan port dan path tersebut pada OAG Policy Studio.

OAG Policy Studio merupakan aplikasi yang digunakan untuk mengatur apa yang akan dilakukan oleh OAG, sekarang bukalah aplikasi OAG Policy Studio.


Lalu klik tulisan Connect to Server... pada sebelah kiri window.


Bila sudah ada session untuk mengakses server OAG anda, maka dapat langsung memasukkan username dan password lalu mengklik tombol OK untuk mengakses OAG anda.

Bila belum memiliki session, dapat membuat session terlebih dahulu dengan mengklik tombol Add pada sebelah kanan textbox pengisian nama session, lalu masukkan host dan port server OAG anda pada isian Host dan Port pada bagian Connection Details, setelah itu isilah Username dan Password dari server OAG, jangan lupa untuk mengklik Save pada bagian Saved Sessions lalu klik OK untuk mengakses server OAG anda.


Di window yang baru muncul akan ditampilkan Group dan Gateway yang terdaftar dalam OAG anda, biasanya anda tidak diperlukan untuk membuat Group dan Gateway baru dalam projek anda karena sebagian besar pasti sudah dibuatkan terlebih dahulu. Pada gambar diatas sudah terdapat 2 Group dan masing-masing memiliki 1 Gateway, pilihlah Gateway yang akan anda gunakan (Untuk melakukan perubahan pada Gateway, status dari Gateway tersebut harus up).


Setelah memilih Gateway yang akan anda gunakan, akan muncul window pengisian Passphrase, biasanya bisa langsung klik OK, kecuali bila ada informasi penggunaan Passphrase baru diisi bagian Passphrasenya.


Pada window inilah kita akan melakukan semua konfigurasi dan perubahan policy untuk menentukan apa yang akan dilakukan OAG, untuk mendaftarkan endpoint kita perlu menentukan apa yang harus dilakukan pada saat pengaksesan endpoint tersebut. dan hal tersebut ditentukan oleh Policy yang akan kita daftarkan. Untuk membuat sebuah Policy dapat dilakukan dengan mengklik kanan Dropdown Policies. demi kerapihan mari kita buat container dari Policy tersebut, jadi pilihlah pilihan Add Container terlebih dahulu. Masukkan nama dari Container tersebut sebagai contoh saya memberikan nama "Test", klik kanan lagi pada container tersebut barulah kita pilih pilihan Add Policy dan beri nama "Test Policy".


Di Policy inilah kita akan menentukan apa yang akan dilakukan bila orang mengakses endpoint yang akan kita daftarkan, disini juga tempat yang biasa menjadi tutorial-tutorial OAG yang sudah ada di blog-blog nostratech. Disini saya akan memberikan filter (step yang akan dilakukan oleh endpoint) Set Message (cari di search box disebelah kiri, lalu drag and drop ke kotak biru ditengah).


Disini saya memberikan Content-Type "Text/Plain" dan memberikan Message Body dengan isi random. Klik Finish. Pada Filter Message yang tercipta klik kanan dan pilih Set as Start.


Setelah membuat Policy mari kita daftarkan endpoint anda, pertama masuk ke dropdown Listeners, lalu pada dropdown Oracle API Gateway klik kanan lalu pilih add HTTP Services, Servis ini akan saya beri nama "Test Services", masuk ke dropdown Test Services lalu pilihlah pilihan Ports.


Klik tombol Add disebelah kanan, pada window baru isi nama dengan nama port yang diinginkan, pada kasus ini saya memberikan nama "Test Port" lalu isi Port dengan Port yang diinginkan, disini saya beri "3939".


Setelah membuat port, sekarang kembali ke Dropdown Test Services lalu pilihlah pilihan Paths.


Pada menu ini pilihlah tombol Add dan pilihlah Relative Path. pada textbox paling atas masukkan path yang diinginkan, pada kasus ini adalah /test, lalu pilihlah policy yang dibuat pada pilihan Path Specific Policy, dan klik OK.


Setelah mendaftarkan endpoint, Pilihlah menu deploy dibagian kanan atas. klik deploy.

SELAMAT, ANDA SUDAH MEMBUAT FUNGSI PALING DASAR DARI OAG

3. Sekarang anda bisa mengetes dengan menggunakan browser berikut contohnya:


Kita sudah berhasil mendaftarkan endpoint "http://localhost:3939/test" pada OAG, sisanya adalah bagaimana kita menentukan apa yang akan endpoint tersebut lakukan, di test yang kita lakukan hanyalah memberikan tulisan random tapi dengan menggunakan filter-filter policy yang disediakan OAG, kita dapat menggunakan endpoint tersebut untuk bermacam-macam hal, berikut contoh-contoh penggunaan filter pada policy dan pendaftaran API yang sudah dibuat pada blog-blog nostra:

  1. Membuat Filter "IP Address" dan "Throttling" di OAG.
  2. Register WSDL SOAP API via Policy Studio di OAG.
  3. Register REST API di OAG.
  4. Convert REST to SOAP in OAG.
  5. Membuat OAuth2 Server dengan OAG.
  6. Membuat dan Mengakses OAuth2 protected content dengan OAG.

Sekian penjelasan dari saya, untuk perhatiannya saya ucapkan terimakasih.

Reference:
Pengalaman pribadi dari belajar otodidak mengenai teknologi yang sangat asing dan belum pernah saya pelajari sebelumnya.


No comments:

Post a Comment