Newsgroup: it.comp.java
Titolo: Leggere credenziali windows da java

Ciao, qualcuno sa se c'è un modo da Java per andare a leggere le
credenziali (nome utente) dell'utente attualmente loggato al PC???
Grazie Mille.


Non solo in windows : System.getProperty("
user.name
")
Qui trovi la lista completa delle system properties a disposizione
dello sviluppatore : 
http://www.mindspring.com/~mgrand/java-system-properties.htm
Se non sai cosa sono le System properties approfondisci la cosa (tempo
necessario 10 minuti) perche' potrebbe tornarti utile in futuro.
Ciao


Grazie mille!!!!


Figurati :-)

 10 minuti) perche' potrebbe tornarti utile in futuro. Ciao
Scusa quello sono le credenziali dell'utente che ha lanciato la VM che 
non sempre corrispondono a chi è loggato....


Pero' la domanda è mal posta, non esiste *un* utente loggato, ce ne 
possono essere piu' di uno.
-- 
Andrea Francia
http://www.andreafrancia.it/

 Andrea Franciahttp://
www.andreafrancia.it/
si hai ragione la domanda è malposta, ora cercherò di chiarire:
sto scrivendo un'applicativo web-oriented che gira in una intranet, ho
bisogno, per eseguire unas serie di operazioni, di sapere lo username
di chi sta utilizzando l'applicativo in un dato momento senza dover
implementare un meccanismo di autenticazione, ma sfruttando quello di
windows.
ad esempio:
se eseguo il login in windows con nomeutente "pincopallino", ho
bisogno di un modo per andare a leggere tale nomeutente.
Qualcuno sa aiutarmi?
Alessandro


Uhm, non è ancora chiarissimo.
Facciamo un caso d'uso.
1. C'e' una applicazione web che gira sul computer X.
2. Un utente fa login sul computer Y,
3. L'utente apre il browser
4. L'utente scrive nella barra degli indirizzi l'indirizzo 
dell'applicazione web.
5. L'applicazione web riceve in qualche modo lo username dell'utente
Intendi questo?
Se intendi questo non credo che si possa fare.
L'utente dovrebbe fare login nell'applicazione web.
Oppure puoi mettere una textbox dove l'utente scrive il suo nome.
-- 
Andrea Francia
alias rm='trash' #use trash command instead of removing
rm -Rfv file     #put the file in the KDE trashcan
http://www.andreafrancia.it/trash

 >>>>
http://www.mindspring.com/~mgrand/java-system-properties.htmSenon
 sai

esatto intendo proprio questo, intercettare in qualche modo le
credenziali con cui si è fatto login al sistema.
A.

 credenziali con cui si è fatto login al sistema.
Il protocollo HTTP non prevede che tu il client HTTP mandi questa 
informazione. Devi risolvere in un altro modo.
Ho chiedi l'utente l'informazione facendogli riempire un campo username 
o la catturi con qualche diavoleria javascript (ammesso che esista).


On 30 Apr, 22:09, Andrea Francia <andrea.fran...@gmx.it.invalid>
wrote:

Grazie per l'aiuto, finalmente ho risolto.
Ho utilizzato l'autenticazione NTLM, grazie alla quale riesco a farmi
restituire da Internet Explorer username dell'utete loggato in
windows, dominio di appartenenza e nome della macchina.
Per ogni delucidazione contattatemi pure.
Alessandro

 Per ogni delucidazione contattatemi pure.
Interessante, io non pensavo che fosse possibile una cosa del genere.
Puoi postare qualche dettaglio in piu'?
Hai dovuto mettere qualche tag proprietario di Microsoft nell'HTML del 
form o si tratta di un'informazione che Internet Explorer da via cosě 
gratuitamente?


 Andrea Franciahttp://
www.andreafrancia.it/
NTLM è un protocollo di autenticazione microsoft, quindi è un
protocollo proprietario, ho notato che adesso la intranet che ho
sviluppato non funziona più con firefox ma solo con IE.
Funziona tramite L'Active directory, in pratica il client fa una serie
di richieste al server, il quale risponde convalidando queste
informazioni.
Ulteriori informazioni le puoi reperire qui 
http://en.wikipedia.org/wiki/NTLM
.
Se vuoi il codice scrivimi in privato, sarò ben felice di aiutarti.
Alessandro

 gratuitamente?
è un aknownledge che avviene a livello di browser.
in pratica: se la macchina è autenticata nel dominio, il browser (ie
ma anche firefox) invia un token di identificazione e il webserver (se
supporta ntlm) riautentica l'utente in base a quel token.
l'applicazione si ritrova in sostanza come se fosse autenticata in
modo basic.


Ok, grazie, quindi la macchina che dove gira il server web deve ospitare 
un server di dominio SMB.
Quindi non è IE che va a spifferare a tutti il tuo account, lo dice solo 
al web server (che supporta NTLM) e gira sullo stesso computer dove c'e' 
il server di dominio.
