Web Service memberikan paradigma baru dalam mengimplementasikan sistem
terdistribusi melalui Web dengan menggunakan standard protokol SOAP,
WSDL dan UDDI yang berbasis XML. Dengan teknologi Web Service, konsep
sistem terdistribusi yang biasanya digunakan pada sistem yang bersifat
tertutup dan proprietary (DCOM, CORBA, RMI) dapat diterapkan kedalam
sistem yang bersifat terbuka (non-propriertary) berbasis Web. Penerapan
Web Service akan memudahkan proses integrasi dan kolaborasi antar
aplikasi pada lingkungan platform yang heterogen baik melalui jaringan
Intranet maupun Internet, dengan biaya yang lebih murah dan dalam waktu
yang relative lebih cepat. Namun demikian, masih banyak yang ragu untuk
segera menerapkan Web Service, khususnya jika digunakan untuk mendukung
transaksi bisnis melalui Internet (global). Alasan utama yang menjadi
perhatian adalah pada aspek keamanan dan kerentanan (vulnerability) yang
terdapat pada teknologi Web Service. Sementara itu standard keamanan
yang biasa digunakan untuk mengamankan aplikasi berbasis Web pada
umumnya tidak cukup mampu untuk mengamankan transaksi Web Service. Pada
makalah ini dibahas berbagai arsitektur keamanan dan spesifikasi
standard keamananan untuk Web Service.
Walaupun Web Service
menjanjikan solusi untuk mengatasi kelemahan teknologi berbasis Web pada
umumnya, namun demikian masih banyak yang merasa ragu untuk segera
menerapkan Web Service, khususnya pada lingkungan Internet (publik),
misalnya untuk mendukung transaksi e-business. Keraguan ini disebabkan
oleh faktor jaminan keamanan dari teknologi Web Service. Survey
menunjukkan bahwa faktor keamanan merupakan masalah utama yang menjadi
perhatian dalam mengimplementasikan Web Service.
Teknologi keamanan
yang biasa digunakan untuk mengatasi aspek keamanan pada sistem berbasis
Web pada umumnya, seperti Secure socket Layer (SSL)/ Transport Secure
Layer (TSL), tidak cukup memadai jika diterapkan pada system berbasis
Web Service. Hal ini dikarenakan SSL/TLS menyediakan solusi kemanan
dengan konteks point-to-point pada level transport layer. Sementara
karakteristik transaksi Web Service, membutuhkan pengamanan dalam
konteks end-to-end pada level application layer. Teknologi Firewall yang
menyediakan pengamanan pada level Network Layer juga tidak cukup
memadai, karena karakteristik transaksi Web Service yang menggunakan
standard internet (HTTP, SMTP, FTP) akan dilewatkan oleh Firewall karena
dianggap Sebagai trafik Internet pada umumnya (firewall friendly).
Walaupun
teknologi keamanan yang ada saat ini masih memegang peranan penting,
namun demikian masih diperlukan suatu mekanisme keamanan pada level
appplication layer yang dapat diterima luas oleh berbagai pihak yang
terlibat dalam implementasi Web Service, dan mendukung aspek
interoperabilitas dalam mengimplementasikan Web Service. Keberadaan
standard kemananan Web Service tersebut akan sangat mempengaruhi prospek
penerapan Web Service secara luas.
STANDAR PENGAMANAN WEB
XML signatures merupakan dokumen XML yang berisi informasi mengenai
tanda tangan digital. Tanda tangan digital dapat dilakukan terhadap
dokumen dengan tipe apapun, termasuk dokumen
XML. XML signatures dapat ditambahkan pada dokumen XML yang ditandatangani ataupun dapat berupa sebuah dokumen XML tersendiri.
Secara
garis besar, struktur XML signatures adalah sebagaimana (dimana “?”
menandakan nol atau satu kemunculan, “+” menandakan satu atau lebih
kemunculan, dan “*” menandakan nol atau lebih kemunculan) ditampilkan
pada
Kode XML
Salah satu keuntungan penggunaan standar
XML signature adalah dapat dilakukannya penandatanganan sebuah dokumen
XML oleh lebih dari satu pihak. Pihak tertentu hanya akan menandatangani
elemen XML yang menjadi tanggung jawabnya.
XML Encryption
Pengamanan terhadap data yang dipertukarkan merupakan salah satu
kebutuhan yang muncul pada proses pertukaran data. W3C telah
merekomendasikan Enkripsi XML sebagai metode alternatif untuk pengamanan
data dengan menggunakan format XML. Namun demikian, Enkripsi XML
dirancang untuk dapat diterapkan baik pada data XML maupun data non XML.
Implementasi
Enkripsi XML memungkinkan penggabungan data yang telah dienkripsi
dengan data yang tidak dienkripsi di dalam satu dokumen XML. Dengan
demikian, proses enkripsi maupun dekripsi dapat dilakukan hanya pada
data yang memang perlu diamankan saja.
Enkripsi XML telah
diimplementasikan baik pada level aplikasi maupun pada level parser.
Pada level aplikasi, implementasi Enkripsi XML paling banyak dibuat
dengan menggunakan DOM, Document Object Model.
Sementara pada level parser, implementasi Enkripsi XML di antaranya dibuat dengan menggunakan parser Xerces.
Enkripsi
XML secara umum dapat dianggap sebagai proses transformasi dokumen XML
yang belum terenkripsi ke dokumen XML yang sudah terenkripsi. W3C telah
merekomendasikan XSLT, Extensible Stylesheet Language Transformations,
sebagai bahasa transformasi untuk dokumen XML. Dengan demikian, maka
XSLT sebagai bahasa transformasi untuk XML dapat digunakan untuk
mengimplementasikan Enkripsi XML.
Xml Key Management Specification
XML key management specification (XMKS) merupakan sebuah spesifikasi
infrastruktur yang digunakan untuk pengamanan transaksi berbasis XML.
Pada web services digunakan format komunikasi data berbasis XML dan
untuk keamanan data-data tersebut digunakan teknik kriptografi
kunci-publik. Pengelolaan terhadap kunci-publik ditentukan dengan adanya
public-key infrastructure (PKI).
XKMS merupakan bentuk pengembangan
berikutnya dari PKI yang ada saat ini (PKIX) dan juga melakukan
perubahan standar PKI sebagai salah satu bentuk web services. Dengan
demikian XKMS dapat melakukan proses registrasi pasangan kunci-publik
(private-key dan public-key), penentuan lokasi penyimpanan kunci-publik,
validasi kunci-publik, pencabutan (revoke) kuncipublik, dan pemulihan
(recover) kuncipublik. Oleh karena itu, keseluruhan struktur PKI akan
dikembangkan ke dalam lingkungan berbasis XML. XML Key Management
Specification yang diterapkan sebagai web service akan mengurangi bentuk
“ketergantungan” terhadap fungsi PKI yang terintegrasi dalam aplikasi.
Sebelumnya penyedia PKI haruslah mengembangkan fungsi-fungsi khusus yang
diterapkan pada produk aplikasi yang akan digunakan sedangkan dengan
adanya XKMS sebagai web service, pada pengembangan produk aplikasi cukup
dibuat fungsi untuk menentukan pengguna (client) yang mengakses
fungsi/layanan yang disediakan oleh XKMS. Fungsi-fungsi pada XMKS
meliputi:
• Registration (registrasi). Layanan pada XKMS dapat
digunakan untuk mendaftarkan (registrasi) pasangan kunci dengan
menggunakan fungsi “register”. Pembangkitan pasangan kunci-publik dapat
dilakukan oleh client ataupun layanan. Pada saat kunci-kunci telah
terdaftarkan, layanan XKMS akan melakukan pengelolaan pencabutan ataupun
pemulihan kunci-kunci, yang dibangkitkan oleh server ataupun client.
• Locating. Pada XKMS terdapat fungsi yang digunakan untuk mendapatkan kembali kunci-publik yang terdaftar.
• Validation (validasi). Fungsi validasi digunakan untuk
memastikan bahwa kunci-publik yang telah didaftarkan dengan layanan XKMS
valid dan tidak kadaluarsa ataupun telah dicabut.
Keunggulan utama
XKMS dibandingkan PKI yang ada sebelumnya adalah proses enkapsulasi
kerumitan yang ada pada PKI menjadi komponen pada sisi server. Dengan
demikian pihak client hanya perlu mengetahui cara mengakses antarmuka
yang disediakan. Sebagai pengembangan lebih lanjut dari PKI yang ada
saat ini, XKMS memiliki karakteristik kompatibel (selaras) dengan
infrastruktur kunci-publik yang menggunakan X.509 (PKIX); dapat
mendukung perubahan struktur dasar kebijakan yang akan digunakan pada
PKI, contohnya Federal Bridge CA, ataupun perpaduan X.509 dengan
non-509; proses pembangkitan dengan menggunakan XML signature dan
encryption; dapatdikembangluaskan. Untuk produk aplikasi yang akan
menggunakan spesifikasi XKMS haruslah melakukan implementasi operasi
penandaan ataupun verifikasi paling dasar (basic) dan juga dapat
mengelola kunci-privat yang dimiliki oleh client kemudian dapat
melakukan pembangkitan dan pemrosesan terhadap transaksi-transaksi
berbasis XML.
Selain itu, berbeda dengan produk aplikasi pada PKIX,
produk aplikasi yang akan menerapkan XKMS tidak perlu melakukan
pemrosesan terhadap protokol ASN.1 ataupun sertifikasi X.509. Dengan
bentuk
penggunaan XKMS sebagai web service, maka produk aplikasi
“terbebaskan” dari kebutuhan untuk memahami dan menerapkan PKI
tradisional (PKIX) – cukup dengan memanggil dan menggunakan layanan yang
disediakan oleh web service XKMS.
WEB SCIENCE SECURITY
WS-Security atau juga dikenal sebagai Web Service Security Core Language
(WSS-Core) merupakan spesifikasi keamanan Web Service yang
mendefinisikan mekanisme pengamanan pada level pesan SOAP untuk menjamin
message integrity & confidentiality.
Standard WS-Security saat
ini dikembangkan secara resmi oleh OASIS berdasarkan spesifikasi yang
diusulkan oleh Microsoft, IBM, dan VerySign pada 11 April 2002.
Selanjutnya, OASIS melalui Web Service Security Technical Committee
(WSS) melanjutkan pengembangan WS-Security dengan menetapkan beberapa
spesifikasi teknis terpisah, seperti Core Specification, SAML Profile,
XMrL Profile, X.509 Profile, dan Karberos Profile. Produk WSS untuk Core
Specification (WSS-Core) adalah WSS: Soap Message Security. Spesifikasi
lain yang merupakan bagian dari Core Specification ini adalah WSS: User
Name Token Profile dan WSS: X.509 Certificate Token Profile.
Disamping
2 organisasi tersebut, ada organisasi lain yang juga aktif
mengembangkan standard keamanan Web Service yang disponsori oleh Sun
Microsystem yaitu Liberty Alliance Technology Group. Namun pada akhirnya
lembaga ini juga mengumumkan untuk memfokuskan diri pada pengembangan
spesifikasi WS-Security dan berkerjasama dengan OASIS untuk maksud
tersebut. Dengan demikian, WS-Security akan menjadi standard de-facto
untuk pengamanan Web Service.
Secara umum standard WS-Security (versi
orisinal) mendefinisikan suatu spesifikasi mengenai bagaimana
mengamankan pesan SOAP secara end-to-end, dengan cara menyertakan
(attach) digital signature, enkripsi dan security token pada bagian
Header dari pesan SOAP. Spesifikasi WSS-Core versi terbaru menyediakan 3
mekanisme untuk memproteksi pesan dari ancaman terhadap upaya gangguan
keamanan pesan SOAP, yaitu (1)Kemampuan untuk mengirim security token
sebagai bagian dari pesan SOAP, (2) Message integrity dan (3) Message
confidentiality. Namun demikian, mekanisme tersebut tidak memberikan
solusi keamanan yang lengkap untuk Web Service. Spesifikasi ini
merupakan building block yang digunakan untuk mengakomoda- sikan
berbagai variasi model keamanan dan teknologi kemanan.
Dengan kata
lain, WS-Security tidak menspesifikasikan suatu mekanisme keamanan baru,
tetapi menyediakan fleksibilitas untuk menggunaan teknologi keamanan
yang sudah ada (X.509, Karberos, XML Encryption), sehingga dapat
mengakomodasi berbagai pendekatan keamanan secara umum. Hal baru yang
ditambahkan oleh WS-Security adalah suatu spesifikasi untuk menerapkan
mekanisme keamanan yang sudah ada (existing) tersebut kedalam pesan
SOAP.
Tidak ada komentar:
Posting Komentar