如何确定Web应用程序的确切用户数量?

时间:2018-07-19 13:48:39

标签: authentication

我工作的公司提供了一个基于Web的计算工具,该工具必须按月支付(许可证的固定价格)。

通常,用户访问我们的网站并使用其凭据进行身份验证,然后可以使用该应用程序。显然,当他们取消订阅后,他们将无法使用该工具。

现在,另一家公司打电话给我们,因为他们想为自己的客户提供我们的应用程序。我们已经确定,他们必须为每个客户支付许可费。但是也有一个限制:他们的用户不必登录我们的任何网站(仅在我们客户的网站上)。但是该Web应用程序托管在我们的服务器上,并作为iframe加载。

现在存在一个问题,我们不确定我们的客户是否告诉我们使用我们应用程序的正确人数,因此我们希望以某种方式进行验证。

我的想法之一是:

  • 我们的客户必须为每个想要使用我们的应用程序的用户调用一个API,以提交一些信息,例如该用户的姓名或唯一ID
  • 当用户想要访问我们的应用程序时,会将ID参数附加到iFrame URL

我认为这不是一个很好的解决方案,因为我们的客户端可以为每次访问使用相同的ID,并假装只有一个用户使用该应用程序。通过保存访问的IP地址和ID,在某些情况下可以确定欺诈,因为IP地址不会经常更改。

我们甚至不必知道每月有NUMBER个用户访问哪个应用程序。

我对是否存在难以欺骗的密码解决方案感兴趣。类似于身份验证方法,不需要用户任何交互。

1 个答案:

答案 0 :(得分:0)

你不能。您应该要求合作伙伴为每个用户发行令牌,以便您知道他们来自合作伙伴。 您可以让合作伙伴调用您公开的api来为用户颁发一次性令牌,并指定用户ID和IP。您也可以选择让合作伙伴以数字方式签署这样的登录请求。 如果您按每位用户向合作伙伴收取费用,并且合作伙伴十足,那么他可以要求更少的用户。

您可以对用户进行指纹识别,可以给予长期支持,可以检查IP和所安装的字体等。这些可以使您检测到大多数欺诈行为。

如果您给已声明的userId一个cookie,然后在没有它的情况下再次看到他,则为他分配一个新的cookie,然后在伙伴始终声明相同的id时再次看到第一个cookie,这是非常有力的欺诈指示。

如果我是十足的合作伙伴,我将在地理位置上配对紧密的用户并合并其ID。与使用两个设备的用户看起来没有什么不同。但这仍然限制了欺诈的可能性。每个用户两个设备是合理的。少十个。

找到您信任的业务伙伴。