လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> LDAP protocol အတွက် directory 0 န်ဆောင်မှုဆက်သွယ်ရေးဆက်သွယ်ရေးသင်ခန်းစာကိုအကောင်အထည်ဖော်ရန် PHP ကိုမည်သို့အသုံးပြုရမည်နည်း

LDAP protocol အတွက် directory 0 န်ဆောင်မှုဆက်သွယ်ရေးဆက်သွယ်ရေးသင်ခန်းစာကိုအကောင်အထည်ဖော်ရန် PHP ကိုမည်သို့အသုံးပြုရမည်နည်း

M66 2025-06-11

LDAP protocol အတွက် directory 0 န်ဆောင်မှုပေးရေးကိုအကောင်အထည်ဖော်ရန် PHP ကိုမည်သို့အသုံးပြုရမည်နည်း

Directory 0 န်ဆောင်မှုသည်သတင်းအချက်အလက်အမျိုးအစားအမျိုးမျိုးကိုသိမ်းဆည်းရန်အသုံးပြုသောစနစ်တစ်ခုကိုရည်ညွှန်းသည်။ Common Directory 0 န်ဆောင်မှုဆိုင်ရာ protocols များတွင် LDAP (ပေါ့ပါးသော directory access protocol) ပါဝင်သည်။ LDAP protocol ကိုများသောအားဖြင့်အသုံးပြုသူစစ်မှန်ကြောင်းအတည်ပြုခြင်းနှင့်ခွင့်ပြုချက်, အီးမေးလ်လိပ်စာစာအုပ်, PHP ဘာသာစကားဖြင့် LDAP Protocol မှတဆင့် LDAP Protocol မှတစ်ဆင့် LDAP Protocol မှတစ်ဆင့်လမ်းညွှန်ဝန်ဆောင်မှုနှင့်ဆက်သွယ်ရန်ဤဆောင်းပါးသည်မိတ်ဆက်ပေးလိမ့်မည်။

1 ။ LDAP extension ကို install လုပ်ပါ

LDAP ဆာဗာနှင့်ဆက်သွယ်ရန် PHP ကိုအသုံးပြုရန်သင် LDAP extension ကို install လုပ်ရန်လိုအပ်သည်။ Linux Systems တွင်၎င်းကို Package Manager မှတစ်ဆင့်တိုက်ရိုက်တပ်ဆင်နိုင်သည်။

 sudo apt-get install PHP-LDAP install လုပ်ပါ

Windows စနစ်များတွင် PHP.INI ဖိုင်ရှိ LDAP extension ၏ 0 န်ဆောင်မှုလိုင်းကိုမထိန်းချုပ်နိုင်ပါ။ (ယခင် semicolon ကိုဖယ်ရှားပါ)

 ; extension = ldap

extension ကို install လုပ်ပြီးနောက်၎င်းကိုအကျိုးသက်ရောက်စေရန်ဝက်ဘ်ဆာဗာကိုပြန်လည်စတင်ပါ။

2 ။ LDAP ဆာဗာကိုဆက်သွယ်ပါ

ပထမ ဦး စွာသင်သည် LDAP_Connect () function ကိုသုံးရန်လိုအပ်သည့် LDAP ဆာဗာနှင့်ချိတ်ဆက်ရန်လိုအပ်သည်။ ဤလုပ်ဆောင်ချက်သည်နောက်ဆက်တွဲစစ်ဆင်ရေးများအတွက် LDAP ဆက်သွယ်မှုအရာဝတ်ထုကိုပြန်ပို့သည်။ နမူနာကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

$ ldappost = 'ldap.example.com';
$ ldapport = 389;
$ LDAPCONN = LDAP_Connect ($ ldappost, $ ldapport);
    

အမှန်တကယ် application များအရသင်သည် LDAP ဆာဗာလိပ်စာနှင့်ဆိပ်ကမ်းသို့ $ ldaphost နှင့် $ ldapport ကိုပြောင်းလဲရန်လိုအပ်သည်။

3 ။ LDAP ဆာဗာသို့ခုတ်ပါ

ဆက်သွယ်မှုအောင်မြင်ပြီးနောက် LDAP ဆာဗာသို့ချည်နှောင်ရန် LDAP_BIND () function ကိုအသုံးပြုရန်လိုအပ်သည်။ ဆိုလိုသည်မှာ client သည် authentication ကိုကျော်လွန်ပြီးနောက်ဆက်တွဲစစ်ဆင်ရေးများပြုလုပ်ရန်ခွင့်ပြုချက်ရှိသည်။ ရွေးချယ်ရန်ကွဲပြားခြားနားသော binding နည်းလမ်းများအများအပြားရှိပါတယ်။

အမည်မသိ bowing

LDAP ဆာဗာနှင့်ချိတ်ဆက်ရန်အမည်မသိ binding ကိုသင်အသုံးပြုနိုင်သည်။

 ldap_bind ($ ldapconn);

