La prévention utilisateur anonyme de la forme submiting de fois dans ASP.NET sans SqlMembershipProvider

StackOverflow https://stackoverflow.com/questions/793175

Question

J'ai une forme simple qui dépotoirs réponses sélectionnées dans un fichier XML. Comment empêcher un utilisateur anonyme de soumettre ce formulaire à plusieurs reprises?

Je ne suis pas à la recherche d'une solution tout à fait l'épreuve des balles, et j'ai une limitation que je ne peux pas utiliser la base de données, et donc pas SqlMembershipProvider.

Est-ce que le travail de vérification certains cookies? Comment faire de ce droit?

Je vous remercie à l'avance.

Mise à jour:. Pour être plus précis, je ne signifie pas seulement une soumission accidentelle de la forme, mais pour empêcher l'utilisateur qui a visité le site il y a une semaine de soumettre ce formulaire à nouveau

Était-ce utile?

La solution

En bref, vous ne pouvez pas tout à fait fiable. Si vous n'êtes pas pris la peine au sujet de la preuve de quelque chose de balle que vous dites que vous pouvez soit

a) Persister un cookie sur la machine client et vérifier les messages il quelqu'un prochaine fois. Il est évident que l'utilisateur peut supprimer les cookies afin de ne pas brillant. b) Vous pouvez stocker l'adresse IP de l'endroit où il a été soumis à partir. Problème est que vous éviterez ainsi que plusieurs utilisateurs derrière la même adresse IP soumettant à savoir proxy, et le même utilisateur peut poster à partir d'endroits différents.

Ni est particulièrement bon et s'il est possible que je vous recommande pour leur demander d'entrer une adresse e-mail au début, stocker le poste non confirmé, e-mail un lien de confirmation sur et seulement faire le fonctionnaire de poste s'il clique dessus . Encore une fois, pas une preuve de balle car il n'empêche pas les gens avec affichage des plusieurs comptes de messagerie, mais il est un peu mieux que les options ci-dessus.

HTH

Autres conseils

Utilisez les variables de session pour garder la trace de ce que fait votre utilisateur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top