Cara Validasi Form agar Aplikasi Tetap Aman Menggunakan Codeigniter

Adakalanya, saat Anda melakukan input kode pada form secara asal-asalan, hal tersebut justru akan membuat aplikasi yang Anda miliki menjadi rentan dengan XSS Attack. Maka dari itu, Anda perlu melakukan cara validasi form agar aplikasi tetap aman seperti yang akan dibahas kali ini.

Karena seperti diketahui, validasi form ini bisa menjadi solusi terbaik yang bisa Anda lakukan untuk melindungi aplikasi agar tetap aman. Namun apa sebenarnya yang dinamakan dengan validasi form ini, dan bagaimana cara melakukannya?

Anda bisa mengetahui jawabannya dalam ulasan yang akan dibahas berikut ini.

Pengertian dan Cara Validasi Form agar Aplikasi Tetap Aman

Validasi form diartikan sebagai proses untuk melakukan pengecekan dimana sebuah data telah sesuai dengan yang diinginkan ataukah tidak. Artinya proses validasi form dilakukan untuk membatasi data apa saja yang memang diperlukan, lalu nantinya akan dikirim ke database maupun server.

Dengan kata lain, validasi form ini memiliki peran yang cukup penting. Lebih jauh lagi, validasi form ini sangat dibutuhkan untuk membuat sebuah aplikasi bisa tetap aman. Karena tak bisa dipungkiri, dengan melakukan penginputan data yang asal-asalan, bisa jadi hal tersebut malah akan membuat aplikasi menjadi rentan dari kemungkinan adanya kelemahan sistem.

Meskipun demikian, melakukan validasi form ini tidak bisa sembarangan. Anda perlu melakukannya dengan cara validasi form agar aplikasi tetap aman dengan tepat dan benar.

Karena jika tidak demikian, bukan hanya aplikasi yang menjadi rentan, namun juga akun yang Anda miliki pada aplikasi menjadi tidak aman. Sehingga mudah diretas oleh pihak lain yang tidak berkepentingan.

Bagi yang belum melakukan validasi form sebelumnya, Anda perlu mengetahui bahwa dalam beberapa website/aplikasi, akan muncul beberapa notifikasi. Dimana notifikasi tersebut, mengharuskan Anda untuk melakukan perintah-perintah tertentu.

Beberapa notifikasi tersebut diantaranya:

  • This field is required. Jika Anda mendapatkan notifikasi/perintah seperti itu, maka hal tersebut diartikan bahwa Anda harus mengisi kolom tersebut dan tidak boleh membiarkannya tetap kosong
  • Please enter a valid email address. Perintah/notifikasi ini dimaksudkan agar Anda memasukkan (input) alamat email yang valid.

2 Cara Melakukan Validasi Form

Pada umumnya, proses validasi form ini terdiri dari 2 bagian, yaitu:

1.    Validasi dengan Sisi Klien (Client Side Validation)

Validasi form yang satu ini dilakukan pada sisi klien/browser. Jenis validasi yang satu ini dilakukan agar proses input data bisa sesuai dengan yang diharapkan, sebelum akhirnya data-data tersebut dikirimkan ke server.

Pada umumnya, jenis validasi form dengan sisi klien ini terbagi ke dalam 2 bagian. Di antaranya:

  • Bersifat Built-in form validation. Salah satunya dengan menggunakan HTML5. Pada umumnya, validasi form yang bersifat built-form validation ini tidak membutuhkan javascript, namun memiliki performa yang cukup baik. Hanya saja, validasi form yang dilakukan dengan sistem ini tidak dapat dikostumisasi nantinya
  • Menggunakan Javascript. Dengan validasi form sisi klien yang menggunakan javascript ini, validasi form bisa terkostumisasi, dan aplikasi bisa menjadi tetap aman

 

2. Validasi Sisi Server (Server Side Validation)

Berbeda dengan validasi form sisi klien, cara validasi form agar aplikasi tetap aman yang satu ini akan dilakukan pada server. Dimana server akan melakukan proses memvalidasi data sekali lagi, sebelum akhirnya data tersebut dikirim ke database.

Proses validasi form dengan sisi server ini, akan melakukan proses pengiriman data, sekaligus melakukan pengecekan data dengan menggunakan metode POST.

Dengan kata lain, proses validasi form dengan sisi server ini bisa dilakukan secara manual, maupun dengan menggunakan library.

Cara Melakukan Validasi Form dengan Menggunakan CodeIgniter Melalui Library pada Sisi Server

