Fermer volontairement la session d'un utilisateur

Résolu
eulalienath Messages postés 18 Date d'inscription vendredi 10 novembre 2006 Statut Membre Dernière intervention 9 octobre 2007 - 25 sept. 2007 à 16:29
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 - 2 oct. 2007 à 14:32
Bonjour

Je voudrais savoir comment provoquer un Session_End volontairement voir comment fermer toutes les pages d'un site
donné volontairement pour obliger l'utilisateur a démarrer une nouvelle session ?

Qu'en est il de toutes les variables static ? sont elles réinitialisées ?

Merci

4 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
2 oct. 2007 à 14:32
Bonjour,

Session.Abandon(); suffit  pas besoin de faire un clear puis un removeall ... par contre tant que tu restes sur la meme page tu auras accès à la session, il faut faire un redirect derrière le abandon(). Si le problème persiste regarde avec Fiddler au niveau des cookies si tu vois quelque chose de louche.

<hr />Cyril - MSP - MCPD ASP.net & MCTS SQL - Consultant indépendant
3
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
25 sept. 2007 à 20:53
Bonjour,

Session.Abandon() devrait faire ton bonheur. Les variables static sont global au niveau de l'application pas au niveau du user elles ne seront pas réinitialisé.

<hr />Cyril - MSP - MCPD ASP.net & MCTS SQL
0
eulalienath Messages postés 18 Date d'inscription vendredi 10 novembre 2006 Statut Membre Dernière intervention 9 octobre 2007
1 oct. 2007 à 21:34
Bonsoir

Merci beaucoup..oui les variables static j'y ai pensé..
0
eulalienath Messages postés 18 Date d'inscription vendredi 10 novembre 2006 Statut Membre Dernière intervention 9 octobre 2007
2 oct. 2007 à 12:41
Bonjour

Il me reste un probleme, quand l'utilisateur demande la defconnection via le menu, je le redirige vers la page de login et je fais

HttpContext

.Current.Session.Clear();

HttpContext.Current.Session.RemoveAll();

HttpContext.Current.Session.Abandon();

Je contaste que sur ma page de login je passe 2 fois ?? dans le
void

Session_Start(
object sender,
EventArgs e) de Global.asax

mais pas dans le

void Session_End(
object sender,
EventArgs e) de Global.asax

quand Abandon() est appelé ???

De plus ou en conséquence plutot le HttpContext.Current.Session.SessionID est toujours le même ? hors je me base sur cet id dans mes requetes de bd
Comment forcer cet id à être réinitalisé ?

Note : Je suis en mode debug mais quand même ca devrait changer
0
Rejoignez-nous