# Java > Dveloppement Web en Java > Servlets/JSP >  la mthode request.getRemoteUser()

## Bassas

Bonjour, je ne comprends pas cette mthode. A quel moment l'objet (ou quoique ce soit) retourn par cette mthode a-t-il prit sa valeur? Par qui et comment?

Si c'est moi qui suis sens y affecter une valeur dans disons la servlet d'authentification,  quoi bon cette mthode?

----------


## OButterlin

Cette mthode renvoie l'utilisateur (Windows, Linux, ...) en cours sur la machine "client".

----------


## Bassas

ah donc pas l'utilisateur du site?? fallait le dire... lol

Dans ce cas, pourquoi lorsque je teste chez moi ca me renvoie null? Je suis bien authentifi sur mon windows non?

Et par dessus tout, dans quel cas ca nous intresserait la session ouverte sur l'OS du client?  ::lol::

----------


## OButterlin

Pourquoi faire ? Et bien, on peut imaginer pas mal de cas o a pourrait tre utile...

On peut imaginer une application web (intra-net ou extra-net) qui utilisera un utilisateur rfrenc pour tablir une connexion  une base de donnes afin de "tracer" les oprations ou d'utiliser les notions de droits du SGBDR.

----------


## Bassas

Poruqoi l'authentification sur le site lui meme ne suffit pas?

----------


## OButterlin

C'est totalement diffrent...
Tu peux utiliser un utilisateur "TOTO" sur ton poste Windows (ou autre) et avoir besoin d'un login "admin" pour une application web en particulier...
Un exemple type serait l'accs  Tomcat Manager... rien  voir avec l'utilisateur du PC...

----------


## Bassas

> C'est totalement diffrent...
> Tu peux utiliser un utilisateur "TOTO" sur ton poste Windows (ou autre) et avoir besoin d'un login "admin" pour une application web en particulier...
> Un exemple type serait l'accs  Tomcat Manager... rien  voir avec l'utilisateur du PC...


Du site tu voulais dire? Si c'est cela je comprends un peu mieux.. Si c'est pas le cas alors je ne comprends rien mais ce n'est pas grave parce que de toute faon il s'avre que cette mthode n'est pas ce dont j'ai besoin.

Moi ce que je veux apprendre c'est comment grer les sessions utlisateur sur un site. Est ce que aprs s'etre assur que les donnes saisies via un formulaire coincident avec une entre dans la BDD (table users) j'affecte le login et le pass en tant qu'attributs  l'objet HttpSession ou comment ca se passe ou juste?

PS: on en discute ici ou j'ouvre un sujet avec un titre plus appropri?

----------


## OButterlin

Comment a se passe... on peut imaginer tant de chose...

Je te suggre d'utiliser l'authentification au niveau du serveur, il faut regarder le paramtrage du web.xml (en particulier la section security-constraint)
Il faudra galement crer un "Realm" sur le serveur mais l, a peut dpendre du serveur. Tu utilises lequel ?

Sinon, il y a la solution basique "hand-made", tu gres a par ton propre formulaire d'authentification, dans la servlet associe tu fais tes contrles et tu stockes une information dans la session.
Ensuite, il faut qu' chaque accs tu vrifies que l'information est en session, dans le cas contraire, tu rediriges vers le loggin.
Une solution consiste  paramtrer un filtre (javax.servlet.Filter) pour faire le contrle, a vite d'avoir  l'implmenter partout...

La solution 1 est bien plus puissante...

----------


## Bassas

J'utilise Tomcat. En ralit je ne suis pas familier avec aucune de ses approches, est ce que tu peux me renvoyer vers un lein qui dtaille tout cela?

----------


## tchize_

http://beuss.developpez.com/tutoriel...on/formulaire/

----------


## Bassas

Merci bien.

----------


## Bassas

Je viens de finir de lire le document et je crois qu'il s'agit d'un mal-entendu. D'abord est ce que ce qui est dcrit dans l'article est bien ce qu'on appelle 'container-managed authenitification'? Ensuite, si on veut simplement grer les comptes utilisateurs sur un site, est ce comme cela qu'on procde?

----------


## tchize_

> est bien ce qu'on appelle 'container-managed authenitification'?


oui




> Ensuite, si on veut simplement grer les comptes utilisateurs sur un site, est ce comme cela qu'on procde?


tout dpend du besoin et du fonctionnement. Tu peux trs bien utiliser a, et faire une interface, dans ton site, qui va se connecter  la mme DB pour ajouter / supprimer des users depuis des pages admin. Si tes role peuvent varient souvent suivant ce que veux l'admin (exemple, pouvoir dire /truc doit maintenant etre accessible au rle "rdacteurs" puis demain rajouter le role "relecteur", puis aprs-demain retirer relecteur et mettre un role "relecteur-niveau2", etc, bref des droits trs dynamique suivant la page, comme on en voit sur des outils comme wordpress)  alors non ce n'est pas ncessairement le plus appropri.

----------


## OButterlin

Une petite prcision sur ce que vient de dire tchize_, tu peux trs bien rendre variable les rles d'un utilisateur avec l'authentification serveur, ce qui ne peut pas tre fait dynamiquement, c'est l'ajout d'un rle.
Bref, si la liste des rles est connue d'avance et fixe et qu'il s'agit juste d'attribuer de manire dynamique ces rles  des utilisateurs, a fonctionnera trs bien, si par contre, tu veux rajouter des rles, a n'ira pas...

----------


## tchize_

exactement. Et ne pas oublier qu'on peux aussi jouer avec des systme hybride. Grer l'authentification et le gros des droits sur le serveur et rajouter des checks dynamiques dans ton code pour certaines choses  :;):

----------

