none
Problème session et cookie ASP.Net 3.5 RRS feed

  • Discussion générale

  • Bonjour,

    Dans le cadre d'un site web ASP.Net 3.5, j'ai des soucis de perte de session. J'utilise l'authentification windows

    Le site fonctionne bien sous Windows Server 2005, IIS v6. Maintenant il est déployé sur un Windows Server 2008 r2 avec IIS 7.5 et là j'ai le problème suivant:

    Lorsque j'ouvre le site dans un browser, puis je clique sur un lien qui est censé m'ouvrir une page dans nouvelle fenêtre, tout fonctionne, ma session est bien active. Puis au bout d'une minute, si je rouvre la même page, ma session ne fonctionne plus. J'ai regardé le contenu de Fiddler qui me montre que pourtant la requête est bien la même. Le cookie est bien envoyé.

    Je me dis que peut-être le cookie a expiré trop vite, pourtant j'ai augmenté les timeout dans IIS et dans le Web.Config.

    Est-ce quelqu'un a déjà été confronté à ce problème? J'ai trouvé de nombreuses pistes sur le web mais aucune n'a été concluante.

    Merci


    jeudi 12 mai 2011 15:47

Toutes les réponses

  • Bonjour,

    Les pistes écartées sont ? (pour éviter de redonner les mêmes).

    Je pense que cela pourrait être un problème lié à la configuration de l'application pool en "web garden" qui est peut-être la config par défaut en IIS 7.5 (je suis encore en IIS6).

    Voir http://viisual.net/Configuration/IIS6WebGardening.htm et passer la valeur à 1 si ce n'est pas déjà le cas pour voir.

    Sinon dans Session_Start, Application_Start je stockerai la date/heure dans une variable de session/application ce qui me permettrait de voir de visu si l'on démarre bien une nouvelle session et/ou application.


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".
    jeudi 12 mai 2011 16:55
    Modérateur
  • Bonjour,

    Merci pour votre réponse. Les pistes écartés incluaient celle-ci, mais je préférais que l'on me repropose des choses des fois que je sois passé à côté de quelque chose. Il y avait aussi de ne pas laisser les timeout par défaut, de changer la machine key...

    J'ai changé le nombre maximum de worker process pour l'app pool de mon site à 1 mais cela n'a pas réglé le problème (il était déjà à 1 en fait).

    vendredi 13 mai 2011 08:27
  • Donc je ferais une page comme indiqué pour déjà constater de visu si oui ou non on passe dans les évènements Session_Start, Application_Start.

    Eventuellement peut-être donner plus de détails sur "ma session ne fonctionne plus" (on ouvre pas la page dans une nouvelle instance d'une navigateur ?) des fois que le problème ne soit pas tout à fait celui là...


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".
    vendredi 13 mai 2011 09:54
    Modérateur
  • Désolé si je n'étais pas assez précis. Je vais essayer d'être plus clair.

    Lorsque j'ouvre la nouvelle fenêtre donc, ma référence vers mon utilisateur courant est nul et le thread courant n'est pas authentifié. Je pensais à un problème de Session mais effectivement la session semble bien fonctionner puisque les événements que vous m'avez demandé de surveiller ne sont pas redéclenchés et le contenu de test que j'ai ajouté est toujours présent (la date de création de session).

    Le problème semble en effet ailleurs... Mreci de l'aide que vous pourrez m'apporter.

    vendredi 13 mai 2011 12:16
  • Quel est exactement cette référence vers l'utilisateur courant ? Personnellement je commencerais d'abord plutôt par utiliser http://msdn.microsoft.com/en-us/library/system.web.httpcontext.user.aspx pour examiner les différentes valeurs de User (IsAuthenticated par exemple).

    Quel est le mode d'authentification de ce site ? Elle est redemandée ou la page s'affiche ?

     Si elle s'affiche je dirais que tout simplement qu'elle n'est pas configurée (ou son dossier) pour être soumise à authentification.


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".
    vendredi 13 mai 2011 15:29
    Modérateur
  • Bonjour, Brian,

    Est-ce que vous avez réussi à résoudre votre problème ? Merci pour partager avec nous les résultats, afin que d'autres personnes avec le même problème puissent profiter de cette solution.

     

    Bonne journée,

    Cipri


    Suivez MSDN sur Twitter   Suivez MSDN sur Facebook


    Ciprian DUDUIALA, MSFT  
    •Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.

    mardi 17 mai 2011 06:50
  • Bonjour,

     

    Malheureusement non je n'ai toujours pas résolu mon problème...

    Sinon le mode d'authentification est Windows avec un custom Membership Provider. La page ne s'affiche pas. A noter que lorsque je change mon lien qui possedait l'attribut Target à la valeur "_blank" pour mettre la valeur "parent" par exemple, je n'ai plus du tout le problème (mais la page s'affiche dans la même fenêtre alors que je voulais une autre fenêtre).

     

    Sinon j'ai trouvé un post qui décrit visiblement le même problème que moi puisque le site fonctionne bien pour moi aussi sur une version plus ancienne de Windows Server.

    http://www.derkeiler.com/Newsgroups/microsoft.public.dotnet.framework.aspnet.security/2008-12/msg00010.html

    Sinon je viens de refaire une série de tests sur ma machine et sur mon serveur et je n'ai plus le problème sur ma machine. Par contre je l'ai toujours sur le serveur.

     

    Merci pour votre aide

    mercredi 18 mai 2011 11:44