Григорьев Михаил писал(а):Владимир а что за проект у вас?
Я на Novell Forge зарегил NVStat под видом BMLogViewer
Project Full Name: Web Interface for Border Manager and wanstat.pl logs
Project Short Name: nvstat
Григорьев Михаил писал(а):Пишу на PHP, авторизация с использованием UCX
Хотя есть и тут грабля - недостаток литературы по юзанью UCX for PHP
На Perl'е все просто, авторизация, чтение нужных полей юзера из NDS, правка этих полей... все есть, а вот в PHP все глухо :(
Может есть у кого доки по этому делу?
Можно конечно написать авторизацию по LDAP... но тут тоже док нет
Можно использовать авторизацию апача но тут есть грабля с контекстами, а именно
Пишем .htaccess
AuthName "Статистика"
AuthType Basic
AuthNDSTree TEST_TREE
AuthNDSContext O=TEST
AuthNDSRequireSSL Off
require valid-user
дык вот в AuthNDSContext можно только один контекст указать и все...
почему не сделали возможность указывать несколько фиг знает
Владимир а поподробнее о вашй идее с nwdir activex control можно?
Первоначально это делалось немного для другого, на одной интранетовской вебьей морде понадобился аналог clntrust - т.е. прозрачно для пользователя определять кто он такой, и в зависимости от этого показывать ему либо большую фигу либо кучу пряников.
Выглядит это примерно так:
index.html:
<HTML>
<body onLoad='getcn()'>
<form name='form' action='index.php' method='post'>
<input type='hidden' name='nwuser' value=''>
</form>
<OBJECT CLASSID="CLSID:4F021AE3-9E98-11D0-A808-00C04FDCD94A"
ID="NWDir1" WIDTH=32 HEIGHT=32
CODEBASE = "http://phones.bz.rus/controls/nwdir.ocx">
</OBJECT>
<SCRIPT LANGUAGE="JavaScript">
function getcn()
{
nwuser=NWDir1.LoginName;
s=nwuser.split('\\');
nwuser='cn='+s[5]+',ou='+s[4]+',o='+s[3];
document.form.nwuser.value=nwuser;
document.form.submit();
}
</SCRIPT>
</body>
</HTML>
У нас структура не многоуровневая, в смысле что пользователь всегда .cn=user,ou=unit,o=org, соответственно формируем жаваскриптом имя пользователя пригодное для ldapа и проверяем его членство в необходимой группе.
т.е. делаем ldap_read этого $nwuser и смотрим memberof= для каждого уровня доступа.
соответственно для nvstat это выльется либо в проверку по группам доступа (если таковые определены) либо, если это обычный пользователь - то только в SELECT про него самого.
Да, этот nwdir.ocx без клиента не работает.
Если вопросы есть - то в аську 41621486