Ngamankeun Sandi Kecap (Password) Aplikasi Komputer


Aplikasi komputer anu henteu bisa sagawayah jalma asup ka jero aplikasina, bisa dilengkepan ku sandi kecap (password). Sandi kecap jadi konci pikeun anu maké aplikasi komputer supaya bisa asup ka jero aplikasi. Ngan ukur jalma anu miboga sandi kecap (katut sandi asma) wungkul anu bisa asup. Anu henteu boga mah moal bisaeun. Biasana jalma anu geus kacatet atawa kadaptar wungkul anu bisa asup téh. Dicatet atawa didaptarkeunana dina databés.

Sandi kecap
Sandi kecap

Pikeun jalma anu henteu aya dina daptar mah moal bisa asup kana aplikasina, kajaba daptar heula jadi anggahota anu ngagunakeun aplikasi. Kitu sotéh lamun aplikasina bébas bisa diaksés ku saha waé. Sedengkeun lamun aplikasina husus pikeun golongan anu tangtu mah, henteu sagawayah bisa daptar.

Kusabab data ngeunaan sandi kecap ieu diteundeunna dina databés, masih bisa dikotéktak dina databésna sacara langsung. Jalma anu meunang salinan databésna bisa maca langsung sandi kecap unggal pamaké anu aya dina databés.

Ku hal ieu, sandi kecap dina databésna kudu disamunikeun ogé supaya henteu sagawayah atawa gampang kapanggihna. Tempat neundeun sandi kecap téh henteu gampang kabaca. Sandi kecap anu diteundeun téh ulang langsung diteundeun sakumaha ayana, tapi kudu diolah heula supaya susah macana. Contona ngolah sandi kecap téh kana wangunan samaran sandi kecapna ngagunakeun kodeu MD5 atawa ngagunakeun salt. Anu diteundeun dina databés téh lain kecap password anu sakumaha dimaksudna, tapi samaranana sanggeus diolah.

Nyokot ID Anu Kakara Diasupkeun kana Databés MySQL


Ngasupkeun data kana databés MySQL téh geningan gampang ogé. Komo lamun aya field tabel databés anu autoincrement, teu kudu diganggu atawa diasupkeun niléyna. Antepkeun waé….
Ngan hanjakal dina nalika hayang apal ID atawa field anu autoincrement éta, rada susah. Kumaha carana lamun hayang apal eusi éta ID anu bieu diasupkeun kana databés. Lamun dina databés PostgreSQL bisa maké fungsi next_val(), dina MySQL mah henteu bisa.
Sanggeus tetelepék jeung kokoréh di mandala maya, manggihan ogé carana. Cara anu paling gampang maké fungsi LAST_INSERT_ID(). Nurutkeun lambaran http://stackoverflow.com/, cara mikanyaho ID auto_increment anu kakara diasupkeun kana databés bisa maké fungsi LAST_INSERT_ID ku jalan maké kuéri SELECT LAST_INSERT_ID(); Kaluaran ieu kuéri téh niléy ID anu bieu diasupkeun kana databés.

Mikanyaho ID anu bieu diasupkeun kana databes MySQL
Mikanyaho ID anu bieu diasupkeun kana databes MySQL

Sabenerna mah pikeun mikanyaho ID anu kakara diasupkeun kana databés téh bisa ku jalan nyokot ID anu panggedéna: SELECT MAX(ID). Hanjakal maké jalan ieu mah henteu salawasna bisa dipercaya. Soalna aya kalana ngasupkeun ID kana databés téh sanajan ID-na geus maké autoincrement, niléy ID-na diasupkeun sorangan ku niléy sambarangan. Bisa waé niléyna téh langsung anu gedé.
Jadi, pikeun mikanyaho niléy ID hususna autoincrement anu kakara diasupkeun kana databés MySQL ku cara maké fungsi SELECT LAST_INSERT_ID();

Mangpaat Paraméter PConnect dina CodeIgniter


Salasahiji pilihan pikeun nyambungkeun aplikasi PHP maké CodeIgniter kana databés téh nyaéta PConnect. Dina konpigurasi databés (payil database.php), aya paraméter PConnect anu bisa diatur jadi TRUE atawa FALSE. Ieu pilihan atawa paraméter téh bisa jadi aya mangpaatna pikeun aplikasi PHP anu keur dijieun. Ngan salian ti aya mangpaatna, bisa jadi ogé henteu aya mangpaatna. Naha arék ditetepkeun sina jadi TRUE atawa FALSE, duanana miboga mangpaat jeung madorotna. Ngan kudu apal naon waé mangpaat jeung madorotna.

Parameter sambungan databes dina payil database.php

Nurutkeun manual CodeIgniter, PConnect téh mangrupakeun singketan tina Persistent Connection. Sedengkeun persistent connection, nurutkeun manual PHP mangrupakeun hiji sambungan SQL anu henteu dipegatkeun sanajan paréntah SQL geus dilaksanakeun kalawan sampurna. Nalika Persistent Connection dipénta, PHP bakal mariksa heula naha geus aya sambungan anu sarua saméméhna atawa acan. Lamun geus aya, mangka PHP bakal ngagunakeun éta sambungan anu geus aya pikeun nyambungkeun kana databés. Lamun euweuh, mangka PHP bakal nyieun sambungan anyar. Anu dipimaksud ku sambungan anu ‘sarua’ téh nyaéta sambungan anu dijieun ka host anu sarua kalawan sandi asma jeung sandi kecap anu sarua ogé.

