javascript - 第三方账号登录,没有验证码,后台如何防止被恶意POST请求刷账号
黄舟
黄舟 2017-04-10 15:48:20
0
3
297
  • 背景和原理:

从新浪微博等第三方平台使用OAUTH2.0快速登录时,授权成功后前台可以获取到用户在第三方平台的唯一ID,然后向后台POST这个ID和其他信息,后台就根据这个ID生成一个新的账号。

  • 问题:

这个ID的真实性我们后台是无法验证的,有什么比较好的方法可以防止有人频繁伪造POST请求来注册大量账号呢。

  • 限定条件:

正常注册时,当然是用注册码来防止机器注册,但是第三方账号登录,不能让用户输入验证码

知道这个问题其实不可能完全解决,无论如何机器都可以模拟前端的行为,除非代码不可见,黑客们又猜不出来方法,只能尽量用比较简单的方法增加他们的麻烦,实在解决不了就只能限制每个IP每天的注册次数了

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

répondre à tous(3)
大家讲道理

oauth登录成功后把access_token也传给服务器……,用access_token调用一下获取用户信息的接口验证access_token是否有效就行。

刘奇

这个简单,只需要判断下获取到的openid的request的url是不是来自官方就好,另外通过post获取这个第三方登录逻辑应该有更好的方式实现

迷茫

同一个第三方ID只能生成一个账号就好。。。。

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!