အသုံးပြုသူအမည်နှင့်စကားဝှက်ကို Binding

Username နှင့် Password ကိုအသုံးပြုပြီး LDAP ဆာဗာကိုဆက်သွယ်ပါ။

$ ldapuser = 'username';
$ ldappass = 'password';
ldap_bind ($ LDAPCONON, $ LDAPUSER, $ LDAPPAST);
    

4 ။ ရှာဖွေခြင်း directory ဝန်ဆောင်မှု

LDAP ဆာဗာတစ်ခုကိုချိတ်ဆက်ပြီးချည်နှောင်ပြီးတဲ့နောက် directory 0 န်ဆောင်မှုအတွက် entries တွေကိုရှာဖွေဖို့ LDap_search () function ကိုသုံးနိုင်တယ်။ ရှာဖွေရေးစစ်ဆင်ရေးသည် Search နှင့် Search စံနှုန်းများ၏အခြေစိုက်စခန်း node (BACE DN) ကိုသတ်မှတ်ရန်လိုအပ်သည်။ နမူနာကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

$ searchbasedn = 'ou = လူတွေ, DC = ဥပမာ, DC = COM =
$ searchfileter = '(CN = ဂျွန် Doe)' ';
$ searingResult = ldap_search ($ ldapconn, $ searchbasedn, $ searchfilter);
    

အမှန်တကယ် application တွင်သင် $ searchbasedn နှင့် $ searchfileter ကိုသင့်လျော်သောတန်ဖိုးများသို့ပြောင်းလဲရန်လိုအပ်သည်။

ရှာဖွေမှုရလဒ်မှာ LDAP_GEget_entries () function ကို အသုံးပြု. ဖတ်နိုင်သောခင်းကျင်းမှုကိုပြောင်းလဲရန်လိုအပ်သည့် LDAP ရှာဖွေမှုရလဒ်ဖြစ်သည်။ နမူနာကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

$ searingentries = ldap_get_entries ($ ldapconn, $ searchresult);
    

5 ။ Directory 0 န်ဆောင်မှုဆိုင်ရာအချက်အလက်များကိုရယူပါ

Directory Service Data ကိုရှာဖွေပြီးနောက်သက်ဆိုင်ရာကွင်းဆင်းတန်ဖိုးကိုလိုအပ်သလိုရယူနိုင်သည်။ ယေဘုယျအားဖြင့်သင်သည်တိကျသောလယ်ကွင်း၏တန်ဖိုးကိုရရှိရန် LDap_get_values ​​() function ကိုသုံးနိုင်သည်။ ဥပမာကုဒ်မှာအောက်ပါအတိုင်းဖြစ်သည် -

$ name = ldap_get_values ​​($ LDAPCONNONNON, $ followenties [0], 'DisplayName');
    

$ Searchentiries [0] ကိုပြောင်းလဲရန်လိုအပ်သည့်အတွက်အမှန်တကယ်ရှာဖွေမှုရလဒ်ကို levice item အညွှန်းကိန်းနှင့် 'DisplayName' သို့သင်လိုအပ်သည့်နယ်ပယ်အမည်သို့ပြောင်းရန်လိုအပ်သည်။

6 ။ LDAP ဆက်သွယ်မှုကိုပိတ်ပါ

စစ်ဆင်ရေးအားလုံးပြီးဆုံးသွားသောအခါ LDAP ဆာဗာနှင့်ချိတ်ဆက်မှုကိုပိတ်ထားသင့်သည်။ ဆက်သွယ်မှုကိုပိတ်ရန် LDAP_CLOSE () function ကိုသုံးပါ။ ဥပမာကုဒ်မှာအောက်ပါအတိုင်းဖြစ်သည် -

 LDAP_CLOSE ($ LDAPCONNO);

အကျဉ်းချုပ်

LDAP protocol ကို အခြေခံ. directory 0 န်ဆောင်မှုပေးရေးဆက်သွယ်ရေးကိုအကောင်အထည်ဖော်ရန် PPP ကိုမည်သို့အသုံးပြုရမည်ကိုဤဆောင်းပါးကဖော်ပြသည်။ Target LDAP ဆာဗာကို LDAP_Connect () function မှတဆင့်ချိတ်ဆက်ပါ။ LDAP_SEARERCECECT_ENT_ENTERRENTERS () function မှရှာဖွေမှုရလဒ်များမှရှာဖွေမှုရလဒ်များကိုရှာဖွေပါ။ နောက်ဆုံးတွင်ဆက်သွယ်မှုကိုပိတ်ရန် LDAP_CLOSE () function ကိုသုံးပါ။ ဤဆောင်းပါးတွင်နမူနာကုဒ်သည်စာဖတ်သူများအား PHP ကို ​​အသုံးပြု. LDAP လမ်းညွှန် 0 န်ဆောင်မှုများကိုမည်သို့လုပ်ကိုင်ရမည်ကိုနားလည်ရန်ကူညီသည်။