Newsgroup: it.comp.www.php
Titolo: riconoscere utente windows

Ciao a tutti.
Da pochissimo mi sto interessando a php, cercando di sostituire asp 
nella nostra intranet per alcuni applicativi web.
Una cosa di cui avrei assolutamente bisogno è riconoscere chi è l'utente 
locale che apre una pagina php.
E' più di una settimana che cerco per il mondo ma non ho ancora avuto 
successo.
L'unico riferimento che ho trovato è il progetto "mod auth sspi" su 
sourgeforge. Ma provando a fare l'include della dll non riesco ad 
avviare apache!!
L'ambiente di prova su cui sto lavorando è il mio pc locale, win XP con 
Apache 2.0.51 PHP 4.3.8.
Grazie
Marco

 locale che apre una pagina php.
Forse sbaglierò, ma sicuro che si possa fare con un linguaggio 
*server*-side?
Inoltre, quello che dovrebbe dirti lo username non è né il server web né 
il browser, ma il sistema operativo del client, quindi dubito che si 
possa fare con qualche linguaggio client-side.
Sicuramente puoi con ActiveX (
http://www.commentcamarche.net/forum/affich-2187664-javascript-username
 
), con tutti i limiti che questo comporta.
Googlando un po', ho trovato conforto ai miei dubbi:
http://www.thescripts.com/forum/thread150007.html
-- 
Jax

 locale che apre una pagina php.
forse non ho capito bene...
non puoi dedurlo da $SERVER["HTTP_USER_AGENT"]?

 non puoi dedurlo da $SERVER["HTTP_USER_AGENT"]?
Da lě non si vede l'utente, solo il browser.
-- 
Jax

Ugo ha scritto:

Sono molto nuovo di php...
ci ho provato subito:
echo  $_SERVER["HTTP_USER_AGENT"];
mi risponde:
Mozilla/5.0 (Windows; U; Windows NT 5.1; it-IT; rv:1.8.1.4) 
Gecko/20070509 SeaMonkey/1.1.2

 locale che apre una pagina php.
Se stai lavorando ad una intranet, magari potresti usare l'indirizzo IP 
della macchina ( $_SERVER['REMOTE_ADDR'] )
Buona ricerca
-- 
Jax

 locale che apre una pagina php.
Potresti  usare  un metodo  alternativo...  Crei  (nel menu  avvio,  sul
desktop,  nei  preferiti...)  un  collegamento  che  include,  nel  link
stesso,  l'identificazione  dell'utente  (che  so,  una  cosa  del  tipo
http://myserver/app/index.php?user=pippo
). In questo modo ogni utente ha
sul  suo desktop  il  collegamento che  dice  all'applicativo stesso  lo
username utilizzato.
-- 
   _         _          _           _   _ _           _
 _| |___ _ _<_>__      | |___ _ ___| |_<_> |___ _ ___| |_ ___._ _ ___
/ . / . \ '_> / ._> ___| / / '_X_> | . \ | / / '_X_> | . Y . \ ' / . |
\___\___/_| | \___.|___|_\_\_| <___|___/_|_\_\_| <___|___|___/_|_\_. |
           <__'                                                  <___' 
MAIL(rot13):fgn...@tznvy.pbz - ICQ:#66264348 - 
MSN:dor...@hotmail.it
 

 
Il progetto "mod auth sspi" che citavo nel primo post mi sembrava 
servisse proprio al caso mio... ma non riesco a farlo funzionare.
grazie

 username utilizzato.
giusto!... inoltre se il collegamento lo crea sul desktop mettendoci 
come riga di comando
"
http://xxx.xxx/home.php?user=%username%
" non deve neanche impazzire a 
personalizzare il collegamento per ogni pc (magari può anche metterlo in 
una cartella condivisa da tutti).
-- 
Jax

Jax ha scritto:

