2011-11-15 7 views
1

私は現在、小さなウェブサイトで作業しており、私の顧客はプライバシーの問題に非常に関心があります。電子メールの確認に関するプライバシー問題

私は一般的な電子メール認証を使用してユーザー登録を実装しています。登録する場合は、電子メールアドレスを提供する必要があり、検証リンクを含む電子メールがこのアドレスに送信されます。

登録フォームでは、通常のフォーム検証を行っています。ユーザー名(自由に選択できる)が既に使用されている場合は、そうするメッセージが表示されます。私の最初の考えは、電子メールアドレスについても同じことをすることでした。これは、システム全体で一意でなければならないためです。

しかし、状況によっては、サイトに登録されている人の情報であっても、プライベートである場合もあります。しかし、他の人が登録されているかどうかを知りたいと思っていて、他の人の電子メールを知っていれば、この既知のアドレスを持つ新しいユーザーを登録しようとするだけでエラーメッセージが表示されます。すでに登録。

私はこれを解決する方法を1つ考えています(私は自己回答として投稿します)が、1)この解決策には他の欠陥があり、2) 。

ありがとうございました。

+0

プライバシーが重要な場合は、電子メールの確認が必要かつ望ましい理由は何ですか? –

+0

基本的に、すべての人が一度だけ登録されるようにします。もちろん、複数の電子メールアドレスを取得することは難しくありませんが、少なくとも数百のアカウントを簡単に作成することはできません。また、電子メールごとにユーザーに連絡したいと考えています。 – MartinStettner

答えて

3

これは私が考えた解決策です。問題が見つかった場合はコメントしてください:)

新しいユーザーが既存のメールアドレスを使用する場合は、リンク付きのメールが指定されたアドレスに送信されたという「正常な」成功メッセージが表示されます。

このアドレスに新しいユーザーを登録しようとしたという電子メールが送信され、このアドレスは既に使用されており、一度しか使用できません(基本的に、検証エラーメッセージは電子メールアドレスに送信され、Webブラウザには送信されません)。

+3

これはおそらくあなたの周りの唯一の方法です - 人間の検証ロジックを配置することを検討する価値もあります。 image verifictaionを使用して、ボットが登録要求でシステムを氾濫させないようにします。 – ChrisBD

+2

パスワードリセットメカニズムでは、同じロジックを使用するようにしてください。 - Webフォームで常に成功(「あなたの電子メールをチェック」)してから、成功または失敗を説明するメッセージを送信してください(「誰かがあなたのアカウントのパスワードをリセットあなたにはそのメールアドレスがありません。 – npdoty

3

あなたはそれを一切扱わないことを選択しましたか?

多くのIDプロバイダがあります。スタックExchangeファミリのサイトと同様の方法を使用すると、お客様のケースに適している可能性があります。

IDプロバイダを外部プロバイダに移行するのは簡単で、パスワード、電子メール、ユーザーの一意性などを処理するよりも簡単に安全です。

さらに、ほとんどのIDプロバイダは、登録ユーザーのメールアドレスにアクセスすることができるため、懸念されることはありません。

+0

それは素晴らしい考えです。私はこのオプションを念頭に置いています! – MartinStettner

関連する問題