2009-09-15 82 views
1

Cette question a probablement été posée avant, mais il semble que je ne puisse pas formuler correctement ma recherche pour trouver la réponse.asp.net autorisation using url

Normalement, lorsque vous vous inscrivez pour avoir accès à un forum sur Internet, un courriel d'autorisation vous est envoyé et vous pouvez cliquer sur un lien qui vous mène à une page qui effectue l'autorisation.

Ce que je veux est d'envoyer un courrier à un utilisateur déjà créé (pas encore connecté), et laissez-les accepter une proposition en cliquant sur un lien dans le courrier. Le lien du cours pointe vers une page qui exécute les opérations de la base de données et montre une sorte de résultat. Quelles techniques et/ou itinéraire devrais-je suivre pour mettre en œuvre cette technique? Et puisque c'est lié à la sécurité, que dois-je faire attention?

Cordialement, Casper

+0

Le dernier paragraphe décrit ma/mes question (s). – Chau

Répondre

0

Lorsque vous envoyez l'e-mail, une grande chaîne générez aléatoire et le stocker dans une table avec leur nom d'utilisateur et une indication de ce que le lien va faire.

Puis envoyez-leur l'e-mail avec un lien vers DoSomething.aspx?id=long_string_here.

Ecrivez DoSomething.aspx afin qu'il recherche la longue chaîne et présente à l'utilisateur une confirmation de ce qu'ils vont faire et un bouton pour le faire. Aucune connexion requise. Vous pouvez même laisser l'utilisateur connecté, si vous le souhaitez.

Une fois l'action terminée, ou tous les X jours, supprimez la chaîne de la table.

préoccupations:

  1. personnes Bad peuvent essayer de frapper votre page avec des chaînes aléatoires. Si vos chaînes sont assez longues et assez aléatoires, cela n'aura aucune importance, mais vous pouvez limiter l'accès à la page ou empêcher plus de X demandes provenant d'une adresse IP dans une période donnée.
  2. Les vérificateurs de spam agressifs peuvent suivre le lien depuis le corps de l'e-mail. Assurez-vous qu'aucune opération n'est effectuée simplement en accédant à la page; l'utilisateur doit cliquer sur un bouton ou provoquer un POST.
+0

Hey, ça ressemble exactement à ce que je cherche. Je vais certainement y plonger - Merci! – Chau