SlideShare a Scribd company logo
[PHP TUTORIAL]

Class Activity

Penggunaan Session untuk Autentifikasi User

Autentifikasi user adalah suatu mekanisme untuk memastikan apakah suatu
user itu berhak masuk ke dalam sistem atau bukan. Dalam sebuah web
aplikasi Autentifikasi user ini sangat penting untuk member batasan
terhadap user dalam mengakses halaman/menu tertentu. Implementasinya
adalah berupa login. Dalam hal ini user yang berhak mengakses akan
diberikan nama user tertentu beserta password. Nama user dan password
akan disimpan dalam database. Bila terdapat nama user dan password yang
tidak terdaftar dalam database, maka user tersebut tidak berhak mengakses.
Mekanisme autentifikasi ini dimulai dengan proses pendaftaran user.
Pendaftaran User
1. User mengisi form pendaftaran sebagai legal user (user mengisi
username dan password)
2. Sistem akan mengecek apakah username yang didaftarkan sudah ada
yang memiliki atau belum
3. Jika sudah ada, user diminta mengisi kembali username yang lain
beserta passwordnya. Sedangkan jika belum ada, data user ini akan
disimpan dalam database, dengan password terenkripsi.
Proses Autentifikasi
1. User yang akan mengakses sistem diminta memasukkan username
dan password (asli)
2. Sistem akan mencari password terenkripsi yang tersimpan dalam
database berdasarkan username yang terdaftar
3. Sistem akan mencocokkan antara password asli terenkripsi yang
diisikan user melalui form login, dengan password terenkripsi yang
tersimpan dalam database
4. Jika password asli terenkripsi yang dikirim via form login ini sama
dengan password terenkripsi yang ada dalam database, maka user tadi
bisa masuk ke dalam sistem. Jika tidak sama, maka user tadi tidak
berhak masuk ke sistem.
Proses auntentifikasi user ini juga berfungsi untuk mengantsipasi terjadinya
by pass dari user yang tidak berhak.

Ver 1.0 [by-dfr]

Page 1
[PHP TUTORIAL]

Class Activity

Dalam latihan ini juga kita gunakan proses pengamanan password dengan
metode enskripsi MD5 dengan dikombinsi dengan pengacak. Mengapa kita
tambahkan pengacak???. Dengan hanya menggunakan enskripsi MD5 saja
kurang aman, sehingga perlu ditambahkan pengacak untuk memperoleh
kombinasi pengacak yang berbeda dengan MD5.
Pertama, buat database db_latihan (kalau sudah ada tidak perlu dibuat lagi)
Kemudian kita siapkan tabel tb_user terlebih dahulu.
CREATE TABLE tb_user (
username varchar(20),
password varchar(32),
PRIMARY KEY (username)
)

Field username kita gunakan primary ke, karena username harus unik, tidak
boleh ada username yang sama. Sedangkan password kita set tipe datanya
varchar dengan panjang field minimal 32, karena password yang akan
disimpan di sini adalah terenkripsi. Untuk enkripsi kita akan gunakan MD5()
termodifikasi dengan menambahkan pengacak. hasil md5() ini adalah
karakter dengan panjang 32.
Langkah kedua kita siapkan form pendaftaran usernya.

Ver 1.0 [by-dfr]

Page 2
[PHP TUTORIAL]

Class Activity

register.php

<form method="post" action="submit_register.php">
Pada form di atas terdapat dua isian untuk password. Isian password
dilakukan dua kali untuk memastikan bahwa password yang dimasukkan
adalah benar dari sisi ejaannya.
Selanjutnya kita buat script untuk pemrosesan registrasi user ini.

Ver 1.0 [by-dfr]

Page 3
[PHP TUTORIAL]

Class Activity

submit_register.php

Anda boleh membuat pengacak yang lain, atau mengkombinasikan sendiri
bentuknya, misalnya
$password1=md5($pengacak.md5($pengacak.$password1.$pengacak).$pengacak)

yang jelas jangan menggunakan $password1 = md5($password1);
Buat skenario bahwa terdapat dua buah halaman (halaman 1 dan halaman
2) dalam sistem yang membutuhkan autentifikasi user sebelum masuk ke
dalamnya.
untuk autentifikasi, kita buat form loginnya.

Ver 1.0 [by-dfr]

Page 4
[PHP TUTORIAL]
login.php

<form method="post" action="login_submit.php">

Ver 1.0 [by-dfr]

Page 5

Class Activity
[PHP TUTORIAL]

Class Activity

loginsubmit.php

dalam cek kesesuaian password terenkripsi dari form dan dari database,
harus menggunakan pengacak dan rule yang sama dengan proses
mengenkripsi password sebelum disimpan ke database (lihat kembali script
submit_register.php).
Selanjutnya, untuk mencegah by pass yang dilakukan user nakal ke dalam
halaman 1 dan 2, maka kita perlu membuat script untuk menanggulangi hal
ini.

Ver 1.0 [by-dfr]

Page 6
[PHP TUTORIAL]

Class Activity

cek.php

Script di atas berguna untuk mengecek keberadaan session untuk username.
Bila user tidak melakukan login, maka session username tidak pernah dibuat.
Sehingga apabila user tidak melakukan login, akan muncul pesan ‘Anda
belum login’. Perintah isset() digunakan untuk mengecek keberadaan suatu
variabel (dalam hal ini variabel session untuk username). Perintah ini akan
menghasilkan nilai TRUE jika variabel yang dicek ada, dan FALSE jika variabel
tidak ada.
Script cek.php di atas harus disisipkan di setiap halaman yang sifatnya
private atau membutuhkan autentifikasi user.
Misalkan isi halaman 1 dan 2 adalah sebagai berikut
hal1.php

Ver 1.0 [by-dfr]

Page 7
[PHP TUTORIAL]

Class Activity

hal2.php

Di setiap halaman private disisipkan script cek.php. Apakah harus diletakkan
sebelum isi dari halaman? Ya… harus… sebelum menampilkan isi halaman,
terlebih dahulu harus di cek apakah user yang akan mengakses sudah login
atau belum. Jika belum… langsung muncul pesan belum login dan exit
artinya isi halaman tidak ditampilkan di browser.
Jangan lupa membuat script untuk logout. Konsep logout dalam autentifikasi
adalah menghapus variabel session untuk username tadi.
logout.php

Ver 1.0 [by-dfr]

Page 8
[PHP TUTORIAL]

Class Activity

CATATAN :
Enskripsi adalah proses mengamankan suatu informasi dengan membuat
informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan khusus
Deskripsi adalah upaya pengolahan data menjadi sesuatu yang dapat
diutarakan secara jelas dan tepat dengan tujuan agar dapat dimengerti oleh
orang yang tidak langsung mengalaminya sendiri.
MD5 (Message-Digest algorithm 5) adalah fungsi Hash kriptografik yang
digunakan secara luas dengan Hash value 128-bit
Jadi tujuan umum dari enskripsi password adalah
meningkatkan keamanan agar password lebih sulit dibobol
Tool Web untuk encrypt dan decrypt pasword
www.md5decrypt.org
www.md5decryption.com
www.md5encryption.com

Ver 1.0 [by-dfr]

Page 9

untuk

More Related Content

Viewers also liked

Twitterを始めよう
Twitterを始めようTwitterを始めよう
Twitterを始めよう
Yoshihiko Yoshida
 
SMART TERRITORIES: Protect the big Cities, save the small Cities #s3cparis #s...
SMART TERRITORIES: Protect the big Cities, save the small Cities #s3cparis #s...SMART TERRITORIES: Protect the big Cities, save the small Cities #s3cparis #s...
SMART TERRITORIES: Protect the big Cities, save the small Cities #s3cparis #s...
Vitor Pereira
 
Earma Annual Conference 23 june 2011 - Magali Poinot (parts 2&3)
Earma Annual Conference 23 june 2011 - Magali Poinot (parts 2&3)Earma Annual Conference 23 june 2011 - Magali Poinot (parts 2&3)
Earma Annual Conference 23 june 2011 - Magali Poinot (parts 2&3)
Vitor Pereira
 
WordPressとヒートマップ:Ptengineプラグイン
WordPressとヒートマップ:PtengineプラグインWordPressとヒートマップ:Ptengineプラグイン
WordPressとヒートマップ:Ptengineプラグイン
Yoshihiko Yoshida
 
03. upload file dengan php
03. upload file dengan php03. upload file dengan php
03. upload file dengan php
Dhanang Fitra
 
Try Nordestin' #ENTER2015
Try Nordestin' #ENTER2015Try Nordestin' #ENTER2015
Try Nordestin' #ENTER2015
Vitor Pereira
 
Are timesheets money sheets by Frank Verleg
Are timesheets money sheets by Frank VerlegAre timesheets money sheets by Frank Verleg
Are timesheets money sheets by Frank Verleg
Vitor Pereira
 
Are timesheets money sheets by Frank Verleg
Are timesheets money sheets by Frank VerlegAre timesheets money sheets by Frank Verleg
Are timesheets money sheets by Frank Verleg
Vitor Pereira
 
TryNordestin'_enter2015
TryNordestin'_enter2015TryNordestin'_enter2015
TryNordestin'_enter2015Vitor Pereira
 

Viewers also liked (9)

Twitterを始めよう
Twitterを始めようTwitterを始めよう
Twitterを始めよう
 
SMART TERRITORIES: Protect the big Cities, save the small Cities #s3cparis #s...
SMART TERRITORIES: Protect the big Cities, save the small Cities #s3cparis #s...SMART TERRITORIES: Protect the big Cities, save the small Cities #s3cparis #s...
SMART TERRITORIES: Protect the big Cities, save the small Cities #s3cparis #s...
 
