web-dev-qa-db-ja.com

ユーザーを私のウェブサイトから一時停止して、2番目のアカウントを作成できないようにするにはどうすればよいですか?

私はプログラマーではなく、アウトソーシングの人です。私のWebサイトはショッピングWebサイトです(eBayを考えてください)。ユーザーが利用規約に違反した場合に備えて、私のウェブサイトにはユーザーの一時停止機能が必要になります。問題は、2番目のアカウントを作成するユーザーを検出することです。ここに私が考えた方法があります:

  • IPアドレス追跡
  • ユーザー情報(メールアドレス、または登録後2回目に繰り返される、一時停止後の情報)
  • セッションID Cookieは、ログイン後にユーザーを識別する方法でもあります

これ以上創造的な提案はありますか?それらの悪意のあるユーザー(詐欺、スパマー)が戻ってくるのを防ぐことを100%不可能にすることは可能ですか?

9
ahmed amro

複数の登録を防ぐ方法はありません。

提案する2つの提案があります

  1. 手数料を請求するなどして、複数の登録を望ましくないものにします。

  2. IDの問題を他の誰かにアウトソーシングします。たとえば、自分のロールバックではなくFacebookまたはGoogleログインを使用します。

8
ddyer

いいえ-ほとんどのユーザーが大規模なISPからアクセスしているため、IPは常に固定されているわけではありません-ユーザーに与えられた名前は固定されていません

セキュリティは白黒の問題ではありません-あまりにも多くの人がそれを理解していないように見えますが-それはそれを倒すためのコストを報酬の価値がないようにする問題です

あなたが説明している一般的なシナリオでは、captchaが役立つかもしれません-ばかげたものにとってはそれを打ち負かします-より洗練されたもののために、彼らは少なくともスパマーにとってマシンサイクルを無駄にしたくないかもしれません

メールは役に立たない-私はナイスガイであり、メールアカウントの数が多すぎるため、最近は簡単に取得できます

要約して、白黒のソリューションを探すのをやめる-代わりに、正当なユーザーへのコストは許容できるが、セーフガードを無効にしている誰かのために与えられた報酬に対してコストが許容できないソリューションを探す

スタックオーバーフローの世界からページを取得します。評判はアカウントにバインドできるものです。少なくとも、ユーザーを「スコアリング」する方法があります。

6
Mark Mullin

IDの証明を増やすことで、複数登録を防ぐことができます( OMB M-04-04 を参照)。もちろん、そうすることで、正規の顧客にとって登録ははるかに困難になります。したがって、複数登録を防止することはできますが、おそらくしたくないでしょう。 (注意してください、私はあなたの身元証明をアップグレードすることを真剣に提案していません。身元証明の増加はあなたが尋ねた特定の質問に答えますが、それはあなたの問題に対する実用的な解決策ではないと思います)。

あなたの本当の課題は、詐欺的なユーザーを思いとどまらせながら、正当なユーザーには比較的透過的な登録システムを設計することだと思います。もし私があなたの立場にいるなら、おそらくあなたはいくつかの評判を federated identity でアカウントにバインドするという@Mark Mullinの提案でしょう。フェデレーションIDは、ユーザーを登録しないことを意味します。第三者が生成した資格情報の使用を許可します。たとえば、Googleの認証情報を使用してStack Exchangeにログインします。フェデレーションIDの「ハウツー」は、Stack Exchangeの回答で適切だと考えるよりも少し複雑ですが、 Googleの証明書利用者サイト を参照することをお勧めします。主な実装の2つは OpenIDShibboleth であり、- Kingsley Idehen が「ハウツー」にコードサンプルを含めて広範囲に投稿していることを知っています(最後のリンクは彼のG +プロフィールへのリンクです。私には彼に連絡するより良い方法はありません)。

評判を作成してユーザーのアカウントにリンクするというMullin氏の提案には多くのメリットがあると思います。ユーザーが参加したトランザクションの数、またはトランザクションの他の参加者からのフィードバックに基づいて、トランザクションの合計値(またはeBayなど)に基づいてレピュテーションスコアを割り当てます。

そして、他の誰かのコメントを反映させるために、いいえ、ウェブサイトを100%安全にすることは不可能です。これがセキュリティの基本原則です。期待できる最善の方法は、リスクを許容可能なレベルまで軽減することです。金銭取引を伴うWebサイトのセキュリティ設計を実際に行っている場合は、セキュリティアーキテクトを取得することをお勧めします。セキュリティは複雑です。セキュリティアーキテクトは、Google検索では取得できない基本的な知識をたくさん持っている必要があります。セキュリティアーキテクトがいない状態で金融取引を行っている場合、会社はかなりのリスクにさらされています。あなたがどこにいるかによって、お金を失うリスク、お金や個人データを失った顧客に訴えられるリスク、そして潜在的には刑事責任。これは、1か月のインターネット調査で学べるものではありません。

3
Mark C. Wallace

正当なユーザー登録を妨害することなく、ユーザーが特定の回数を超えて再登録することを非常に困難にする方法があります。ただお金に従ってください...

ショッピングWebサイトとして、ユーザーは何らかの支払いシステムを使用している必要があります。彼らがあなたのシステムに彼らの財務情報を入れているなら(Paypalのようなサードパーティーを使わないで)、あなたは彼らのクレジット/デビット/銀行口座情報を禁止することができます。ユーザー登録プロセスの一部として、財務情報を必須にする必要がありますが、Appleはアプリストアで同じことを行うため、正当なユーザーにとって不当に負担がかかると認識されることはほとんどありません。 。

現在、悪意のあるユーザーは、自分が持っているすべての支払いアカウントに対して一度だけ登録できます。カードや口座を開いたり閉じたりして口座番号を絶えず変更し始めると、金融機関や規制当局から不要な注目を集めるリスクがあります。

1
RajanPB