2009-04-21 7 views
1

J'ai une application Web utilisant l'authentification par formulaires sans cookie. Chaque jour, mon journal des événements contient une tonne de codes d'erreur 4005 (l'authentification par formulaire a échoué pour la requête). Je crois que cela se produit parce que les utilisateurs sont des pages de bookmarking pendant qu'ils sont connectés ainsi quand ils reviennent le billet de formes dans l'url a expiré, au moins c'est le seul scénario que je peux déclencher dans le test.L'authentification par formulaires a échoué pour la demande

Ma question est-il possible de désactiver la journalisation pour ce code 4005? son remplir mon journal des événements

Répondre

0

Pas une réponse à votre question, et je ne suis même pas familier avec ASP. Mais si, comme PHPSESSID et jsessionid par exemple, ce "ticket de formulaire dans l'url" est un identifiant de session ajouté à l'URL anonyme visiteurs, alors les moteurs de recherche peuvent-ils aussi provoquer cette erreur? Et si oui: cela ne brise-t-il pas vos résultats de recherche?

+0

Non, car le moteur de recherche ne se connecte jamais –

+0

Donc (contrairement à PHPSESSID et jsessionid) ce "ticket de formulaire dans l'url" est uniquement utilisé pour les visiteurs qui se sont connectés, pas pour les utilisateurs anonymes? S'il est également utilisé pour les utilisateurs anonymes, le moteur de recherche verra également ces URL (bien qu'elles puissent être assez intelligentes pour les supprimer de l'URL). En guise de remarque: Safari 4 va prendre des aperçus instantanés des pages Web, et les mettre à jour de temps en temps. Cela pourrait donner le même résultat. – Arjan

0

Vous pouvez gérer l'erreur si elle ne figure pas dans le journal

'in global.asax 
Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs) 
    ' Code that runs when an unhandled error occurs 
    Dim lastError As Exception = Server.GetLastError() 
    ' Must be a better way, just can remember how, you will get the idea. 
    If lastError.Message.Contains("Forms authentication failed for the request") Then 
     'do nothing 
     Server.ClearError()    
    End If 
End Sub 
0

Si vous pouvez utiliser des cookies, sa solution beaucoup mieux que le mode cookieless parce que vos utilisateurs auront à utiliser des signets, qu'ils » d sûrement s'attendre à pouvoir faire, et votre journal des erreurs ne sera pas rempli d'erreurs. Il est également moins vulnérable au détournement de session.

Questions connexes