Earma Annual Conference 23 june 2011 - Magali Poinot (parts 2&3)
Earma Annual Conference 23 june 2011 - Magali Poinot (parts 2&3)Earma Annual Conference 23 june 2011 - Magali Poinot (parts 2&3)
Earma Annual Conference 23 june 2011 - Magali Poinot (parts 2&3)
 
WordPressとヒートマップ:Ptengineプラグイン
WordPressとヒートマップ:PtengineプラグインWordPressとヒートマップ:Ptengineプラグイン
WordPressとヒートマップ:Ptengineプラグイン
 
03. upload file dengan php
03. upload file dengan php03. upload file dengan php
03. upload file dengan php
 
Try Nordestin' #ENTER2015
Try Nordestin' #ENTER2015Try Nordestin' #ENTER2015
Try Nordestin' #ENTER2015
 
Are timesheets money sheets by Frank Verleg
Are timesheets money sheets by Frank VerlegAre timesheets money sheets by Frank Verleg
Are timesheets money sheets by Frank Verleg
 
Are timesheets money sheets by Frank Verleg
Are timesheets money sheets by Frank VerlegAre timesheets money sheets by Frank Verleg
Are timesheets money sheets by Frank Verleg
 
TryNordestin'_enter2015
TryNordestin'_enter2015TryNordestin'_enter2015
TryNordestin'_enter2015
 

Similar to 05. session2 autentifikasi user

Affif cara membuat form login pada php
Affif cara membuat form login pada phpAffif cara membuat form login pada php
Affif cara membuat form login pada php
Sejahtera Affif
 
Membuat Catatan Online dengan Cherrypy
Membuat Catatan Online dengan CherrypyMembuat Catatan Online dengan Cherrypy
Membuat Catatan Online dengan Cherrypy
Ridwan Fadjar
 
Presentation web session
Presentation  web sessionPresentation  web session
Presentation web session
Alam Isnain
 
Modul pembuatan aplikasi login dengan php dan my sq lx
Modul pembuatan aplikasi login dengan php dan my sq lxModul pembuatan aplikasi login dengan php dan my sq lx
Modul pembuatan aplikasi login dengan php dan my sq lx
Haswi Simeulue
 
Modul pembuatan aplikasi login dengan php dan my sq lx
Modul pembuatan aplikasi login dengan php dan my sq lxModul pembuatan aplikasi login dengan php dan my sq lx
Modul pembuatan aplikasi login dengan php dan my sq lxMboard Philipe
 
Bruteforce basic (paper) - linx
Bruteforce basic (paper) - linxBruteforce basic (paper) - linx
Bruteforce basic (paper) - linxidsecconf
 
Laporan pemrograman berbasis web
Laporan pemrograman berbasis webLaporan pemrograman berbasis web
Laporan pemrograman berbasis webRifky Ardian
 
Belajar php 2015
Belajar php 2015Belajar php 2015
Belajar php 2015
Adang Sumitra
 
Entri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQuery
Entri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQueryEntri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQuery
Entri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQuery
Achmad Solichin
 
Membuat form login dengan php mysql
Membuat form login dengan php mysqlMembuat form login dengan php mysql
Membuat form login dengan php mysql
Raja Putra Media
 
Php Mysql
Php MysqlPhp Mysql
Php Mysql
Albertz Ace-Red
 
Modul my sql tutorial part 6
Modul my sql tutorial part 6Modul my sql tutorial part 6
Modul my sql tutorial part 6Ratzman III
 
Laporan tutorial form login php menggunakan mvc
Laporan tutorial form login php menggunakan mvcLaporan tutorial form login php menggunakan mvc
Laporan tutorial form login php menggunakan mvcSam_Azzam
 
Tugas session (hanni si6 b-40)
Tugas session (hanni si6 b-40)Tugas session (hanni si6 b-40)
Tugas session (hanni si6 b-40)hendrawansyah
 
Web dinamis
Web dinamisWeb dinamis
Web dinamis
Mohammad Ghiffari
 
11 aplikasi teknologi online - session dan aplikasinya
11   aplikasi teknologi online - session dan aplikasinya11   aplikasi teknologi online - session dan aplikasinya
11 aplikasi teknologi online - session dan aplikasinyaMateri Kuliah Online
 
Belajar pemrograman berbasis web php dhtmlx part 8 Transaction
Belajar pemrograman berbasis web php dhtmlx part 8  TransactionBelajar pemrograman berbasis web php dhtmlx part 8  Transaction
Belajar pemrograman berbasis web php dhtmlx part 8 Transaction
Tobing Manuppak
 
