如何检查它是否与ASP.NET中的用户相同?

时间:2013-05-08 13:21:37

标签: asp.net authentication web-applications registration

此问题与ASP.NET无关,但通常与更多Web应用程序无关。

我正在构建一个Web应用程序,其中我正在注册用户。截至目前,我正在使用非常基本的凭据,如用户的名字,姓氏等。在这个网站上,我正在为刚刚注册的用户免费提供一些信息,以便用户发现我的网站是真实的,并且它不是假的网站。之后,为了获得更多信息,用户必须付费。

我的网站提供的信息将在一段时间后过时。因此,当新用户注册时,他/她将获得更新的新信息;但旧用户必须付费才能获得相同的新信息。

我的问题是,一旦信息过时,同一个人就可以使用不同的凭证集重新注册并获取新信息。我想避免这种情况发生。

所以我的问题是:我应该向用户请求或从用户提取哪些信息来检查同一用户是否没有重新注册?或任何其他方式使其成为可能。

我正在考虑获取该人注册的机器的IP地址并使用它来检查。但是用户可以使用不同的机器重新注册。

我完全迷失在这里而没有得到解决方案。我甚至在互联网上查过但找不到答案。

如果您需要我方提供更多信息,请与我们联系。

6 个答案:

答案 0 :(得分:7)

您将找到阻止用户多次注册的技术方法。他们可以简单地使用其他设备,IP,另一个电子邮件帐户和不同的凭据。

您可以做的是让他们向您发送虚假的“离线”信息,例如信用卡号或身份证的照片。一些用户仍然可以通过这种方式多次注册,但可能不是无限期。但是,如果不愿意为测试帐户提供此类信息,您将失去许多可能的客户,因此这可能不是您想要的解决方案。

我的建议是以下两种之一:

  • 限制您向免费用户提供的信息/服务,这样即使他们再次注册,他们也会在付款时获得一些收益。
  • 尝试将他们绑定到他们的帐户,如果他们扔掉它们会丢失一些东西。这可以例如是为活动(真实的或虚拟的)提供用户奖励或者基于他们的历史增加他们的体验。以SO为例:如果您再次注册,您将失去所有声誉。如果这是值得的新内容,用户会三思而后行。

答案 1 :(得分:2)

阅读完上述所有内容后,我认为一个好的解决方案可能就是让用户通过脸书或脸谱确认自己。很少有人会有第二个帐户。

答案 2 :(得分:1)

我认为你不能把这样的用户放在那里因为每件事都可以重复

在某些方面,用户必须拥有支付模式或身份详细信息,如护照,或者是Windows应用程序,您可以使用手指扫描仪,它绝对是独一无二的。

答案 3 :(得分:1)

您可以使用Cookie执行此操作(有限制)。在用户设备上设置cookie将允许您确定访问者是谁以及他们已经注册了。

限制是可以删除或阻止cookie,并且仅对该特定用户代理有效 - 用户可以在同一设备上使用其他设备或不同的浏览器。很多人并不真正了解cookie以及如何删除它们。

通过将此技术与提供有效电子邮件地址的要求联系在一起,您可以为某人注册不止一次而烦恼,因为他们必须创建新的电子邮件帐户然后删除其Cookie。

这是否会阻止足够的人取决于你的网站和你的要求 - 如果你要钱,那么这种技术还不够好。如果你只是想阻止多账户的做法,那就足够了。

答案 4 :(得分:1)

你唯一的出路是让现有用户获得“礼物”吗?或增值以维持一个帐户。如果您可以向订阅者确定有价值的项目,并提供“给予”他们的帐户“获得”一个或多个状态,那么您将获得一些控制权。以stackoverflow.com为例,我不需要第二个帐户。

答案 5 :(得分:1)

通过facebook或linkedin识别是一个不错的选择,但是如果您提供此类服务。这对用户非常有益,因此他们不介意在Facebook上创建多个帐户或链接。 所以我认为是为每个用户设置一些奖励类型的东西,并在奖励增加时增加服务。因为他们善于奖励并且能够使用多种服务,这增加了他们不会创造另一种服务的可能性帐户。