80 BAB 4 IMPLEMENTAS I DAN EVALUAS I
4.1 Proses Instalasi Pada bagian ini akan dijelaskan tentang proses pembuatan aplikasi yang digunakan sebagai bahan evaluasi untuk skripsi ini. Pembuatan aplikasi ini memerlukan tahap-tahap yang harus dilalui terlebih dahulu sebelum dilakukan evaluasi terhadap system yang berjalan. Tahap-tahap ini dijelaskan pada sub bab di bawah ini.
4.1.1 Instalasi Server LD AP Bagian ini merupakan tahap awal dalam pembuatan aplikasi binus-access. Pembuatan LDAP server dilakukan sebagai tempat penyimpanan user atau data tentang user yang akan menggunakan aplikasi binus-access. LDAP digunakan karena Operating system yang digunakan adalah berbasiskan Linux, yaitu Linux Ubuntu Server 8.04. Proses pembuatan LDAP server dijelaskan pada sub bab di bawah ini : Install Linux Ubuntu Server 8.04 Install OpenLDAP Install Phpldapadmin
80
81 4.1.2 Instalasi Server CAS CAS (Central Authentication Service) merupakan sebuah aplikasi yang digunakan untuk menghubungkan banyak aplikasi dalam banyak server sehingga membuat suatu aplikasi menjadi satu seperti sebuah portal. Dikarenakan CAS memiliki arsitektur Client/Server, maka pada tahap ini adalah instalasi CAS server. Proses pembuatan CAS server ini dijelaskan pada sub bab di bawah ini : Install Linux Ubuntu Server 8.04 Install Java Development Kit 6 Install Apache Tomcat 6 Install CAS Server 3.2.1
4.1.3 Instalasi Server Web Pembuatan web server ini dibuat karena aplikasi binus-access ini merupakan sebuah aplikasi berbasiskan web. M aksudnya adalah seperti sebuah portal yang didalamnya berisi banyak aplikasi lainnya yang digabungkan dalam satu aplikasi portal. Proses pembuatannya adalah sebagai berikut : Install Linux Ubuntu Server 8.04 Install Joomla 1.0.15
4.1.4 Instalasi Blog Server Pada pembuatan server blog ini melalui beberapa tahapan yang harus dilalui, tahapan tersebut adalah sebagai berikut :
82 Install Linux Ubuntu Server 8.04 Install WordPressM U
4.1.5 Instalasi Forum Untuk penginstalan forum yang digunakan pada binus-access ini adalah plug-in dari CM S Joomla, sehingga forum yang dibuat sudah menjadi satu paket dengan Joomla. Untuk prosesnya dilakukan dengan tahap sebagai berikut : 1. download plug-in forum untuk Joomla 2. masuk ke administrator Joomla, dan install plug-in yang sudah didownload 3. untuk menjalankan plug-in forum, masuk ke bagian menu. Buat satu menu baru, dan masukkan pilihan plug-in yang sudah di-install.
4.2 Proses Konfigurasi 4.2.1 Konfigurasi Central Authentication Service Konfigurasi untuk CAS Server dilakukan berdasarkan langkah berikut ini : 1. jalankan Apache Tomcat, copy file cas-server-webapp-3.2.1.war ke direktori /webapps/ milik Apache Tomcat. 2. ekstrak file cas-server-webapp-3.2.1.war pada direktori /webapps/ 3. stop server Apache Tomcat 4. masuk ke direktori M ETA-INF pada direktori Apache Tomcat, tambahkan pada file pom.xml sebagai berikut : <dependency>
${project.groupId} <artifactId>cas-server-support-ldap
83
${project.version}
5. masuk ke direktori WEB-INF pada direktori Apache Tomcat, tambahkan pada file deployerConfigContext.xml sebagai berikut :
<property name="pooled" value="true"/> <property name="urls"> <list> ldap://202.58.181.204:389 <property name="userName" value="{bind_username_goes_here}"/> <property name="password" value="{bind_user_password_goes_here}"/> <property name="baseEnvironmentProperties"> <map> <entry> java.naming.security.authentication simple
84 6. pada file deployerConfigContext.xml, ganti SimpleAuthentificationHandler dengan :
<property name="filter" value="cn=%u,ou=User,dc=beeworld,dc=net" /> <property name="contextSource" ref="contextSource" />
7. tambahkan file cas-server-support-ldap-3.2.1.jar dari direktori instalasi CAS ke direktori /WEB-INF/lib/ dari Apache Tomcat. 8. jalankan Apache Tomcat
Konfigurasi untuk CAS Client dilakukan berdasarkan langkah sebagai berikut : 1. download module CA S Client 3.2.1 2. ekstrak pada direktori server yang ingin dijadikan sebagai client dari CA S. Penempatannya diletakkan pada direktori /var/www/.
4.2.2 Konfigurasi Web Server Konfigurasi pada Web Server / Joomla digunakan untuk mengganti penggunaan session pada Joomla diganti dengan menggunakan CAS, berupa CAS Client. Langkah konfigurasi pada Joomla adalah sebagai berikut :
85 1. masuk ke direktori Joomla, cari file index.php 2. tambahkan pada file index.php sebagai berikut // import phpCAS lib include_once('CAS.php'); phpCAS::setDebug(); // initialize phpCAS phpCAS::client(CAS_VERSION_2_0,'v2.binus-access.com',8443,''); // no SSL validation for the CAS server phpCAS::setNoCasServerValidation();
3. tambahkan untuk function logout pada file index.php sebagai berikut : @session_destroy(); phpCAS::logoutWithUrl("http://v2.binus-access.com/newportal-tes/"); 4. tambahkan untuk function getUser pada file index.php sebagai berikut : function getUser() { global $database; // check CAS authentication $auth = phpCAS::checkAuthentication(); if ( $auth == TRUE ) { //Check Database jika user sudah ada atau blum $query = "select id,username,usertype,gid from jos_users where username='".phpCAS::getUser()."'"; $exquery = mysql_query($query);
86 if ( mysql_num_rows($exquery) == 1 ) // jika sudah ada { $data = mysql_fetch_array($exquery); $this->_session->userid
=
$data["id"];
//create
$this->_session->username
= phpCAS::getUser();
session user
$this->_session->usertype = "Registered"; $this->_session->gid = 18; } //jika user tidak ada didatabase else { $query
=
"INSERT
INTO
jos_users(id,name,username,usertype,gid) values('','".phpCAS::getUser()."','".phpCAS::getUser()."','Registered','18')"; @mysql_query($query); $query = "select id,username,usertype,gid from jos_users where username='".phpCAS::getUser()."'"; $exquery = mysql_query($query); $data = mysql_fetch_array($exquery); $query
=
"INSERT
INTO
values('','users','".$data["id"]."','0','".$data["username"]."','0')"; @mysql_query($query);
jos_core_acl_aro
87 $get_aro = "select * from jos_core_acl_aro where name ='".phpCAS::getUser()."'"; $exquery = mysql_query($get_aro); $aro = mysql_fetch_array($exquery); $query = "INSERT INTO jos_core_acl_groups_aro_map values('18','','".$aro["aro_id"]."')"; @mysql_query($query); $this->_session->userid
= $data["id"];
$this->_session->username
= phpCAS::getUser();
$this->_session->usertype = "Registered"; $this->_session->gid = 18; } } else { } $user = new mosUser( $this->_db ); $user->id
= intval( $this->_session->userid );
$user->username
= $this->_session->username;
$user->usertype
= $this->_session->usertype;
$user->gid
= intval( $this->_session->gid );
if ($user->id) { $query = "SELECT id, name, email, block, sendEmail, registerDate, lastvisitDate, activation, params"
88 . "\n FROM #__users" . "\n WHERE id = " . (int) $user->id ; $database->setQuery( $query ); $database->loadObject( $my ); $user->params
= $my->params;
$user->name
= $my->name;
$user->email
= $my->email;
$user->block
= $my->block;
$user->sendEmail
= $my->sendEmail;
$user->registerDate
= $my->registerDate;
$user->lastvisitDate = $my->lastvisitDate; $user->activation
= $my->activation;
} return $user; }
4.2.3 Konfigurasi Blog WordPressMU Pada WordPressM U terdapat plug-in untuk CAS authentifikasi, sehingga untuk konfigurasinya dapat dillakukan dengan menginstall plug-in CAS yang ada, dan melakukan perubahan sebagai berikut : 1. masuk ke direktori WordPressMU, cari plug-in wpCAS, kemudian cari file wpcas.php.
89 2. tambahkan pada file wpcas.php sebagai berikut : if ( function_exists('get_userdatabylogin') && $_SERVER['SCRIPT_NAME'] != '/wpcomments-post.php') : //check function dan halaman if (phpCAS::checkAuthentication()) { if ( $user = get_userdatabylogin( phpCAS::getUser())){ //buat check user ada ga didatabase // the CAS user has a WP account wp_set_auth_cookie($user->ID); wp_set_current_user($user->ID); } } endif; if ( $_SERVER['SCRIPT_NAME'] == '/wp-comments-post.php' ) { if (phpCAS::isAuthenticated()) //check udah login atau belum { $user = get_userdatabylogin( phpCAS::getUser()); //check user ada didatabase wp_set_auth_cookie($user->ID); wp_set_current_user($user->ID); } }
3. cari file wpcas-conf.php pada direktori WordPressMU 4. ubah isi file wpcas-conf.php sebagai berikut :
90 // the configuration array $wpcas_options = array( 'cas_version' => '2.0', 'include_path' => 'wpcas/CAS.php', 'server_hostname' => 'v2.binus-access.com', 'server_port' => '8443', 'server_path' => '' ); // this function gets executed // if the CAS username doesn't match a username in WordPress function wpcas_nowpuser( $user_name ){ die('you do not have permission here'); } ?>
4.2.4 Konfigurasi LDAP Pada tahap ini konfigurasi LDAP dapat dilakukan dengan menggunakan LDIF. LDIF ini merupakan bentuk struktur dari LDAP. Dalam skripsi ini digunakan phpldapadmin untuk memunculkan LDIF dalam bentuk web, sehingga lebih mudah untuk management LDAP. Isi dari LDIF yang merupakan struktur utama dari LDAP adalah sebagai berikut: version: 1
91 # LDIF Export for: dc=beeworld,dc=net # Generated by phpLDAPadmin ( http://phpldapadmin.sourceforge.net/ ) on
January 7, 2009 7:04 am # Server: Bee World LDAP (localhost) # Search Scope: sub # Search Filter: (objectClass=*) # Total Entries: 245
dn: dc=bee world,dc=net objectClass: top objectClass: dcObject objectClass: organization o: beeworld.net dc: beeworld
dn: cn=admin,dc=beeworld,dc=net objectClass: simpleSecurityObject objectClass: organizationalRole cn: admin description: LDAP administrator userPassword:
dn: ou=Group,dc=bee world,dc=net ou: Group
92 objectClass: top objectClass: organizationalUnit
dn: cn=Binusian,ou=Group,dc=beeworld,dc=net objectClass: posixGroup objectClass: top cn: Binusian gidNumber: 1
dn: cn=Non Binusian,ou=Group,dc=bee world,dc=net objectClass: posixGroup objectClass: top gidNumber: 2 cn: Non Binusian
dn: ou=User,dc=beeworld,dc=net ou: User objectClass: top objectClass: organizationalUnit
Struktur di atas bila dibuat dalam bentuk schema akan terbentuk diagram seperti di bawah ini :
93
Gambar 4.1 LDAP schema
4.3 Tampilan Layar 4.3.1 Tampilan Layar Web Portal Berikut adalah tampilan layar untuk web portal binus access yang telah dibuat.
94
Gambar 4.2 Tampilan layar http://v2.binus-access.com
4.3.2 Tampilan Layar Login Berikut adalah tampilan layar untuk halaman login. Halaman ini akan mengautentikasi user dengan menggunakan CAS.
95
Gambar 4.3 Tampilan layar login untuk web portal
4.3.3 Tampilan Layar Web Portal Setelah Login Berikut adalah tampilan layar untuk halaman web portal setelah berhasil melakukan login.
96
Gambar 4.4 Tampilan layar untuk halaman home setelah login
4.4 Evaluasi Dalam melakukan evaluasi untuk pemecahan permasalahan yang ada, dilakukan dengan melakukan survey kembali terhadap mahasiswa UBinus. Dari hasil survey yang dilakukan secara online, didapat responden sebanyak 58 responden. Data keterangan hasil kuesioner adalah sebagai berikut :
97
Dari hasil data di atas, dapat disimpulkan bahwa : •
Sebagian besar mahasiswa UBinus (>90% kuesioner), menyatakan setuju kalau web portal Bina Nusantara (http://v2.binus-access.com) menggunakan metode Single Sign On (SSO).
•
Sebagian besar mahasiswa UBinus (>90% kuesioner), menyatakan bahwa metode Single Sign On (SSO) ini bermanfaat bagi mereka.