Budi aplikasi-crud-sederhana-dengan-php-dan-my sql-libre
Budi aplikasi-crud-sederhana-dengan-php-dan-my sql-libreBudi aplikasi-crud-sederhana-dengan-php-dan-my sql-libre
Budi aplikasi-crud-sederhana-dengan-php-dan-my sql-libre
Uniska Lam
 
test saja kok
test saja koktest saja kok
test saja kok
nehakhus
 

Similar to 05. session2 autentifikasi user (20)

Affif cara membuat form login pada php
Affif cara membuat form login pada phpAffif cara membuat form login pada php
Affif cara membuat form login pada php
 
Membuat Catatan Online dengan Cherrypy
Membuat Catatan Online dengan CherrypyMembuat Catatan Online dengan Cherrypy
Membuat Catatan Online dengan Cherrypy
 
Presentation web session
Presentation  web sessionPresentation  web session
Presentation web session
 
Modul pembuatan aplikasi login dengan php dan my sq lx
Modul pembuatan aplikasi login dengan php dan my sq lxModul pembuatan aplikasi login dengan php dan my sq lx
Modul pembuatan aplikasi login dengan php dan my sq lx
 
Modul pembuatan aplikasi login dengan php dan my sq lx
Modul pembuatan aplikasi login dengan php dan my sq lxModul pembuatan aplikasi login dengan php dan my sq lx
Modul pembuatan aplikasi login dengan php dan my sq lx
 
Bruteforce basic (paper) - linx
Bruteforce basic (paper) - linxBruteforce basic (paper) - linx
Bruteforce basic (paper) - linx
 
Laporan pemrograman berbasis web
Laporan pemrograman berbasis webLaporan pemrograman berbasis web
Laporan pemrograman berbasis web
 
Belajar php 2015
Belajar php 2015Belajar php 2015
Belajar php 2015
 
Entri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQuery
Entri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQueryEntri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQuery
Entri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQuery
 
Membuat form login dengan php mysql
Membuat form login dengan php mysqlMembuat form login dengan php mysql
Membuat form login dengan php mysql
 
Bongkar rahasia php
Bongkar rahasia phpBongkar rahasia php
Bongkar rahasia php
 
Php Mysql
Php MysqlPhp Mysql
Php Mysql
 
Modul my sql tutorial part 6
Modul my sql tutorial part 6Modul my sql tutorial part 6
Modul my sql tutorial part 6
 
Laporan tutorial form login php menggunakan mvc
Laporan tutorial form login php menggunakan mvcLaporan tutorial form login php menggunakan mvc
Laporan tutorial form login php menggunakan mvc
 
Tugas session (hanni si6 b-40)
Tugas session (hanni si6 b-40)Tugas session (hanni si6 b-40)
Tugas session (hanni si6 b-40)
 
Web dinamis
Web dinamisWeb dinamis
Web dinamis
 
11 aplikasi teknologi online - session dan aplikasinya
11   aplikasi teknologi online - session dan aplikasinya11   aplikasi teknologi online - session dan aplikasinya
11 aplikasi teknologi online - session dan aplikasinya
 
Belajar pemrograman berbasis web php dhtmlx part 8 Transaction
Belajar pemrograman berbasis web php dhtmlx part 8  TransactionBelajar pemrograman berbasis web php dhtmlx part 8  Transaction
Belajar pemrograman berbasis web php dhtmlx part 8 Transaction
 
Budi aplikasi-crud-sederhana-dengan-php-dan-my sql-libre
Budi aplikasi-crud-sederhana-dengan-php-dan-my sql-libreBudi aplikasi-crud-sederhana-dengan-php-dan-my sql-libre
Budi aplikasi-crud-sederhana-dengan-php-dan-my sql-libre
 
test saja kok
test saja koktest saja kok
test saja kok
 

Recently uploaded

Kisi-kisi Soal PAT Matematika Kelas 3 SD
Kisi-kisi Soal PAT Matematika Kelas 3 SDKisi-kisi Soal PAT Matematika Kelas 3 SD
Kisi-kisi Soal PAT Matematika Kelas 3 SD
denunugraha
 
Materi 2_Benahi Perencanaan dan Benahi Implementasi.pptx
Materi 2_Benahi Perencanaan dan Benahi Implementasi.pptxMateri 2_Benahi Perencanaan dan Benahi Implementasi.pptx
Materi 2_Benahi Perencanaan dan Benahi Implementasi.pptx
ahyani72
 
Modul Ajar IPS Kelas 7 Fase D Kurikulum Merdeka
Modul Ajar IPS Kelas 7 Fase D Kurikulum MerdekaModul Ajar IPS Kelas 7 Fase D Kurikulum Merdeka
Modul Ajar IPS Kelas 7 Fase D Kurikulum Merdeka
Fathan Emran
 
Laporan Kegiatan Pramuka Tugas Tambahan PMM.pdf
Laporan Kegiatan Pramuka Tugas Tambahan PMM.pdfLaporan Kegiatan Pramuka Tugas Tambahan PMM.pdf
Laporan Kegiatan Pramuka Tugas Tambahan PMM.pdf
UmyHasna1
 
Pendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa Barat
Pendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa BaratPendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa Barat
Pendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa Barat
Eldi Mardiansyah
 
1.4.a.4.5. Restitusi - Lima Posisi Kontrol.pdf
1.4.a.4.5. Restitusi - Lima Posisi Kontrol.pdf1.4.a.4.5. Restitusi - Lima Posisi Kontrol.pdf
1.4.a.4.5. Restitusi - Lima Posisi Kontrol.pdf
zakkimushoffi41
 
penjelasan tentang tugas dan wewenang pkd
penjelasan tentang tugas dan wewenang pkdpenjelasan tentang tugas dan wewenang pkd
penjelasan tentang tugas dan wewenang pkd
jaya35ml2
 
CGP.10.Pendampingan Individual 2 - VISI DAN PRAKARSA PERUBAHAN.pdf_20240528_1...
CGP.10.Pendampingan Individual 2 - VISI DAN PRAKARSA PERUBAHAN.pdf_20240528_1...CGP.10.Pendampingan Individual 2 - VISI DAN PRAKARSA PERUBAHAN.pdf_20240528_1...
CGP.10.Pendampingan Individual 2 - VISI DAN PRAKARSA PERUBAHAN.pdf_20240528_1...
VenyHandayani2
 
untuk observasi kepala sekolah dengan pengawas
untuk observasi kepala sekolah dengan pengawasuntuk observasi kepala sekolah dengan pengawas
untuk observasi kepala sekolah dengan pengawas
TEDYHARTO1
 
Modul ajar logaritma matematika kelas X SMK
Modul ajar logaritma matematika kelas X SMKModul ajar logaritma matematika kelas X SMK
Modul ajar logaritma matematika kelas X SMK
WinaldiSatria
 
Laporan Pembina OSIS UNTUK PMMOK.pdf.pdf
Laporan Pembina OSIS UNTUK PMMOK.pdf.pdfLaporan Pembina OSIS UNTUK PMMOK.pdf.pdf
Laporan Pembina OSIS UNTUK PMMOK.pdf.pdf
OcitaDianAntari
 
RHK Jabatan Kep Sekolah dan Bukti Dukung.pdf
RHK Jabatan Kep Sekolah dan Bukti Dukung.pdfRHK Jabatan Kep Sekolah dan Bukti Dukung.pdf
RHK Jabatan Kep Sekolah dan Bukti Dukung.pdf
asyi1
 
SOAL SBDP KELAS 3 SEMESTER GENAP TAHUN PELAJARAN 2023 2024
SOAL SBDP KELAS 3 SEMESTER GENAP TAHUN PELAJARAN 2023 2024SOAL SBDP KELAS 3 SEMESTER GENAP TAHUN PELAJARAN 2023 2024
SOAL SBDP KELAS 3 SEMESTER GENAP TAHUN PELAJARAN 2023 2024
ozijaya
 
PERILAKU MENYIMPANG DAN PENGENDALIAN SOSIAL.ppt
PERILAKU MENYIMPANG DAN PENGENDALIAN SOSIAL.pptPERILAKU MENYIMPANG DAN PENGENDALIAN SOSIAL.ppt
PERILAKU MENYIMPANG DAN PENGENDALIAN SOSIAL.ppt
EkaPuspita67
 
RANCANGAN TINDAKAN UNTUK AKSI NYATA MODUL 1.4 BUDAYA POSITIF.pdf
RANCANGAN TINDAKAN UNTUK AKSI NYATA MODUL 1.4 BUDAYA POSITIF.pdfRANCANGAN TINDAKAN UNTUK AKSI NYATA MODUL 1.4 BUDAYA POSITIF.pdf
RANCANGAN TINDAKAN UNTUK AKSI NYATA MODUL 1.4 BUDAYA POSITIF.pdf
junarpudin36
 
Penjelasan tentang Tahapan Sinkro PMM.pptx
Penjelasan tentang Tahapan Sinkro PMM.pptxPenjelasan tentang Tahapan Sinkro PMM.pptx
Penjelasan tentang Tahapan Sinkro PMM.pptx
GuneriHollyIrda
 
NUMERASI KOMPETENSI PENDIDIK TAHAP CAKAP DAN MAHIR.pdf
NUMERASI KOMPETENSI PENDIDIK TAHAP CAKAP DAN MAHIR.pdfNUMERASI KOMPETENSI PENDIDIK TAHAP CAKAP DAN MAHIR.pdf
NUMERASI KOMPETENSI PENDIDIK TAHAP CAKAP DAN MAHIR.pdf
DataSupriatna
 