$_SERVER['REMOTE_ADDR'] mi da l'ip del server (nel mio caso 127.0.0.1)
tra l'altro nell'help di php ho trovato delle variabili ambiente 
promettenti...
$_SERVER['REMOTE_HOST']
$_SERVER['REMOTE_IDENT']
$_SERVER['REMOTE_USER']
però m danno tutte un errore di questo genere:
Notice: Undefined index: REMOTE_HOST in D:\Apache\www\prove\i.php on line 14
mi manca qualcosa??

 
Grazie!
Potrebbe essere una soluzione... magari temporanea, ho visto anche li 
suggerimento di jax, ho provato con
http://localhost:8080/prove/i.php?utente=%username%
ma non interpreta la variabile d'ambiente!!
A proposito, non esiste un modo per accedere da script alle variabili 
d'ambiente locali??

 d'ambiente locali??
Bč, certe variabili il client č un bene che non le invii... ;)


 
sicuramente hai ragione.. ma ci fosse il modo di accedere alla username 
sarei a cavallo!!
Inoltre ho capito perche 'REMOTE_USER' non funziona, bisogna gestire 
l'autenticazione HTTP

 Acc. con IE funziona!! con seamonkey no :-(
E' strano,  molto strano.  Perche' la  trasformazione del  link dovrebbe
avvenire prima che esso  venga passato al client (IE o  altro). A me con
firefox funziona, questo metodo.


 d'ambiente locali??
Per le stesse motivazioni di prima, direi di no, ma tentar non nuoce: 
prova a cercare su google "php access environment variable", io 
purtroppo oggi non ho tempo di cercare...
-- 
Jax

 Da lě non si vede l'utente, solo il browser.
sě anche la piattaforma...
io pensavo che volesse sapere se era windows o linux..
avevo capito male ops :(

 Marco
prova a fere un file php con dentro questo:
<?php
echo phpinfo();
?>
vedrai che esce anche il nome dell'utente che è collegato al pc
poi vedi tu come meglio usarlo
ciao
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ciao
anche se a dire il vero non ho capito come interrogarlo... ma se esce
nell' infophp un modo ci sarà pure no....
qualcuno più esperto di me potrà magari darti qualche dritta...


 qualcuno più esperto di me potrà magari darti qualche dritta...
scusa, io ho provato e non mi esce affatto il mio nome utente.
Puoi fare uno screenshot che andiamo a fondo della questione?
-- 
Jax

Jax ha scritto:


beh non posso mandarti i dati del mio phpinfo, ovviamente
io l'ho lanciato solo in localhost a dire il vero ma nella sezione
"Environment" c'è una voce che si chiama "username" e lì è visualizzato il
mio nome utente di accesso a window
io uso Apache/1.3.33 (Win32) PHP/4.3.10


 mio nome utente di accesso a window
Infatti ci trovi le informazioni del server, non certo del client che si 
collega al server!
	Francesco

 mio nome utente di accesso a window
Io non vedo quella voce. Sarà la versione di php? Io uso ancora php4
Comunque, come ti hanno detto, al 99% quell'informazione riguarda il 
server, non il client.
-- 
Jax

Marco Tiraferri ha scritto:

Qui 
http://www.developpez.net/forums/archive/index.php/t-75709.html
 
usano una soluzione "ibrida", in pratica l'utente di default apre una 
pagina asp con il codice che ho scritto sotto: questa reperisce il nome 
utente e lo passa tramite GET alla pagina php principale (dove verrà 
salvata in una sessione o cookie o quant'altro).
<%logon = (request.Servervariables("LOGON_USER"))%>
<% response.redirect("index.php?name=" & (logon)) %>
Volendo, potresti settare il documento principale sul server come la 
pagina .asp, in questo modo se entrano in www.pippo.xx/ puntano 
direttamente all'asp in modo trasparente. Ricordati però in seguito nel 
codice di far sempre riferimento esplicito a /index.php e mai a /.
-- 
Jax

 
Vedo solo adesso il tuo messaggio...
In effetti è la prima cosa che ho pensato... ma nel mio phpinfo non ho 
trovato il nome utente sarà la versione? (apache 2.0.51 php 4.3.8)
Grazie comunque!

 
In effetti questa è una buona soluzione!! Infatti al momento sono in 
transizione IIS+ASP -> APACHE+PHP e la maggioranza delle pagine è ASP 
compresa la home page che naturalmente ha già il riconoscimento dell'utente.
Ma se non scopro nulla di nuovo dovrò per sempre mantenere acceso 
iis+asp!!?? :-(