1

私たちは、ユーザーが投票できるようにする新しいオープンソースツールに取り組んでいます。これにはログインは必要ありません。

ここでの課題は次のとおりです。ユーザーがログインしなくても、特定のマシンからAPIが1日に1回だけ呼び出されるようにするにはどうすればよいでしょうか。

これは簡単になりすますことができると思いますが、おそらく私たちが考えていない解決策があるでしょう。

4

1 に答える 1

1

ユーザーにサイト/アプリへの登録を要求しない場合、完全な証明ソリューションはありません。登録/ログインを要求していないため、IP または Cookie による一意の投票の 2 つのオプションに制限されます。

IPアドレス

投票の IP アドレスをデータ ストアに保存し、次に同じ IP から投票が行われたときにそれを参照することで、簡単に実装できます。ただし、AOL などの多くの ISP は、複数のユーザーに対して (プロキシ経由で) 同じ IP アドレスを使用できます。その結果、投票していない人が投票できないようになります。

クッキー

このアプローチはよりクライアント固有のものになります。つまり、そのマシンから一度投票すると、再度投票することはできなくなります。ただし、ユーザーが Cookie を削除して再度投票できる (または同じマシンで Cookie を持たない別のブラウザーを開く) 可能性があるため、これはさらに堅牢ではありません。

要するに、ユーザーにシステムへの登録と一意性の確立を強制できない場合は、上記のいずれかのソリューションに頼ることができますが、堅牢ではなく、独自の制限があります。

于 2012-11-13T21:08:25.063 に答える