Sebuah buku foto yang berjudul Lensa Kampung Ondel-Ondel
Sebuah buku foto yang berjudul Lensa Kampung Ondel-OndelSebuah buku foto yang berjudul Lensa Kampung Ondel-Ondel
Sebuah buku foto yang berjudul Lensa Kampung Ondel-Ondel
ferrydmn1999
 
PENDAMPINGAN INDIVIDU 2 CGP ANGKATAN 10 KOTA DEPOK
PENDAMPINGAN INDIVIDU 2 CGP ANGKATAN 10 KOTA DEPOKPENDAMPINGAN INDIVIDU 2 CGP ANGKATAN 10 KOTA DEPOK
PENDAMPINGAN INDIVIDU 2 CGP ANGKATAN 10 KOTA DEPOK
GusniartiGusniarti5
 
Refleksi pembelajaran guru bahasa inggris.pptx
Refleksi pembelajaran guru bahasa inggris.pptxRefleksi pembelajaran guru bahasa inggris.pptx
Refleksi pembelajaran guru bahasa inggris.pptx
SholahuddinAslam
 

Recently uploaded (20)

Kisi-kisi Soal PAT Matematika Kelas 3 SD
Kisi-kisi Soal PAT Matematika Kelas 3 SDKisi-kisi Soal PAT Matematika Kelas 3 SD
Kisi-kisi Soal PAT Matematika Kelas 3 SD
 
Materi 2_Benahi Perencanaan dan Benahi Implementasi.pptx
Materi 2_Benahi Perencanaan dan Benahi Implementasi.pptxMateri 2_Benahi Perencanaan dan Benahi Implementasi.pptx
Materi 2_Benahi Perencanaan dan Benahi Implementasi.pptx
 
Modul Ajar IPS Kelas 7 Fase D Kurikulum Merdeka
Modul Ajar IPS Kelas 7 Fase D Kurikulum MerdekaModul Ajar IPS Kelas 7 Fase D Kurikulum Merdeka
Modul Ajar IPS Kelas 7 Fase D Kurikulum Merdeka
 
Laporan Kegiatan Pramuka Tugas Tambahan PMM.pdf
Laporan Kegiatan Pramuka Tugas Tambahan PMM.pdfLaporan Kegiatan Pramuka Tugas Tambahan PMM.pdf
Laporan Kegiatan Pramuka Tugas Tambahan PMM.pdf
 
Pendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa Barat
Pendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa BaratPendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa Barat
Pendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa Barat
 
1.4.a.4.5. Restitusi - Lima Posisi Kontrol.pdf
1.4.a.4.5. Restitusi - Lima Posisi Kontrol.pdf1.4.a.4.5. Restitusi - Lima Posisi Kontrol.pdf
1.4.a.4.5. Restitusi - Lima Posisi Kontrol.pdf
 
penjelasan tentang tugas dan wewenang pkd
penjelasan tentang tugas dan wewenang pkdpenjelasan tentang tugas dan wewenang pkd
penjelasan tentang tugas dan wewenang pkd
 
CGP.10.Pendampingan Individual 2 - VISI DAN PRAKARSA PERUBAHAN.pdf_20240528_1...
CGP.10.Pendampingan Individual 2 - VISI DAN PRAKARSA PERUBAHAN.pdf_20240528_1...CGP.10.Pendampingan Individual 2 - VISI DAN PRAKARSA PERUBAHAN.pdf_20240528_1...
CGP.10.Pendampingan Individual 2 - VISI DAN PRAKARSA PERUBAHAN.pdf_20240528_1...
 
untuk observasi kepala sekolah dengan pengawas
untuk observasi kepala sekolah dengan pengawasuntuk observasi kepala sekolah dengan pengawas
untuk observasi kepala sekolah dengan pengawas
 
Modul ajar logaritma matematika kelas X SMK
Modul ajar logaritma matematika kelas X SMKModul ajar logaritma matematika kelas X SMK
Modul ajar logaritma matematika kelas X SMK
 
Laporan Pembina OSIS UNTUK PMMOK.pdf.pdf
Laporan Pembina OSIS UNTUK PMMOK.pdf.pdfLaporan Pembina OSIS UNTUK PMMOK.pdf.pdf
Laporan Pembina OSIS UNTUK PMMOK.pdf.pdf
 
RHK Jabatan Kep Sekolah dan Bukti Dukung.pdf
RHK Jabatan Kep Sekolah dan Bukti Dukung.pdfRHK Jabatan Kep Sekolah dan Bukti Dukung.pdf
RHK Jabatan Kep Sekolah dan Bukti Dukung.pdf
 
SOAL SBDP KELAS 3 SEMESTER GENAP TAHUN PELAJARAN 2023 2024
SOAL SBDP KELAS 3 SEMESTER GENAP TAHUN PELAJARAN 2023 2024SOAL SBDP KELAS 3 SEMESTER GENAP TAHUN PELAJARAN 2023 2024
SOAL SBDP KELAS 3 SEMESTER GENAP TAHUN PELAJARAN 2023 2024
 
