Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Intranet] Rozpoznawanie użytkowników
Forum PHP.pl > Forum > PHP
McRafal
Witam serdecznie wszystkich i mam pytanie.

Jak strona Intranetowa, która jest widoczna tylko wewn. organizacji i nie wymaga logowania, może rozróżniać użytkowników?

Użytkownicy:
- mają własne komputery,
- są zalogowani do Active Directory
- nie logują się do strony Intranetowej opartej na PHP

Czy ma ktoś jakikolwiek pomysł na rozróżnianie osób korzystających ze strony?

Pozdrawiam
Rafał
devnul
możesz sprawdzać po IP/MAC usera pod warnkiem że eden user loguje sie zawsze z tego samego kompa
inaczej bez logowania się nie obejdziesz (a zarówno IP jak i MACa można zmienic także bezpieczne to to nie jest)
McRafal
Ok. Więc wyciągnąłem IP (skrypt odporny ponoć na proxy)

  1. <?php
  2. if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")) 
  3.  { 
  4. $rip = getenv("HTTP_CLIENT_IP"); 
  5.  } 
  6.  else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) 
  7.  { 
  8. $rip = getenv("HTTP_X_FORWARDED_FOR"); 
  9.  } 
  10.  else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) 
  11.  { 
  12. $rip = getenv("REMOTE_ADDR"); 
  13.  } 
  14.  else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) 
  15.  { 
  16. $rip = $_SERVER['REMOTE_ADDR']; 
  17.  } 
  18.  else 
  19.  { 
  20. $rip = "unknown"; 
  21.  } 
  22. echo "IP: $rip";
  23. ?>


Wyciągnąłem też nazwę hosta (użytkownik rozpoznawalny po nazwie swojego komputera):
  1. <?php
  2. $hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);
  3. echo "HOST: $hostname";
  4. ?>


Co jeszcze mogę ciekawego dowiedzieć się o użytkowniku? Głównie zależy mi na wyciągnięciu login'u na jaki się zalogował (Windows XP / Active Directory).

Pozdrawiam
Rafał
misiek172
oj to raczej nie możliwe po stronie PHP itp. Jeśli już chciałbyś to zrobić językiem internetowym to MOŻE da się to zrobić w aplecie javy.

Nie lepiej poprostu zrobić baze danych IP korzystających z aplikacji i tam zamieścić manualnie wszystkie informacje?
devnul
możesz logować się do bazy AD przez ldap - jeśli userzy są tam zalogowani to o ile dobrze pamiętam są tam informacje o tym do jakiego kompa jaki user jest przyporządkowany (ale moge sie mylić)
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.