我正在考虑两种方法来验证身份,但我不确定两者是否可行:
Paypal - 从Paypal收到身份详细信息后收取1.00美元并退款( Paypal API会向我提供用户姓名和地址吗?)
像Google一样进行手机验证 - 向某人的手机发送短信验证码。 (我应该使用哪种API将此信息传达给某人的手机?)
???
注意:这个问题不是关于是否验证身份的辩论。这是一个如何的问题。
答案 0 :(得分:1)
一些想法:
1)存入名义上的随机金额,比如2.00美元,并让用户通过确认实际金额进行验证。
2)使用twilio.com API向SMS发送随机代码,以便用户确认。
3)对于座机电话,使用twilio.com API拨打该号码并让其说出随机码,以便稍后由用户确认。
当然,这些都不能验证邮寄地址。他们只是验证用户是否可以访问银行帐户对帐单或电话。对于实际的邮寄地址,我知道一些银行通过在用户必须在线确认的信函中邮寄随机代码来验证这一点。即使有一项服务可以为你做这件事,听起来也很贵。
答案 1 :(得分:1)
您可以与Trulioo API集成,并立即验证超过50亿个人和2.5亿个组织。尽管您可以通过多种方式(例如Java,C#等)使用API,但是有几个快速入门项目可以简化集成。
如果使用的是npm,则可以运行npm i trulioo
安装the EmbedID component。
npm install trulioo-react
然后在您的jsx中:
import EmbedID from 'trulioo-react/EmbedID'
const handleResponse = (e) => {
// handle verification submission result here ...
}
<EmbedID url='URL' handleResponse={handleResponse} />
handleResponse
是来自供应商的回调,这里是more info of what's的响应结构。
为避免CORS问题,您将需要一个后端服务器;您可以自己构建,也可以使用trulioo-react-sample-app:
TRULIOO_BASE_URL=
TRULIOO_USERNAME=
TRULIOO_PASSWORD=
TRULIOO_PORT=
SIGNATURE_ALGORITHM=
PRIVATE_KEY_FILE_PATH=
只需在您的cmd /终端中运行以下命令,即可享受旅程。
# install the libraries needed
npm i
# start the server
npm start
免责声明:我为Trulioo工作,并且是trulioo-react
和trulioo-react-sample-app
项目的作者。
答案 2 :(得分:0)
取决于它的重要性。
您可以要求用户发送居住证明(最近的公用事业账单)和身份证明,但这非常不方便,需要手动处理。
但是,对于银行应用程序来说,这是有道理的。
如果您的要求不那么严格,您可以使用地理定位来查看用户是否与其地址位于同一区域并将其用作过滤器:如果用户地址和地理定位匹配得相当好,则可能是好的,不要走得更远。如果没有,请启动更复杂的检查程序。
如果您选择通过信用卡验证用户,也请求发卡银行的地址。这是另一个数据点。大多数人都在当地银行开户。没有什么可以在其他地方或甚至在线拥有帐户。
如果您能找到其他相关因素,请建立一个积分系统(类似于贝叶斯系统),并仅向低于阈值的人发出挑战。
这使您可以为最有可能遇到麻烦的人实施更严格的验证流程。
事实是,你不能100%确定地确定任何人的居住地,但如果你能确定用户当前位于所谓的地址附近(地理定位),并且他的银行地址也在附近,那么地址是最有可能是有效的,如果你的要求不是太高,它可能“足够好”。
答案 3 :(得分:0)
还有其他商业服务,例如
Verizon的{p> Universal Identity Service和Nexis Lexis的Accurint这些是付费服务,您可以通过API调用将这些服务与您的应用程序集成。这些系统会将用户信息称为社交名称,地址,DOB和最后四个,并提供公共记录问题列表。比如你有Howmany汽车,你在这家银行有多少贷款等等......
这将是您可以获得RealTime / Online 身份证明的最终身份证明。
这些API主要分为几种保证等级,即LOA1,LOA2,LOA3。 您可以根据您的申请要求选择实施其中一个或全部。
例如LOA1 - 用户将使用Usernam和密码创建一个accoutn LOA2 - 用户将进行双因素身份验证 LOA3 - 将要求用户输入最后4个或社交并回答所有公共记录问题。
希望免费得到这样的东西:)