PERILAKU MENYIMPANG DAN PENGENDALIAN SOSIAL.ppt
PERILAKU MENYIMPANG DAN PENGENDALIAN SOSIAL.pptPERILAKU MENYIMPANG DAN PENGENDALIAN SOSIAL.ppt
PERILAKU MENYIMPANG DAN PENGENDALIAN SOSIAL.ppt
 
RANCANGAN TINDAKAN UNTUK AKSI NYATA MODUL 1.4 BUDAYA POSITIF.pdf
RANCANGAN TINDAKAN UNTUK AKSI NYATA MODUL 1.4 BUDAYA POSITIF.pdfRANCANGAN TINDAKAN UNTUK AKSI NYATA MODUL 1.4 BUDAYA POSITIF.pdf
RANCANGAN TINDAKAN UNTUK AKSI NYATA MODUL 1.4 BUDAYA POSITIF.pdf
 
Penjelasan tentang Tahapan Sinkro PMM.pptx
Penjelasan tentang Tahapan Sinkro PMM.pptxPenjelasan tentang Tahapan Sinkro PMM.pptx
Penjelasan tentang Tahapan Sinkro PMM.pptx
 
NUMERASI KOMPETENSI PENDIDIK TAHAP CAKAP DAN MAHIR.pdf
NUMERASI KOMPETENSI PENDIDIK TAHAP CAKAP DAN MAHIR.pdfNUMERASI KOMPETENSI PENDIDIK TAHAP CAKAP DAN MAHIR.pdf
NUMERASI KOMPETENSI PENDIDIK TAHAP CAKAP DAN MAHIR.pdf
 
Sebuah buku foto yang berjudul Lensa Kampung Ondel-Ondel
Sebuah buku foto yang berjudul Lensa Kampung Ondel-OndelSebuah buku foto yang berjudul Lensa Kampung Ondel-Ondel
Sebuah buku foto yang berjudul Lensa Kampung Ondel-Ondel
 
PENDAMPINGAN INDIVIDU 2 CGP ANGKATAN 10 KOTA DEPOK
PENDAMPINGAN INDIVIDU 2 CGP ANGKATAN 10 KOTA DEPOKPENDAMPINGAN INDIVIDU 2 CGP ANGKATAN 10 KOTA DEPOK
PENDAMPINGAN INDIVIDU 2 CGP ANGKATAN 10 KOTA DEPOK
 
Refleksi pembelajaran guru bahasa inggris.pptx
Refleksi pembelajaran guru bahasa inggris.pptxRefleksi pembelajaran guru bahasa inggris.pptx
Refleksi pembelajaran guru bahasa inggris.pptx
 

