PHP и AD (Как правильно задать objectSid в запросе, чтобы получить данные о пользова)

kamu

Guest
PHP и AD (Как правильно задать objectSid в запросе, чтобы получить данные о польз)

php-4.3.9 и Active Directory

Как правильно задать objectSid в запросе, чтобы получить данные о пользователе?

Если я делаю такой запрос:

SELECT ADsPath, cn, sAMAccountName, objectSid
FROM 'LDAP://DC=trcont, DC=org, DC=mps'
WHERE objectCategory='user'
AND sAMAccountName='$nam'
AND CN='$cn'

То как результат получаю такой вид

Array ( [0] => 1 [1] => 5 [2] => 0 [3] => 0 [4] => 0 [5] => 0 [6] => 0 [7] => 5 [8] => 21 [9] => 0 [10] => 0 [11] => 0 [12] => 34 [13] => 231 [14] => 143 [15] => 177 [16] => 104 [17] => 197 [18] => 246 [19] => 193 [20] => 99 [21] => 96 [22] => 67 [23] => 109 [24] => 44 [25] => 5 [26] => 0 [27] => 0 )

И как мне его преобразовать в переменной $objsid, чтобы выполнить такой вот запрос

SELECT ADsPath, cn, sAMAccountName
FROM 'LDAP://DC=***, DC=***, DC=***'
WHERE objectCategory='user'
AND sAMAccountName='***'
AND objectSid='$objsid'
 

skynet80

rundesigner.com
Чего - то странный ты результат получаешь. Запрашиваешь 4 поля, а возвращается линейный массив. Результат должен быть из 4-х массивов. Скорее всего ты получил первое поле ADsPath.
 

kamu

Guest
да нет, получаю то я 4 поля а етот массив - objectSid
А во второй запрос он не подходит...

Если его предлтавлять в AD виде то он имеет вид AQUAAAAAAAUVAAAAIuePsWjF9sFjYENtLAUAAA==

Кажись ето Base64, но не проходит
Я его переводил и в 16-ю и в 2-ю все равно не подходит =(
 

skynet80

rundesigner.com
Если у тебя стоит задача определить пользователя в другом субдомене прочитай:
http://forums.devshed.com/archive/t-168470/PHP-Active-Directory-and-LDAP-Referrals
 

kamu

Guest
Задача - определить пользователя по СИДу
 

skynet80

rundesigner.com
Посмотри лучше статью, там есть функция,
function getObjectSid($adConn, $dn, $distname)
переделай ее под себя и не мучайся.
Обрати внимани что в запросе условия передаются в ЮТФ8 и при выводе обратно декодируются.
А так вообще я виндовыми серверами не занимаюсь. Если есть какие то аргументы для того чтобы я этим занялсяся, то пиши на мыло :)
 
Сверху