Ngeunaan ngatur PConnect dina CodeIgniter, naha kudu dijadikeun TRUE atawa FALSE, aya hiji wangkongan atawa ngadu bako di StackOverFlow, ngatur PConnect dina CodeIgniter jadi TRUE/FALSE aya untung-rugina. Dina éta lambaran ngadu bako dijelaskeun cenah aya alusna lamun ngatur paraméter PConnect jadi TRUE lamun:

  • Miboga hardware pangladén wéb jeung databés anu alus dina ngajalankeunana,
  • Databés katut pangladén wéb anu geus di-tune kalawan bener,
  • Miboga hardware paranti nyoba anu sarua reujeung hardware anu bakal dipaké nalika jalan,
  • Jeung miboga anggapan yén performance jadi masalah anu disababkeun ku lilana waktu sambungan databés.

Ngan kudu apal heula, ngatur PConnect kana TRUE, bakal nyababkeun:

  • Bug kusabab lobana sambungan anu teu kapariksa jeung teu kanyahoan (jadi waé loba teuing sambungan).
  • Sambungan databés bakal ngaleuwihan batesan anu ditangtukeun.
  • Cara gawé databés bakal nyirorot kusabab lobana sambungan anu nganggur teu kapaké.
  • Jadi bug kusabab sambungan loba anu teu kapaké jeung aplikasi henteu apaleun.

Tapi alusna PConnect diatur jadi TRUE téh nyaéta bisa ngurangan waktu pikeun nyieun sambungan mimiti kana databaés, dina harti bisa gancang nyambung kana databés.

Kitu cenah….

Mikawanoh Connection String


Connection string? Ceuk Basa Sundana mah kurang leuwih tali panyambung. Sakumaha ngaranna connection string dipake pikeun nyambungkeun kana hiji perkara. Dina dunya kompiuter jeung aplikasi kompiuter, connection string osok dipaké pikeun nyambungkeun program aplikasi kana databés atawa payil data. Dina jero connection string ngandung inpo anu dibutuhkeun ku anu nyadiakeun (provider) pikeun nyambung kana databés atawa payil data.

Tali panyambung connection string

Dina kanyataanana loba rupa provider anu nyadiakeun panyambung kana databés. Unggal provider miboga rupa-rupa cara anu béda pikeun nyambungkeun aplikasi kana databés atawa payil data. Kusabab kitu, hiji provider tacan tangtu sarua reujeung provider lainna dina nyieun connection string-na.

Najan kitu, nurutkeun inpo ti connectionstring.com, umumna connection string miboga warna atawa wangunan anu sarua nyaéta:

  1. Connection string diwangun ku barisan pasangan kecap-kecap anu geus jadi konci jeung niléyna anu dipisahkeun ku tanda titik koma (;)
  2. Tanda sarua jeung (=) nyambungkeun kecap konci reujeung niléyna
  3. Inpo dina connection string dikirim ka provider

Conto connection string anu nyambungkeun aplikasi kana databés PostgreSQL:

Server=localhost;Port=5432;User Id=postgres;Password=123456;Database=db_bw;

(Gambar meunang nginjeum ti http://www.connectionstrings.com/)

Nyambungkeun CodeIgniter 2 kana Databés Oracle


Sakali waktu mah anu perlu disambungkeun kana aplikasi wéb téh lain databés MySQL atawa PostgeSQL wungkul. Tapi perlu ogé databés Oracle. Kabeneran aplikasi anu dijieunna make rangkay gawé (framework) codeigniter anu dina nyambungkeun aplikasi kana databésna lumayan gampang. Kari ngatur dina payil konpigurasi databés, geus bisa nyambung kana databésna. Jeung bisa dipaké iraha waé dina aplikasi anu dijieun.

Nyobaan nyieun konpigurasi databés biasa ngan databésna maké databés Oracle. Kusabab databésna maké Oracle, atuh tukang setirna (dbdriver-na) ogé maké oci8. Aplikasi dijalankeun, gagal cenah pikeun nyambungkeun aplikasi kana databésna. Teu bisa nyambungkeun aplikasi kana databés.

Kumaha atuh?

Sanggeus nyungsi maké google, geningan teu bisa maké konpigurasi biasa sakumaha databés MySQL atawa PostgreSQL, tapi aya anu nyebutkeun cenah kudu maké TNS (TNS téh naon nya…?). Anu ngabédakeunana mah utamana ngaran pangladén databésna. Henteu langsung maké alamat IP atawa pangladén databés, tapi kudu maké gambaran anu jéntré ngeunaan databésna katut kumaha cara nyambungna (maké naon nyambungna).

Konpigurasi databes codeigniter kana Oracle

Pikeun inpo leuwih jéntré bisa nyungsi ka alamat http://codeigniter.com/forums/viewthread/139675/.