05. session2 autentifikasi user

  • 1. [PHP TUTORIAL] Class Activity Penggunaan Session untuk Autentifikasi User Autentifikasi user adalah suatu mekanisme untuk memastikan apakah suatu user itu berhak masuk ke dalam sistem atau bukan. Dalam sebuah web aplikasi Autentifikasi user ini sangat penting untuk member batasan terhadap user dalam mengakses halaman/menu tertentu. Implementasinya adalah berupa login. Dalam hal ini user yang berhak mengakses akan diberikan nama user tertentu beserta password. Nama user dan password akan disimpan dalam database. Bila terdapat nama user dan password yang tidak terdaftar dalam database, maka user tersebut tidak berhak mengakses. Mekanisme autentifikasi ini dimulai dengan proses pendaftaran user. Pendaftaran User 1. User mengisi form pendaftaran sebagai legal user (user mengisi username dan password) 2. Sistem akan mengecek apakah username yang didaftarkan sudah ada yang memiliki atau belum 3. Jika sudah ada, user diminta mengisi kembali username yang lain beserta passwordnya. Sedangkan jika belum ada, data user ini akan disimpan dalam database, dengan password terenkripsi. Proses Autentifikasi 1. User yang akan mengakses sistem diminta memasukkan username dan password (asli) 2. Sistem akan mencari password terenkripsi yang tersimpan dalam database berdasarkan username yang terdaftar 3. Sistem akan mencocokkan antara password asli terenkripsi yang diisikan user melalui form login, dengan password terenkripsi yang tersimpan dalam database 4. Jika password asli terenkripsi yang dikirim via form login ini sama dengan password terenkripsi yang ada dalam database, maka user tadi bisa masuk ke dalam sistem. Jika tidak sama, maka user tadi tidak berhak masuk ke sistem. Proses auntentifikasi user ini juga berfungsi untuk mengantsipasi terjadinya by pass dari user yang tidak berhak. Ver 1.0 [by-dfr] Page 1
  • 2. [PHP TUTORIAL] Class Activity Dalam latihan ini juga kita gunakan proses pengamanan password dengan metode enskripsi MD5 dengan dikombinsi dengan pengacak. Mengapa kita tambahkan pengacak???. Dengan hanya menggunakan enskripsi MD5 saja kurang aman, sehingga perlu ditambahkan pengacak untuk memperoleh kombinasi pengacak yang berbeda dengan MD5. Pertama, buat database db_latihan (kalau sudah ada tidak perlu dibuat lagi) Kemudian kita siapkan tabel tb_user terlebih dahulu. CREATE TABLE tb_user ( username varchar(20), password varchar(32), PRIMARY KEY (username) ) Field username kita gunakan primary ke, karena username harus unik, tidak boleh ada username yang sama. Sedangkan password kita set tipe datanya varchar dengan panjang field minimal 32, karena password yang akan disimpan di sini adalah terenkripsi. Untuk enkripsi kita akan gunakan MD5() termodifikasi dengan menambahkan pengacak. hasil md5() ini adalah karakter dengan panjang 32. Langkah kedua kita siapkan form pendaftaran usernya. Ver 1.0 [by-dfr] Page 2
  • 3. [PHP TUTORIAL] Class Activity register.php <form method="post" action="submit_register.php"> Pada form di atas terdapat dua isian untuk password. Isian password dilakukan dua kali untuk memastikan bahwa password yang dimasukkan adalah benar dari sisi ejaannya. Selanjutnya kita buat script untuk pemrosesan registrasi user ini. Ver 1.0 [by-dfr] Page 3
  • 4. [PHP TUTORIAL] Class Activity submit_register.php Anda boleh membuat pengacak yang lain, atau mengkombinasikan sendiri bentuknya, misalnya $password1=md5($pengacak.md5($pengacak.$password1.$pengacak).$pengacak) yang jelas jangan menggunakan $password1 = md5($password1); Buat skenario bahwa terdapat dua buah halaman (halaman 1 dan halaman 2) dalam sistem yang membutuhkan autentifikasi user sebelum masuk ke dalamnya. untuk autentifikasi, kita buat form loginnya. Ver 1.0 [by-dfr] Page 4
  • 5. [PHP TUTORIAL] login.php <form method="post" action="login_submit.php"> Ver 1.0 [by-dfr] Page 5 Class Activity
  • 6. [PHP TUTORIAL] Class Activity loginsubmit.php dalam cek kesesuaian password terenkripsi dari form dan dari database, harus menggunakan pengacak dan rule yang sama dengan proses mengenkripsi password sebelum disimpan ke database (lihat kembali script submit_register.php). Selanjutnya, untuk mencegah by pass yang dilakukan user nakal ke dalam halaman 1 dan 2, maka kita perlu membuat script untuk menanggulangi hal ini. Ver 1.0 [by-dfr] Page 6
  • 7. [PHP TUTORIAL] Class Activity cek.php Script di atas berguna untuk mengecek keberadaan session untuk username. Bila user tidak melakukan login, maka session username tidak pernah dibuat. Sehingga apabila user tidak melakukan login, akan muncul pesan ‘Anda belum login’. Perintah isset() digunakan untuk mengecek keberadaan suatu variabel (dalam hal ini variabel session untuk username). Perintah ini akan menghasilkan nilai TRUE jika variabel yang dicek ada, dan FALSE jika variabel tidak ada. Script cek.php di atas harus disisipkan di setiap halaman yang sifatnya private atau membutuhkan autentifikasi user. Misalkan isi halaman 1 dan 2 adalah sebagai berikut hal1.php Ver 1.0 [by-dfr] Page 7
  • 8. [PHP TUTORIAL] Class Activity hal2.php Di setiap halaman private disisipkan script cek.php. Apakah harus diletakkan sebelum isi dari halaman? Ya… harus… sebelum menampilkan isi halaman, terlebih dahulu harus di cek apakah user yang akan mengakses sudah login atau belum. Jika belum… langsung muncul pesan belum login dan exit artinya isi halaman tidak ditampilkan di browser. Jangan lupa membuat script untuk logout. Konsep logout dalam autentifikasi adalah menghapus variabel session untuk username tadi. logout.php Ver 1.0 [by-dfr] Page 8
  • 9. [PHP TUTORIAL] Class Activity CATATAN : Enskripsi adalah proses mengamankan suatu informasi dengan membuat informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan khusus Deskripsi adalah upaya pengolahan data menjadi sesuatu yang dapat diutarakan secara jelas dan tepat dengan tujuan agar dapat dimengerti oleh orang yang tidak langsung mengalaminya sendiri. MD5 (Message-Digest algorithm 5) adalah fungsi Hash kriptografik yang digunakan secara luas dengan Hash value 128-bit Jadi tujuan umum dari enskripsi password adalah meningkatkan keamanan agar password lebih sulit dibobol Tool Web untuk encrypt dan decrypt pasword www.md5decrypt.org www.md5decryption.com www.md5encryption.com Ver 1.0 [by-dfr] Page 9 untuk