比如我上线了一个网站 xxxx.com
然后可以用手机号注册。但是手机号是可以注销并且会被运营商重新下发使用。
万一用户 A 注销了手机号 1234567890 ,但是忘记注销我的网站 xxxx.com 账号了。然后手机号又被运营商分配给了新的人 B,然后 B 使用 1234567890 来使用我的网站 xxxx.com 的时候,不就可以通过手机验证码登录,直接使用 A 的账号了吗?
因为现在很多网站,不区分注册和登录的概念了,只要填写手机号,收到验证码之后就可以登录使用(首次登录即等于注册)
这样对于用户 A 就可以存在隐私泄露的问题
对于上面的场景,有什么解决方案吗?
运营商有提供接口可以查询手机号的号主是否发生变更吗?
有是有,叫手机号三要素校验。
但运营商的接口都不对普通客户开放,你必须通过第三方集成服务商(阿里云、腾讯云这种)。
但这个东西跟你想象的可能不太一样,它更多的是为有实名认证需要、但不具备人脸识别等生物因素认证条件的场景所准备的。你提到的这个场景更像是风控该干的事儿。比如非常用设备登录,需要先通过实人认证,或者回答某些问题(例如身份证号中间若干位打星号让你填入)。如果通过不了的话会有引导提示“这不是我的账号”,然后走注销流程。
但无论如何这套方案的首要前提是:你的产品本身是具备实名认证功能的。否则你本来没有之前的号主身份信息,后续你依然无法走这个流程。而这又会产生一个新的问题 —— 如果你是一个不知名产品,你向用户索要身份信息,这本身就是一件很敏感的行为。