Jika pada penjelasan diatas telah dijelaskan mengenai 2 cara validasi form agar aplikasi tetap aman. Namun, kali ini akan dibahas mengenai cara dan kode-kode khusus yang sebelumnya telah tersedia di Codeigniter. Dimana pada Codeigniter ini, telah tersedia sebuah library yang dikenal dengan istilah form_validation.

Cara validasi form agar tetap aman dengan menggunakan form_validation ini diantaranya:

  • Load library/libaray Codeigniter dengan kode seperti dibawah ini:

 

                    $this->load->Libaray (‘form_validation’) ;

 

  • Anda bisa melakukan load libaray ini pada methode maupun autoloader. Dimana pada methode dilakukan, jika Anda menginginkan libaray tersebut dilakukan pada metode tertentu saja. Sementara untuk autoloader, dilakukan jika Anda menginginkan libaray yang bisa digunakan pada semua methode
  • Jika library/libaray tersebut telah Anda load, maka selanjutnya Anda bisa menentukan rules untuk melakukan validasi form ini. Adapun kode yang perlu Anda masukkan yaitu:

 

                   $this->form_validation->set_rules ($rules) ;

 

  • Selanjutnya, Anda bisa menjalankan validasi dengan menginput kode seperti berikut ini:

 

                                     $this->form_validation->run () ;

 

  • Pada saat menjalankan validasi ini, Anda akan melihat tampilan TRUE jika fungsi run () menghasilkan data yang valid. Sementara jika Anda melihat tampilan False, jika memang fungsi run () ini menghasilkan data yang invalid, ataupun data yang tidak sesuai dengan rules yang diberikan. Dengan demikian, cara validasi form agar aplikasi tetap aman dengan library Codeigniter ini telah selesai dilakukan

Beberapa Rules Bawaan CodeIgniter yang Perlu Anda Perhatikan dalam Validasi Form

Agar fungsi run () bisa menghasilkan data yang valid (TRUE) dan sesuai dengan rules yang diberikan, maka Anda perlu mempelajari beberapa arti dari rules-rules tersebut, selain mengetahui beberapa notifikasi/perintah yang telah diberikan sebelumnya diatas tentunya. Sekedar informasi, Codeigniter telah menyediakan rules bawaannya sendiri.

Beberapa rules tersebut diantaranya:

  • Required : Dimana kolom input wajib diisi dan tidak boleh dikosongkan
  • Matches : Input harus sesuai (match) dengan parameter yang telah ditentukan. Misalnya yaitu:

 

                                      matches [form_item]

 

  • Differs : Berbeda dengan matches, Differs dimaksudkan agar input yang dilakukan, harus berbeda (differs) dengan parameter yang telah ditentukan. Contohnya seperti berikut ini,

 

                                          differs [form_item]

 

  • Regex_match : Input harus match (sesuai) dengan pola regex yang sebelumnya telah ditentukan. Contohnya yaitu:

                                                       

                                      regex_match [/regex/]

 

  • is_unique : Rules ini diartikan dimana Query Builder bisa digunakan. Misalnya yaitu,

 

                                        is_unique [table.field]       

 

  • min_lenght : Panjang input yang dimasukkan haruslah dalam batas minimal yang ditentukan. Contohnya yaitu :

 

                                                  min_lenght (5)

 

  • max_lenght : Panjang input yang dimasukkan haruslah dalam batas maksimal yang telah ditentukan. Misalnya,

 

                                                  max_lenght (16)

 

  • excatch_lenght : Berbeda dengan min_lenght dan juga max_lenght, rules excatche_lenght diartikan agar panjang input yang dimasukkan haruslah sama dengan nilai yang telah ditentukan. Misalnya,

 

                                                  excatch_lenght (10)

 

  • in_list : Input haruslah mengandung item, yang mana sebelumnya telah ada dalam list. Contohnya:

 

                                                  in_list [green, red, blue]

 

  • alpha : Iput yang dilakukan harus menggunakan huruf alfabet
  • alpha_numeric : Input yang dilakukan harus menggunakan huruf alfabet numerik
  • alpha_numeric_spaces : Input harus dilakukan dengan menggunakan huruf alfabet numerik, serta bisa dilakukan dengan menambahkan spasi

Selain beberapa rules diatas, sebenarnya ada beberapa rules lainnya yang ada pada Codeigniter. Anda bisa mempelajarinya dahulu sebelum melakukan cara validasi form agar aplikasi tetap aman dengan menggunakan Codeigniter ini. Selamat mencoba!

 

Leave a Comment