Как получить идентификатор пользователя Windows в web2py для интранет-приложения? - PullRequest
4 голосов
/ 26 сентября 2010

Я использую web2py для сайта в интрасети, и мне нужно получить текущий идентификатор пользователя окна входа в систему в моем контроллере. Доступна ли какая-либо функция?

Ответы [ 3 ]

4 голосов
/ 09 октября 2010

Вам необходимо установить модуль аутентификации NTLM на ваш веб-сервер, такой как mod_sspi или mod_ntlm, а затем проверить переменную среды REMOTE_USER запроса.Вот что-то похожее в Django: http://brandonkonkle.com/blog/2008/sep/13/django-apache-and-mod_auth_sspi/

1 голос
/ 26 сентября 2010

Если вы имеете в виду, что вам нужен код на сервере, чтобы узнать идентификатор Windows текущего пользователя браузера, web2py не сможет вам этого сказать.Проверка подлинности Windows не имеет ничего общего с веб-протоколами.

0 голосов
/ 30 сентября 2010

Я не знаю, работает ли это, но попробуйте модуль psutil, который должен работать как в Windows, так и в Unix.

import os, psutil

ownPid = os.getpid() #This one works in Windows, but os.getuid() does not...
ownUid = [p.uid for p in psutil.process_iter() 
                 if p.pid == ownPid][0]
...