LAPORAN PROYEK AKHIR diajukan guna melengkapi Proyek Akhir dan memenuhi salah satu syarat untuk menyelesaikan Program Studi Diploma III Teknik Informatika dan mencapai gelar Ahli Madya Diusulkan oleh Muhammad Lutfial Hakim NIM !!"!#"$"%& PROGRAM STUDI DIPLOMA III PROGRAM STUDI TEKNIK INFORMATIKA POLITEKNIK BANYUWANGI 2012 ii PERSEMBAHAN Proyek akhir ini saya persem'ahkan untuk ( $ I'unda Siti )hasanah dan ayahanda )usaikun tercinta* yang telah mendo+akan dan mem'eri kasih sayang serta pengor'anan selama ini # ,uru-guruku sejak SD sampai PT terhormat* yang telah mem'erikan ilmu dan 'im'ingan dengan penuh kesa'aran & Almamater Program Studi Teknik Informatika Politeknik .anyu/angi iii PERNYATAAN BUKAN PLAGIAT 0ang 'ertanda tangan di'a/ah ini ( Nama Mahasis/a ( Muhammad Lutfial Hakim NIM ( !!"!#"$"%& Dengan judul ( 1ancang .angun Pem'uatan Aplikasi Manajemen 2penldap Di Politeknik .anyu/angi Menyatakan 'ah/a laporan akhir ini adalah hasil kerja kami sendiri dan 'ukan merupakan plagiat Pernyataan ini kami 'uat dengan se'enarnya dan 'ila ternyata dikemudian hari ternyata melanggar pernyataan ini* kami 'ersedia menerima sanksi yang 'erlaku .anyu/angi* #" 3uni #"$# 0ang menyatakan* Muhammad Lutfial Hakim NIM !!"!#"$"%& i4 LEMBAR PERSETUJUAN LAPORAN 35D5L P1206) A)HI1 1AN7AN, .AN,5N P6M.5ATAN APLI)ASI MANA36M6N 2P6NLDAP DI P2LIT6)NI) .AN058AN,I Diusulkan oleh Muhammad Lutfial Hakim NIM !!"!#"$"%& Pem'im'ing Dosen Pem'im'ing I ( De4it Su/ardiyanto* SSi* MT Dosen Pem'im'ing II ( Deddy Hidayat )usuma* ST 4 LEMBAR PENGESAHAN 35D5L P1206) A)HI1 1ancang .angun Pem'uatan Aplikasi Manajemen 2penldap Di Politeknik .anyu/angi 2leh ( M5HAMMAD L5T9IAL HA)IM !!"!#"$"%& Laporan Proyek akhir ini telah disetujui dan disahkan se'agai salah satu syarat kelulusan Program Diploma III Politeknik .anyu/angi Pada ( Hari ( 1a'u Tanggal ( #" 3uni #"$# Tempat ( Program Studi Teknik Informatika Politeknik .anyu/angi Tim Penguji* )etua Penguji Sekretaris De4it Su/ardiyanto* SSi* MT NIPP #"$""&""# Dedy Hidayat )usuma* ST NI0 #"$$"&":! Anggota Penguji $ Anggota Penguji # 6ka Mistiko 1ini* S)om NI0 #"";"&"": Herman 0uliandoko* ST NI0 #"$$"&":& Mengesahkan )epala Program Studi Teknik Informatika* Moh Dimyati Ayatullah*ST NI0 #"";"&""< 4i Rancang Bangun P!"ua#an A$%&'a(& Mana)!n O$n%*a$ D& P+%&#'n&' Ban,u-ang& Mu.a!!a* Lu#/&a% Ha'&! Program Studi Tekik Informatika, Politeknik Banyuwangi ABSTRAK Salah satu sistem terpusat yang sedang dikem'angkan di Politeknik .anyu/angi adalah penerapan active directory menggunakan 2penLDAP 5ntuk memudahkan penerapan 2penLDAP* maka digunakan aplikasi phpLdapAdmin untuk melakukan pengelolaannya* akan tetapi ke'utuhan fasilitas yang le'ih spesifik tidak dapat dipenuhi oleh program terse'ut Pada proyek akhir ini dikem'angkan aplikasi pengelolaan 2penLDAP* yaitu manajemen pengguna* fasilitas untuk mengu'ah sandi pengguna yang telah terdaftar* dan fungsi pendaftaran untuk mahasis/a yang 'elum terdaftar Aplikasi ini di'uat dengan menggunakan 'ahasa pemrograman 3a4a yang 'er'asis /e'* sehingga le'ih mudah diakses oleh penggunanya Aplikasi ini dapat dijalankan di sistem operasi Linu= maupun 8indo/s selama terdapat 3a4a dan Ser4let 7ontainer* seperti Tomcat dan ,lassfish Ka#a Kunc& 0 active directory* openldap* ja4a* ser4let container 4ii D(&gn +/ Ma'&ng O$nLDAP A$$%&ca#&+n Manag!n# In P+%,#c.n&c Ban,u-ang& Mu.a!!a* Lu#/&a% Ha'&! Informatics Engineering, Banyuwangi Polytechnics ABSTRACT One of centralized system that is being develoed at the Polytechnic Banyuwangi is the alication of active directory using Oen!"#P$ To facilitate the imlementation of Oen!"#P, h!da#dmin then used to erform the management, but the more secific needs of the facility can not be met by the rogram$ #t this final ro%ect was develoed alications that can manage Oen!"#P, including the user management, the facility to change users& asswords that have been registered, and registration function for students who are not registered$ This alication is created using the 'ava rogramming language web(based, making it easily accessible to users$ This alication can be run on !inu) and *indows oerating systems as long as there are 'ava and the Servlet +ontainer such as Tomcat and ,lassfish$ Keyword : active directory, oenlda, %ava, servlet container 4iii RINGKASAN Rancang Bangun P!"ua#an A$%&'a(& Mana)!n O$n%*a$ D& P+%&#'n&' Ban,u-ang&1 Muhammad Lutfial Hakim* !!"!#"$"%&> #"$#> %$ Halaman> Program Studi Teknik Informatika Politeknik .anyu/angi Salah satu sistem terpusat yang sedang dikem'angkan adalah penerapan active directory pada hotsot dengan menggunakan 2penLDAP dan S?uid 8e' Pro=y Saat ini pengelolaan pengguna pada active directory terse'ut dilakukan oleh administrator dengan menggunakan phpLDAPAdmin yang 'er'asis /e' Salah satu ke'utuhan di Politeknik .anyu/angi yang tidak dapat dipenuhi oleh phpLDAPAdmin adalah adalah tidak adanya tingkatan hak akses pada pengelolaan pengguna Tujuan penelitian proyek akhir ini adalah untuk mem'uat aplikasi yang dapat mengelola pengguna pada active directory menggunakan hak akses khusus* sehingga pengelolaan pengguna tidak hanya dapat dilakukan oleh administrator tetapi juga dapat dilakukan oleh staf Staf hanya diper'olehkan untuk mengelola pengguna dan tidak memiliki hak akses untuk meru'ah struktur active directory$ Aplikasi ini di'uat menggunakan 'ahasa pemrograman ja4a 'er'asis /e' yaitu 3a4aSer4er 9aces* dan untuk mempermudah pengem'angan aplikasi* digunakan 'e'erapa pustaka ja4a* yaitu Spring 9rame/ork* Spring Ldap* dan Spring Security 5ntuk memastikan aplikasi yang di'uat sesuai dengan rencana a/al* maka dilakukan pengujian terhadap aplikasi terse'ut Metode pengujian yang digunakan adalah metode black bo)$ Dari rekapitulasi hasil pengujian yang telah dilakukan* diketahui 'ah/a aplikasi yang di'uat sesuai dengan rencana a/al seperti terlihat pada ta'el <$ yang terdapat pada 'a' < i= KATA PENGANTAR Puji Syukur kehadirat Allah S8T atas segala rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan proyek akhir yang 'erjudul 1ancang .angun Pem'uatan Aplikasi Manajemen 2penldap di Politeknik .anyu/angi Proyek Akhir ini disusun untuk memenuhi salah satu syarat untuk menyelesaikan pendidikan diploma tiga @D&A pada Program Studi Teknik Informatika Politeknik .anyu/angi Penyusunan proyek akhir ini tidak lepas dari 'antuan 'er'agai pihak 2leh karena itu* penulis ingin menyampaikan ucapan terima kasih kepada( $ Ir H Asmuji* MM Selaku Direktur Politeknik .anyu/angi> # De4it Su/ardiyanto* MT selaku dosen pem'im'ing pertama dan Dedy Hidayat )usuma* ST selaku dosen pem'im'ing kedua yang telah 'ersa'ar mem'im'ing* meluangkan 'anyak /aktu* pikiran* perhatian dan tenaga serta selalu mem'erikan semangat dalam penulisan Proyek Akhir ini> & Ayahanda )usaikun dan I'unda Siti )hasanah tercinta yang senantiasa mem'erikan doa dan dukungan* 'aik materiil maupun spirituil demi terselesaikannya proyek akhir ini> < .apak dan i'u dosen Teknik Informatika yang juga telah mem'antu mem'im'ing jalannya Proyek Akhir ini> % Semua pihak yang tidak dapat dise'utkan satu per satu> Penulis juga menerima segala kritik dan saran dari semua pihak demi kesempurnaan proyek akhir ini Akhirnya penulis 'erharap semoga Proyek Akhir ini dapat 'ermanfaat = DAFTAR ISI Halaman HALAMAN JUDUL i HALAMAN PERSEMBAHAN iii HALAMAN PERNYATAAN BUKAN PLAGIAT i4 HALAMAN PEMBIMBING 4 HALAMAN PENGESAHAN 4i ABSTRAK 4ii ABSTRACT 4iii RINGKASAN i= KATA PENGANTAR = DAFTAR ISI =i DAFTAR TABEL =i4 DAFTAR GAMBAR =4 DAFTAR LAMPIRAN =4ii BAB I2 PENDAHULUAN $ 121 La#a3 B%a'ang Ma(a%a. $ 122 Tu)uan *an Man/aa# $ 122 P3u!u(an Ma(a%a. # 124 Ba#a(an Ma(a%a. # BAB II2 TINJAUAN PUSTAKA < 221 Directory Serice < 222 O$nLDAP < 224 $.$L*a$A*!&n % 225 A$ac. T+!ca# % 226 Ja7a % #%$ 3a4aSer4er 9aces B #%# Spring 9rame/ork B #%& 3asper1eport : #%< 3D.7 : =i 228 N#"an( ; 229 M,S:L ; 22; M+*% W!ter"!## ! 22< D&ag3a! U$e C!$e $" 2210 D&ag3a! C#!$$ $$ 2211 D&ag3a! Se%&e'ce $$ 2212 Pngu)&an B#!c( Bo) $$ BAB III2 METODE PENELITIAN $& 421 T!$a# *an Wa'#u Pn%&#&an $& &$$ Tempat Penelitian $& &$# 8aktu Penelitian $& 422 A%a# *an Ba.an $& 424 P3ancangan P3ang'a# Luna' $< &&$ Pengem'angan perangkat lunak menggunakan metode waterfall $< &&# 1ancangan Penelitian $% &##$ Diagram -se +ase $% &### .lowchart $: &&& 1ancangan 61D @Entity /elationshi "iagramA 'asis data MySCL $! &&< 1ancangan na4igasi $! &&% 1ancangan tata letak antar muka aplikasi #$ BAB I=2 HASIL DAN PEMBAHASAN #& 521 Ha(&% #& <$$ Halaman depan aplikasi #& <$# Halaman Masuk kedalam aplikasi @loginA #& <$& Halaman pendaftaran pengguna #< <$< Halaman depan untuk pengguna dengan hak akses user #% <$% Halaman depan untuk pengguna dengan hak akses staf #B <$B Halaman depan untuk pengguna dengan hak akses administrator #: =ii <$: Halaman profil pengguna #: <$; Halaman untuk mengu'ah sandi pengguna #; <$! Halaman untuk menam'ah pengguna #! <$$" Halaman untuk menampilkan data pengguna &" <$$$ Halaman untuk mencari data pengguna &" <$$# Halaman untuk memproses pendaftaran pengguna &$ <$$& Halaman untuk mengkonfigurasi distinguish name &# <$$< Halaman untuk melihat logs && <$$% Halaman untuk menampilkan laporan data pengguna && <$$B Halaman untuk menampilkan laporan data logs &< <$$: Halaman untuk menampilkan laporan data pendaftaran &< 522 P!"a.a(an &% <#$ Penyelesaian dari perumusan masalah &% <## Pengujian aplikasi <; BAB =2 KESIMPULAN DAN SARAN %" 621 K(&!$u%an %" 622 Sa3an %" DAFTAR PUSTAKA =iii DAFTAR TABEL Halaman Ta'el &$ 3ad/al pengerjaan proyek akhir $& Ta'el <$ Metode pengujian black bo) <; =i4 DAFTAR GAMBAR Halaman ,am'ar #$ Logo apache tomcat % ,am'ar ## )erangka diagram 3S9 tingkat atas B ,am'ar #& Arsitektur Spring : ,am'ar #< Metode *aterfall ! ,am'ar &$ Tahapan tahapan metode waterfall $< ,am'ar &# Diagram -se +ase aplikasi $B ,am'ar && .lowchart menam'ah pengguna 2penLDAP $: ,am'ar &< .lowchart pendaftaran pengguna $; ,am'ar &% 61D aplikasi manajemen 2penLDAP $! ,am'ar &B Struktur na4igasi #" ,am'ar &: 1ancangan tata letak antar muka aplikasi #$ ,am'ar <$ Halaman depan aplikasi #& ,am'ar <# Halaman masuk kedalam sistem #< ,am'ar <& Halaman masuk kedalam aplikasi yang gagal #< ,am'ar << Halaman pendaftaran Pengguna #% ,am'ar <% Halaman pendaftaran pengguna yang gagal #% ,am'ar <B Halaman depan untuk pengguna dengan hak akses user #B ,am'ar <: Halaman depan untuk pengguna dengan hak akses staf #B ,am'ar <; Halaman depan untuk pengguna dengan hak akses administrator $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ #: ,am'ar <! Halaman profil pengguna #: ,am'ar <$" Halaman untuk mengu'ah sandi #; ,am'ar <$$ Halaman mengu'ah sandi yang gagal #; ,am'ar <$# Halaman untuk menam'ah pengguna #! ,am'ar <$& Halaman menam'ah pengguna yang gagal #! ,am'ar <$< Halaman untuk menampilkan data pengguna &" ,am'ar <$% Halaman pencarian data pengguna &" ,am'ar <$B Halaman data pendaftaran yang 'elum diproses &$ =4 ,am'ar <$: Halaman data pendaftaran yang sudah diproses &$ ,am'ar <$; Halaman konfigurasi distinguish name &# ,am'ar <$! Halaman konfigurasi distinguish name yang gagal &# ,am'ar <#" Halaman untuk melihat logs && ,am'ar <#$ Halaman untuk mem'uat laporan data pengguna && ,am'ar <## Halaman untuk mem'uat laporan data logs &< ,am'ar <#& Halaman untuk mem'uat laporan data pendaftaran &< ,am'ar <#< Diagram class login aplikasi &% ,am'ar <#% Diagram se0uence login aplikasi &B ,am'ar <#B Diagram class menam'ah pengguna &: ,am'ar <#: Diagram se0uence menam'ah pengguna &; ,am'ar <#; Diagram class mencari pengguna &! ,am'ar <#! Diagram se0uence mencari pengguna &! ,am'ar <&" Diagram class mengu'ah dan menghapus data pengguna <$ ,am'ar <&$ Diagram se0uence mengu'ah data pengguna <# ,am'ar <&# Diagram se0uence menghapus data pengguna <# ,am'ar <&& Diagram class pendaftaran pengguna <& ,am'er <&< Diagram se0uence pendaftaran pengguna << ,am'ar <&% Diagram class untuk memproses pendaftaran <% ,am'ar <&B Diagram se0uence menyetujui pendaftaran pengguna <B ,am'ar <&: Diagram se0uence menolak pendaftaran pengguna <B ,am'ar <&; Diagram class mengu'ah sandi <: ,am'ar <&! Diagram se0uence mengu'ah sandi <; =4i DAFTAR LAMPIRAN Lampiran A Source code aplikasi Lampiran . Pengujian aplikasi =4ii