2016-12-09 4 views
0

通常、ウェブサイト上のアカウントにサインアップしたり、Craigslistに何かを投稿すると、ウェブサイトからメールが送信され、メールのリンクをクリックするまでアカウントは有効になりません。確認メールの裏には何が起こっていますか?

私はこれがあなたが人であることを確認し、ロボットがサイトをスパムするのを防ぐために行われていることを知っていますが、サーバー側で何が起こっているのか分かりません。

サイトで情報を一時データベースに保存していますか?あなたが秘密裏にあなたに送る電子メールリンクには、アカウントを開始するために必要なすべての情報が含まれていますか?

これを行う方法が異なる場合、賛否両論がある場合は、非常に興味がありますか?

答えて

1

サーバーは、ユーザー情報を保存し、擬似ランダム文字列(通常は32,64または256バイトのトークン)を生成します。

電子メールでは、あなたとアンカーとをクリックしたときに、そのトークンを回復してアカウントをアクティブにします。アンカー+のparam GET使用

例:idがあなたの中で与えられたので、 '擬似ランダム'、任意の基準について

http://example.com?token=acbd18db4cc2f85cedef654fccc4a4d8

md5('foo') =>

acbd18db4cc2f85cedef654fccc4a4d8は、提供されていますデータベースを、いくつかのランダム暗号ユーティリティに変換します。

+0

これは意味があります。だから誰かがアカウントにサインアップしたが、電子メールのリンクをクリックしたことがないとどうなりますか? – Russ

+1

リンクをクリックすると、最終的にユーザーアカウントのステータスが更新されます。それは「インプロセス」から「アクティブ」に移行する可能性があります。ユーザーがアクティブであれば、データベースおよびそのユーザーインターフェイスのそのユーザーの以降のクエリはすべて処理されます。クリックしないと、使用は「インプロセス」状態になり、残りの機能は使用できません – Ramzy

0

私はあなたが確認されていない新しいユーザーのための一意の文字列を含むと思うので、リンクを開くと、サーバーはどのユーザーが電子メールを確認するかを選択できます。

関連する問題