IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Problème de session asp.net


Sujet :

ASP.NET

  1. #1
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 31
    Par défaut Problème de session asp.net
    Bonjour,

    J'ai sur mon site un répertoire protégé, et il faut être identifié pour accéder aux pages de ce répertoire.

    J'utilise une authentification par formulaire, et la méthode RedirectFromLoginPage(), avec le mode utilisant lescookies.

    Aucun problème pour la première authentification.

    Pour se déconnecter, j'utilise la méthode Session.Abandon();

    La session est bien abandonnée, l'évènement Session_End() est bien exécuté, mais je peux encore accéder aux pages protégées, alors qu'il devrait redemander au client son login/mot de passe.

    Comment faire pour que mon site redemande au client de s'identifier ?

    Merci pour votre aide.

    Ishida

  2. #2
    Membre éclairé Avatar de Ishizaki
    Inscrit en
    Avril 2006
    Messages
    262
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 262
    Par défaut
    T'as essayé Session["MaSession"] = null ?

    Ou un Session.RemoveAll() ?

  3. #3
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 31
    Par défaut
    Oui, cela ne fonctionne pas.

    Sur mdsn, il est bien indiqué d'utiliser Session.Abandon(), mais bien que cela "vide" la session, cela n'empèche pas le client de pouvoir encore accéder aux pages sécurisées!

    Une autre idée ?

  4. #4
    Expert confirmé

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Par défaut
    je suis pas un expert la-dessus, mais vu que ton authentification est basee sur des cookies, ne faut-il pas aussi tuer le cookie ???


    enfin, je dis ca comme ca, c'est probablement pas ca, mais sait-on jamais...

    Mon Blog

    The Cake is still a lie !!!



    Vous voulez contribuer à la rubrique .NET ? Contactez-moi par MP.
    Vous voulez rédiger des articles pour la rubrique .NET ? Voici la procédure à suivre.

  5. #5
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 31
    Par défaut
    Oui, j'ai pensé à tuer le cookie qui a le nom par défaut (".ASPXANONYMOUS"), mais cela n'a pas solutionné mon problème.

    J'ai dans mon fichier web.config:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    // Autorisation sur le dossier en question
    <authorization>
            <deny users="?" />
          </authorization>
     
    ...
     
    // Gestion des sessions
    <sessionState cookieless="UseCookies"				  
              regenerateExpiredSessionId="false" />
    Et dans mon code de deconnexion:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    // Deconnexion du client
    HttpContext.Current.Response.Cookies[".ASPXANONYMOUS"].Expires = DateTime.Now.AddDays(-1);
    HttpContext.Current.Response.Cookies.Remove(".ASPXANONYMOUS");
    HttpContext.Current.Session.Abandon();

  6. #6
    Membre éclairé Avatar de Ishizaki
    Inscrit en
    Avril 2006
    Messages
    262
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 262
    Par défaut
    Heu, sinon, vider le cache ?

  7. #7
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 31
    Par défaut Solution
    J'ai trouvé la solution:

    Il suffit d'utiliser:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FormsAuthentication.SignOut();
    Merci à Leduke pour cet article.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème session asp.net et DNS
    Par Nixar dans le forum ASP.NET
    Réponses: 2
    Dernier message: 09/10/2008, 14h10
  2. problème session ASP.net - webSiteMap
    Par Ishida dans le forum ASP.NET
    Réponses: 2
    Dernier message: 02/02/2008, 14h19
  3. Réponses: 2
    Dernier message: 14/02/2007, 11h34
  4. problème mode design Asp.net[2.0]
    Par dev-man dans le forum ASP.NET
    Réponses: 6
    Dernier message: 07/02/2007, 14h05
  5. [AJAX] Ajax et ASP.NET
    Par boleduch dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 02/03/2006, 16h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo