www.tobuku.com - 1 - WEB SERVICE SECURITY April 2010 Tingkat: √ Oleh : Feri Djuandi Pemula Menengah Mahir Platform : .NET 2.0, Ms IIS PENDAHULUAN Web Service (WS) adalah salah satu bentuk dari model pemrograman terdistribusi (distributed computing) yang pada masa ini sudah diimplementasikan secara luas. Perkembangannya sudah cukup mapan, memiliki komunitas yang luas, didukung oleh vendor-vendor besar dan diadopsi untuk berbagai variasi aplikasi bisnis. WS bukanlah sesuatu yang baru. Sama seperti produk- produk teknologi lainnya yang dikenal saat ini, WS adalah hasil sebuah evolusi - bahkan idenya telah lahir jauh sebelum Internet dikenal seperti saat ini. Pada tahun 1996 Marc Andreessen salah seorang pendiri Netscape menulis di dalam sebuah publikasi bahwa bisnis di masa depan akan menggunakan Internet Inter-ORB Protocol (IIOP) untuk ”meminta layanan dari satu platform ke platform lain yang berbeda”. Kedengaran cukup akrab di telinga? Tentu saja istilah IIOP tidak pernah dikenal luas saat ini, namun mungkin Anda akrab dengan istilah Simple Object Access Protocol (SOAP). Konsep WS mulai berkembang saat itu karena para visioner teknologi melihat bahwa Internet akan mengalami perkembangan yang sangat pesat dan salah satu tantangannya adalah membuat sistem-sistem yang terhubung di dalam jaringan itu untuk bisa berkomunikasi satu sama lain. Model pemrograman terdistribusi yang di dalammnya dilandasi oleh Remote Procedure Call (RPC) yaitu berupa pemanggilan layanan-layanan oleh sebuah sistem terhadap sistem-sistem lain adalah cikal bakal dari WS. Pada masa itu protokol pemrograman terdistribusi yang sangat populer adalah Common Object Request Broker Architecture (CORBA) yang dikenal pada UNIX, dan Component Object Model (COM) yang dikenal pada Windows. Dua model pemrograman inilah yang banyak digunakan oleh para programmer untuk mengintegrasikan sistem-sistem yang bekerja di dalam sebuah jaringan lokal. Seiring berjalannya waktu maka definisi ”jaringan” telah bergeser dari sekedar Local Area Network (LAN) yang sempit menjadi sesuatu yang jauh lebih luas, yaitu Internet yang global. Dampak dari perkembangan ini adalah sistem-sistem menjadi lebih transparan dan terbuka untuk diakses melalui banyak kanal. Hal ini agak berbeda dibandingkan masa lalu dimana sistem-sistem relatif terisolasi dan sulit untuk berkomunikasi antar jaringan. Protokol CORBA dan COM didesain untuk bekerja pada lingkungan LAN. Walaupun protokol CORBA dan COM tetap mendapatkan tempat di hati para programmer, namun sepertinya saat ini adalah waktunya bagi Web Service. Dewasa ini banyak praktisi teknologi yang beralih pada WS untuk alasan fleksibilitas dan skalabilitas yang lebih tinggi Ada satu hal yang menjadi konsekuensi dari sebuah sistem yang terbuka, yaitu masalah keamanan (security). Hal keamanan ini pula yang menjadi isu penting di dalam WS. Serupa dengan RPC pada protokol yang lain, pemanggilan layanan WS oleh sebuah sistem harus melalui tahapan-tahapan keamanan untuk memastikan pemanggil dan fungsi yang dipanggilnya adalah valid. Sehubungan dengan ini, ada proses otentikasi dan otorisasi yang dilakukan oleh system penyedia layanan WS terhadap pemanggilnya untuk memastikan bahwa ia boleh dilayani. Tanpa mekanisme ini maka WS menjadi sistem yang terbuka lebar bagi siapapun untuk mengaksesnya
26
Embed
Web Services Security - Tobuku.com Services Security.pdf · tantangannya adalah membuat sistem-sistem ... dalam dokumen ini menggunakan bahasa pemrograman C#, ... Program WS yang
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
www.tobuku.com
- 1 -
WEB SERVICE SECURITY April 2010 Tingkat: √
Oleh : Feri Djuandi Pemula Menengah Mahir
Platform : .NET 2.0, Ms IIS
PENDAHULUAN Web Service (WS) adalah salah satu bentuk dari model pemrograman terdistribusi (distributed
computing) yang pada masa ini sudah diimplementasikan secara luas. Perkembangannya sudah
cukup mapan, memiliki komunitas yang luas, didukung oleh vendor-vendor besar dan diadopsi
untuk berbagai variasi aplikasi bisnis. WS bukanlah sesuatu yang baru. Sama seperti produk-
produk teknologi lainnya yang dikenal saat ini, WS adalah hasil sebuah evolusi - bahkan idenya
telah lahir jauh sebelum Internet dikenal seperti saat ini. Pada tahun 1996 Marc Andreessen
salah seorang pendiri Netscape menulis di dalam sebuah publikasi bahwa bisnis di masa depan
akan menggunakan Internet Inter-ORB Protocol (IIOP) untuk ”meminta layanan dari satu
platform ke platform lain yang berbeda”. Kedengaran cukup akrab di telinga? Tentu saja istilah
IIOP tidak pernah dikenal luas saat ini, namun mungkin Anda akrab dengan istilah Simple Object
Access Protocol (SOAP). Konsep WS mulai berkembang saat itu karena para visioner teknologi
melihat bahwa Internet akan mengalami perkembangan yang sangat pesat dan salah satu
tantangannya adalah membuat sistem-sistem yang terhubung di dalam jaringan itu untuk bisa
berkomunikasi satu sama lain.
Model pemrograman terdistribusi yang di dalammnya dilandasi oleh Remote Procedure Call
(RPC) yaitu berupa pemanggilan layanan-layanan oleh sebuah sistem terhadap sistem-sistem
lain adalah cikal bakal dari WS. Pada masa itu protokol pemrograman terdistribusi yang sangat
populer adalah Common Object Request Broker Architecture (CORBA) yang dikenal pada UNIX,
dan Component Object Model (COM) yang dikenal pada Windows. Dua model pemrograman
inilah yang banyak digunakan oleh para programmer untuk mengintegrasikan sistem-sistem
yang bekerja di dalam sebuah jaringan lokal. Seiring berjalannya waktu maka definisi ”jaringan”
telah bergeser dari sekedar Local Area Network (LAN) yang sempit menjadi sesuatu yang jauh
lebih luas, yaitu Internet yang global. Dampak dari perkembangan ini adalah sistem-sistem
menjadi lebih transparan dan terbuka untuk diakses melalui banyak kanal. Hal ini agak berbeda
dibandingkan masa lalu dimana sistem-sistem relatif terisolasi dan sulit untuk berkomunikasi
antar jaringan. Protokol CORBA dan COM didesain untuk bekerja pada lingkungan LAN.
Walaupun protokol CORBA dan COM tetap mendapatkan tempat di hati para programmer,
namun sepertinya saat ini adalah waktunya bagi Web Service. Dewasa ini banyak praktisi
teknologi yang beralih pada WS untuk alasan fleksibilitas dan skalabilitas yang lebih tinggi
Ada satu hal yang menjadi konsekuensi dari sebuah sistem yang terbuka, yaitu masalah
keamanan (security). Hal keamanan ini pula yang menjadi isu penting di dalam WS. Serupa
dengan RPC pada protokol yang lain, pemanggilan layanan WS oleh sebuah sistem harus melalui
tahapan-tahapan keamanan untuk memastikan pemanggil dan fungsi yang dipanggilnya adalah
valid. Sehubungan dengan ini, ada proses otentikasi dan otorisasi yang dilakukan oleh system
penyedia layanan WS terhadap pemanggilnya untuk memastikan bahwa ia boleh dilayani. Tanpa
mekanisme ini maka WS menjadi sistem yang terbuka lebar bagi siapapun untuk mengaksesnya
www.tobuku.com
- 2 -
termasuk pihak-pihak yang tidak berkepentingan. Tentunya ini adalah sesuatu yang tidak
diinginkan.
Di dalam dokumen ini istilah pemanggil layanan WS secara bergantian juga disebut WS client.
INFORMASI:
Otentikasi dan otorisasi adalah dua hal yang berbeda.
Otentikasi (authentication) adalah proses yang dilakukan infrastuktur
keamanan untuk memastikan keaslian pengakses (manusia atau sistem),
artinya dia memang sungguh-sungguh entiti tersebut, bukan entiti lain yang
mengaku menjadi pengakses tersebut. Proses otentikasi umumnya diawali
dengan membaca credential pengakses tersebut yaitu user ID dan password.
Otorisasi (authorization) adalah proses yang dilakukan infrastuktur keamanan
untuk memberikan hak-hak akses yang sesuai dengan tingkat akses yang
dimiliki pengakses. Otorisasi dilakukan setelah pengakses berhasil melalui
otentikasi.
www.tobuku.com
- 3 -
JENIS-JENIS KEAMANAN WEB SERVICE Di dalam platform Windows, Web Service diaplikasikan melalui .NET Framework, Internet
Information Services (IIS) dan tentunya sistem operasi Windows itu sendiri.
Jenis-jenis keamanan yang dapat diterapkan pada platform ini adalah:
1. Windows authentication
2. Forms authentication
3. Passport authentication
4. None
Pilihan jenis keamanan tersebut dapat dikonfigur melalui tag <authentication> di dalam file
Web.config dari aplikasi Web Service yang bersangkutan. Berikut ini diperlihatkan potongan isi