2015-10-27 2 views
0

Я хочу иметь возможность разрешить одному ок в Active Directory иметь доступ к аутентификации на внутреннем веб-сайте моей компании. Пожалуйста, помогите, поскольку я потратил слишком много времени на это. Это то, что у меня до сих пор:Как привязать к определенному ou в ldap

$domain ='ab.cd.ef.gh.ij'; 
     $host='xxx.xxx.xx.x'; 
     $ds = ldap_connect($host); //has to be domain or hostname 
     ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3); 
     ldap_set_option($ds, LDAP_OPT_REFERRALS, 0); 

     if($ds) 
     { 

      $bind=ldap_bind($ds,$name, $pass); 
      if($bind) 
      { 
       $_SESSION['status'] = 'authorized'; 
       header("location: index.php"); 
      } else return "Please enter correct username and password."; 
     } 

Заранее спасибо

ответ

0

Это работает идеально, если вы хотите, чтобы один НУ иметь доступ к системе авторизации:

$domain ='ab.cd.ef.gh.ij'; 
     $host='xxx.xxx.xx.x'; 
     $connect = ldap_connect($host); //has to be domain or hostname 
     ldap_set_option($connect, LDAP_OPT_PROTOCOL_VERSION, 3); 
     ldap_set_option($connect, LDAP_OPT_REFERRALS, 0); 
     $dn = "OU=something,OU=something,OU=something,OU=something,DC=ab,DC=cd,DC=ef,DC=gh,DC=ij"; 
     $search = "CN=$name"; 

     if($connect) 
     { 
      $bind=ldap_bind($connect,$name, $pass); 
      if($bind) 
      { 
       $sr=ldap_search($connect, $dn, $search); 
       $data = ldap_get_entries($connect, $sr); 
       for ($i=0; $i<$data["count"]; $i++) 
       { 
        $user = $data[$i]["dn"] ; 
       } 
       if($user =="CN=$name,OU=something,OU=something,OU=something,OU=something,DC=ab,DC=cd,DC=ef,DC=gh,DC=ij") 
       { 
        $_SESSION['status'] = 'authorized'; 
        header("location: index.php"); 
       }else 
       { 
       header("location:lost.html"); 
       } 

      } else return "Please enter correct username and password."; 
     } 

только нижняя сторона этого заключается в том, что имя пользователя и общее имя должны быть одинаковыми для работы.

Happy Code

Смежные вопросы