私はシステムを作成しています。ユーザーが別のメールアドレスを使用したり、IP を変更したりしても、ユーザーが複数回登録できないようにしようとしています。どのような戦略を使用すればよいですか? クッキーでできますか?
3 に答える
ユーザーが複数回登録するのを防ぐためにできることは何もありません。
ユーザーは以下を持っている可能性があります:
動的IP
クッキーを消す
クローンMACアドレス
別のメールアカウントを使用する
正気のユーザーは、生体認証のような追加のハードウェアを購入しません
ユーザーは複数のクレジットカードと住所を持つことができます
最良のケースは、TOS / AUPで複数のアカウントの使用を禁止し、それらのアカウントを削除/禁止する場合です。
Cookieベースのシステムを回避しようとしているユーザーは、Cookieをクリアするだけです(または、そもそもCookieを受け入れません)。実際の例ニューヨークタイムズは、Cookieを設定することにより、月に20件の記事に制限しようとしました。これにより、20を超える記事を読むことができなくなった人もいましたが、多くの人は、Cookieを削除して、さらに20の記事を取得できる(または別のブラウザを使用できる)と考えました。
また、IPアドレスは使用できません。ユーザーは新しいIPアドレスを頻繁に取得することがあります。また、単一のIPアドレスが多くの異なるユーザーを表す場合もあります(プロキシサーバーの背後にいる場合)。
要件を満たすために最も近い方法は、デバイスのフィンガープリントを使用することです。デバイスフィンガープリントは、さまざまな要素(IPアドレス、ユーザーエージェント、ブラウザーにインストールされているフォント、ブラウザーにインストールされているプラグインなど)を考慮して機能します。チェックアウト
それがどのように機能するかについてのアイデアを得るために。
その技術を提供している会社がいくつかあります。現在のリストを取得するためのGoogleの「デバイスフィンガープリント」。また、CookieやIPだけでわかるよりも、複数のアカウントを持っている可能性のあるユーザーを確実に把握することが要件である場合は、Panopticlickで表示される内容に基づいて独自の基本的なデバイスのフィンガープリントを作成することも非常に難しくありません。商用製品は、「堅実なアイデア」から「非常に堅実なアイデア」へと移行するために、かなりのエンジニアリング努力を費やしました。
ユーザーの登録を、コピーまたは偽造できないものに結び付ける必要があります。ここにいくつかのアイデアがあります:
一部の企業は、携帯電話番号でこれを行っています。ほとんどの人は 1 台の電話を持っていますが、2 台や 3 台はないという理論に基づいています。または、少なくとも、新しい番号を自明に取得することは困難です。そのため、他のユーザーに電話番号を教えてもらい、コードを含む SMS メッセージを送信してもらい、その電話番号をアカウントに永久にバインドさせます。
プロセッサ ID またはイーサネット アドレスを使用してみることができます。ID (通常はアセンブリ言語) を読み取り、結果を取得するソフトウェアが必要です。もちろん、人々はあなたのソフトウェアをハッキングしたり、複数のマシンから登録したりすることができますが、場合によってはこれでうまくいくこともあります。
人々にアカウントの支払いを強制します。人々は通常、それらの多くを取得したくありません.
あきらめる。ユーザーが複数回登録しても問題ないようにシステムを設計します。
幸運を。