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
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 :
Install Linux Ubuntu Server 8.04 Install WordPressMU
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>
<groupId>${project.groupId}</groupId> <artifactId>cas-server-support-ldap</artifactId>
<version>${project.version}</version> </dependency>
5. masuk ke direktori WEB-INF pada direktori Apache Tomcat, tambahkan pada file deployerConfigContext.xml sebagai berikut :
<bean id="contextSource"
class="org.jasig.cas.adaptors.ldap.util.AuthenticatedLdapContextSource"> <property name="pooled" value="true"/>
<property name="urls"> <list>
<value>ldap://202.58.181.204:389</value> </list>
</property>
<property name="userName" value="{bind_username_goes_here}"/> <property name="password" value="{bind_user_password_goes_here}"/> <property name="baseEnvironmentProperties"> <map> <entry> <key> <value>java.naming.security.authentication</value> </key> <value>simple</value> </entry> </map> </property> </bean>
6. pada file deployerConfigContext.xml, ganti SimpleAuthentificationHandler dengan : <bean class="org.jasig.cas.adaptors.ldap.FastBindLdapAuthenticationHandler" > <property name="filter" value="cn=%u,ou=User,dc=beeworld,dc=net" />
<property name="contextSource" ref="contextSource" /> </bean>
</list> </property> </bean>
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 :
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()."'";
if ( mysql_num_rows($exquery) == 1 ) // jika sudah ada {
$data = mysql_fetch_array($exquery);
$this->_session->userid = $data["id"]; //create session user
$this->_session->username = phpCAS::getUser(); $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 jos_core_acl_aro values('','users','".$data["id"]."','0','".$data["username"]."','0')";
$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"
. "\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.
2. tambahkan pada file wpcas.php sebagai berikut :
if ( function_exists('get_userdatabylogin') && $_SERVER[' SCRIPT_NAME'] != '/wp-comments-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 :
// 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:
# 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
objectClass: top objectClass: organizationalUnit dn: cn=Binusian,ou=Group,dc=beeworld,dc=net objectClass: posixGroup objectClass: top cn: Binusian gidN umber: 1
dn: cn=Non Binusian,ou=Group,dc=bee world,dc=net objectClass: posixGroup objectClass: top gidN umber: 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 :
Gambar 4.1 LDAP schema
4.3 Tampilan Layar
4.3.1 Tampilan Layar Web Portal
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.
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.
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 :
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.