Wednesday, May 29, 2019

Keamanan Web Wervices



Kemanan Web Service adalah sistem pengamanan pada user akses atau integrase sistem akses ke web service tersebut.
Dengan kemudahan integrasi antar Web Service, yang menjadi masalah adalah memastikan AUTHN (otentikasi) dan AUTHZ (otorisasi) yang tepat untuk akses web service tersebut.Web Service dapat dibuat hanya memberikan akses pada web service tertentu atau module terntu "perlu memiliki hak akses" berdasarkan AUTHN dan AUTHZ yang tepat. Skema AUTHN yang tepat memungkinkan pembuat web service (Web Service atau layanan) untuk mengidentifikasi pengguna dengan benar (user atau aplikasi yang mengakses) dan untuk mengevaluasi tingkat akses mereka (authz). Dengan kata lain, dapatkah user menggunakan metode akses tertentu (logika tertentu) berdasarkan akses/kredensial yang diberikan ?


Metode yang paling sering digunakan untuk otentikasi dan otorisasi termasuk

  • Static strings : yaitu kata sandi yang disediakan oleh Web Service kepada user akses.
  • Dynamic tokens: yaitu metode pemberian token dengan memberikan waktu akses dari layanan otentikasi.
  • User-delegated tokens: yaitu token OAuth yang diberikan untuk otentikasi pengguna/user.

Metode di atas memberikan tingkat keamanan yang berbeda dan kemudahan integrasi. Seringkali, metode integrasi yang mudah akan menggunakan model keamanan terlemah.

Static strings

Dalam metode static strings, user pengguna atau klien Web Service embed string sebagai token setiap memanggil web service. Metode ini sering disebut sebagai otentikasi dasar. "Dari sudut pandang keamanan, otentikasi dasar tidak terlalu bagus dari segi keamanan. Ini berarti mengirim kata sandi pengguna melalui jaringan dalam teks untuk setiap halaman yang diakses (kecuali protokol tingkat rendah yang aman, seperti SSL, digunakan untuk mengenkripsi semua transaksi Dengan demikian, pengguna sangat rentan terhadap paket sniffer di internet”.

Dynamic tokens

Ketika Web Service aksesnya hanya menggunakan dynamic tokens, yaitu memberikan waktu kadaluarsa yang di embed ke token. Token memiliki waktu kadaluarsa akses yang di sebut The token has a time to live (TTL) jika tokennya kadaluarsa untuk akses user harus mendapatkan token baru. Metode Web Service memiliki algoritma pemeriksaan waktu kadaluarsa, dan jika token kadaluarsa, permintaan untuk akses ke web service tidak bisa dilakukan. "Contoh token tersebut adalah JSON Web Token. Klaim" exp "(waktu kedaluwarsa) mengidentifikasi waktu kedaluwarsa pada atau setelah mana JWT TIDAK HARUS diterima untuk diproses."

User-delegated token

Jenis token ini digunakan dalam sistem di mana aplikasi perlu mengakses Web Service dengan user pengguna aplikasi itu. Yaitu dengan menggunakan ID pengguna dan kata sandi ke aplikasi, pengguna memberikan token yang memberikan izin pengguna untuk aplikasi akses ke Web Service.
Otorisasi OAuth 2.0 untuk memperoleh akses terbatas ke HTTP Service, baik atas nama pemilik/owner dengan mengatur persetujuan akses, atau dengan memungkinkan aplikasi untuk mendapatkan akses atas namanya sendiri.

References


Related Posts

0 comments: