Как найти участника в группе безопасности AD, используя PHP - PullRequest
0 голосов
/ 30 января 2020

В настоящее время я занимаюсь разработкой приложения для доски объявлений, используя PHP. Теперь я хотел бы разрешить только сотрудникам добавлять в него данные, поэтому мне нужно выяснить, какой группой безопасности является текущий пользователь (в AD), например, у сотрудников есть своя собственная группа, а также у студентов. Я хотел бы использовать аутентификацию на основе Windows, чтобы получить свое имя пользователя и запросить его в группе AD. Я перепробовал все ответы, которые нашел, но ничего не помогло.

Пока у меня есть следующий код:

<?php
//Declare Vars
$domain = 'doamin.local';
$username = 'admin';
$password = "";
$ldapconfig['host'] = 'hostname';
$ldapconfig['port'] = 389;
$ldapconfig['basedn'] = 'dc=domain,dc=local';
$dn = 'dc=domain,dc=local';
//Connect to AD
$ds=ldap_connect($ldapconfig['host'], $ldapconfig['port']);
ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($ds, LDAP_OPT_REFERRALS, 0);
$bind=ldap_bind($ds, $username .'@' .$domain, $password);
    if ($bind) {
        echo "LDAP bind successful...";
        //Query for group membership
              $search = ldap_search($ds, $dn, "(samaccountname=w10student)", ['memberOf']);
              $enr = ldap_get_entries($ds, $search);

    } else {
        echo "LDAP bind failed...";
    }

      print_r($enr);

?>

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

Большое спасибо,

Conor

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...