ស្វែងយល់អំពី Ldap Component នៅក្នុង Symfony 3

សួស្ដីប្រិយមិត្តដែលនិយមតាមដាននូវអត្ថបទមេរៀនរបស់ Techfree ទាំងអស់គ្នា។ ថ្ងៃនេះ Techfree សូមធ្វើការណែនាំលោកអ្នកអោយបានស្គាល់អំពី Ldap component នៅក្នុង Symfony 3 ។ បើចំពោះអ្នកដែលបានរៀនខាងផ្នែក Network វិញគឺពិតជាបានស្គាល់ខ្លះៗហើយអំពី LDAP ។ នៅក្នុងអត្ថបទនេះ Ldap គឺជា component មួយក្នុងចំនោម component ជាច្រើនផ្សេងទៀតដែលមាននៅក្នុង Symfony 3 ហើយវាបានផ្ដល់នូវការតភ្ជាប់ទៅកាន់ LDAP server (OpenLDAP រឺក៏ Active Directory) ។

១) ការតម្លើង

អ្នកអាចតម្លើង component នេះបានតាមវិធី២យ៉ាងគឺ៖

វិធីទី១៖ តម្លើងតាមរយៈ Composer (symfony/ldap នៅលើវេបសាយ Packagist)

វិធីទី២៖ ប្រើប្រាស់នូវ official Git repository (https://github.com/symfony/ldap)

បន្ទាប់មកទៀត គឺទាមទារអោយមាន vendor/autoload.php file ដើម្បី enable នូវការធ្វើ autoload mechanism ដែលបានផ្ដល់ដោយ Composer។ បើមិនដូច្នោះទេ application របស់អ្នកនឹងមិនអាចស្វែងរកនូវ classes នៃ Symfony component បាននោះទេ។

២) ការប្រើប្រាស់

LdapClient class ផ្ដល់នូវ methods ដើម្បី ផ្ទៀងផ្ទាត់ភាពត្រឹមត្រូវនិង query នូវអ្វីដែលប្រឆាំងទៅនឹង LDAP server ។

LdapClient class អាចនឹងត្រូវបាន configure ដោយប្រើប្រាស់នូវ options ដូចខាងក្រោម៖

host ៖ IP រឺក៏ hostname នៃ LDAP server

port ៖ Port ដែលបានប្រើដើម្បី access ទៅកាន់ LDAP server

version ៖ version នៃ LDAP protocol ដែលត្រូវប្រើ

useSsl ៖ ថាតើ connection ដែលប្រើប្រាស់ SSL មានសុវត្ថិភាពរឺក៏អត់

useStartTls ៖ ថាតើ connection ដែលប្រើប្រាស់ StartTLS មានសុវត្ថិភាពរឺក៏អត់

optReferrals ៖ បញ្ជាក់ថាតើត្រូវអនុវត្តតាមការបញ្ជូនត្រលប់មកវិញដោយ LDAP server ដោយស្វ័យប្រវត្តិរឺក៏អត់

ឧទាហរណ៏ថា ដើម្បីតភ្ជាប់ទៅកាន់ start-TLS ដែលធានាសុវត្ថិភាពដល់ LDAP server ៖

bind() method ធ្វើការផ្ទៀងផ្ទាត់ភាពត្រឹមត្រូវនូវ configure connection ពីមុនដែលប្រើប្រាស់ទាំង distinguished name (DN) និង លេខសម្ងាត់នៃអ្នកប្រើប្រាស់ ៖

នៅពេលដែល bound (រឺក៏ ប្រសិនបើអ្នកបាន enable anonymous authentication នៅលើ LDAP server របស់អ្នក) អ្នកប្រហែលជា query នូវ LDAP server ដោយប្រើប្រាស់នូវ find() method ៖