ldap giriş formu çalışır, ancak aktif directory grup erişimi eklemeniz gerekir

1 Cevap php

Ben eğer başarılı olursa, her sayfada kontrol edilecek bir oturum oluşturur, kullanıcı / ldap sunucu / aktif dizin karşı geçmek doğrular sonra, oturum ister bir form oluşturduk.

Şimdi ben giriş ve onları ldap_search kullanarak bir arama yapmak kişinin kullanıcı adı oturumu, kontrol etmek istiyorum, bu yüzden onlar için ne ait grup kontrol ve doğrulamak için bir işleve sokmak o grubu geçebilir onlar ki bu sayfayı görüntülemek.

Her sayfa, bu gruplar, Active Directory içinde tanımlanmış kullanıcıların belli bir grup veya gruplar, erişilebilir olacak.

Ben ldap_search kullanarak, ya da belki ben çözmeye çalışıyorum bulmacanın sadece bir parçası olduğunu yapabilirim nasıl emin değilim.

Herhangi bir Yardım takdir - teşekkür ederim!

Kullanıcı öğrencinin aktif directory grup (bu kod çalışır eğer ben bilmiyorum, ama size ben başarmak istiyorum ne bir fikir vermelidir) aitse aşağıdaki kod örneği, bu görmektir.

$filter = "CN=StudentCN=Users,dc=domain,dc=control";

$result = ldap_search($ldapconn,$filter,$valid_session_username);

if($result == TRUE) {
 print $valid_session_username.' does have access to this page';
} else {
 print $valid_session_username.' does NOT have access to this page';
}

1 Cevap

php.net ldap_search() manual Alıntı

returns a search result identifier or FALSE on error.

Sen ldap arama aslında kayıtlar bulursa kontrol ldap_count_entries () kullanmak zorunda:

$filter = "CN=StudentCN=Users,dc=domain,dc=control";
$result = ldap_search($ldapconn,$filter,$valid_session_username);

$found = false;
if ($result !== false) {
    $count = ldap_count_entries  ($ldapconn, $result);
    if ($count !== false && $count > 0) {
     $found = true;
    }
}

if ($found === true) {
    print $valid_session_username.' does have access to this page';
} else {
    print $valid_session_username.' does NOT have access to this page';
}