Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]User systemu windows
Forum PHP.pl > Forum > Przedszkole
kowalo
Witam,
dopiero zaczynam swoją przygodę z php. Trochę szukałem w googlach, nic niestety nie znalazłem. Trafiłem tutaj i liczę na pomoc doświadczonych.

Jest sobie strona. Owa strona działa tylko wewnątrz sieci i nie ma dostępu do internetu. Piszę o tym wyprzedzając komentarze nawiązujące do bezpieczeństwa itp.
Interesuje mnie w jaki sposób za pomocą PHP wyciągnąć nazwę użytkownika zalogowanego w Windows XP.
Czy w ogóle istnieje taka możliwość?
Proszę o pomoc.
Spawnm
Nie istnieje, to co możesz wyciągnąć od usera masz w $_SERVER .
Method
usera z windy sie nie da, ale może masz domenę i jakiegos ldap'a.
Z ldapa można wyciagnąć usera
kowalo
Mam domenę. W jaki sposób sprawdzić czy aktualnie zalogowany user jest w AD?
Chodzi o to aby dostęp do strony mieli tylko użytkownicy z AD.
Autentykacja w IIS chyba mi się nie przyda, chciałbym nazwę usera mieć w jakiejś zmiennej, którą mógłbym wykorzystać później.

erix
Cytat
Interesuje mnie w jaki sposób za pomocą PHP wyciągnąć nazwę użytkownika zalogowanego w Windows XP.

COM + odpowiednia przystawka. A to już leci tak, jak w WSH. ;]
kowalo
Cytat(erix @ 13.08.2009, 13:47:47 ) *
COM + odpowiednia przystawka. A to już leci tak, jak w WSH. ;]


A można jaśniej?
erix
http://www.codeproject.com/KB/vbscript/userinfo.aspx - tylko sobie przeportuj, aby z tego PHP skorzystał.

Cytat
Interesuje mnie w jaki sposób za pomocą PHP wyciągnąć nazwę użytkownika zalogowanego w Windows XP.

Zaznaczam, że nazwa zostanie zwrócona dla kontekstu bieżącego użytkownika (wykonującego proces skryptu).
kowalo
Cytat(erix @ 13.08.2009, 14:25:03 ) *
tylko sobie przeportuj, aby z tego PHP skorzystał.


chyba jestem do tego nie zbyt mądry, żeby nie napisać inaczej
erix
Ostatecznie możesz przez konsolę odpalać VBS i pobierać dane wyjściowe ze skryptu.
mariusz g
Czy ktoś dał radę to rozwiązać ?
foxmark
Nie wiem czy temat jest jeszcze otwarty,
Wlasnie szukam informacji o LDAP,

W PHP mozesz sprawdzic
  1. <?php echo getenv("username"); ?>

Dziala w zaleznosci od konfuguracji php
albo
  1. <?php echo $_SERVER['REMOTE_USER']; ?>


Zamieszczam kod ktry sprawdza uzytkownika i haslo w LDAP
  1. <form id="form1" name="form1" method="post" action="">
  2. <p><label>User:</label>&nbsp;&nbsp;<input type="text" id="log" name="log" /></p>
  3. <p><label>Password</label>&nbsp;&nbsp;<input type="password" id="pass" name="pass" /></p>
  4. <p>
  5. <input type="submit" name="Go" id="Go" value="Submit" />
  6. </p>
  7. </form>
  8. <?php
  9. $log = $_POST['log'];
  10. $pass = $_POST['pass'];
  11. if ((isset($pass)) && (isset($log))) {
  12. $server = "ldap://127.0.0.1";
  13. $port = "389";
  14. $loginPassword = $pass;
  15. $loginBase = "uid=". $log .",ou=Users,ou=Domain,ou=XXXXXX,o=UK,dc=YYYYYY,dc=com";
  16.  
  17. $ds = ldap_connect($server, $port);
  18.  
  19. if ($ds) {
  20. $ldapbind = @ldap_bind($ds, $loginBase, $loginPassword);
  21. if ($ldapbind) {
  22. $resultat = true;
  23. echo "$log<br>";
  24. } else {
  25. $resultat = false;
  26. echo "not ok";
  27. }
  28. } else {
  29. $resultat = false;
  30. echo "Connection Problem";
  31. }
  32.  
  33. return ($resultat);
  34.  
  35.  
  36.  
  37. }
  38. ?>


Mam nadzieje ze to sie przyda.
Pozdrawiam!
Dominis
Myślę że najprościej zrobić sobie baze użytkowników, gdzie będzie znajdował się:
Adres IP, Nazwa Komputera, opcjonalnie inne dane.

Przy wejściu na strone pobierasz ip adres i z bazy wyciagasz to co Cie interesuje.
Jesli serwer jest w tej samej sieci co uzytkownicy to mozna jeszcze mac wyciagnac i do macu przypisywac nazwe komputera.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.