我有一个非常直接的RESTful Web服务来为客户端提供资源。我被卡住的唯一地方是密码重置时的身份验证。
流程是: 用户输入电子邮件地址和DOB。当这两个进行身份验证时,系统会提示用户提出安全问题。现在,此时我需要知道具有安全性答案的请求来自之前使用电子邮件地址和DOB进行身份验证的客户端。
我读了几个问题,但我还没有得到关于如何实施它的明确答案。以下是我经历过的一些问题
How to implement two level authentication in a RESTful API?
How to design a stateless REST Login with 2 Factor Authentication (2FA)?(这个没有答案)
我的想法是: 一旦用户的电子邮件和DOB被认证,服务器将返回一个Auth令牌作为响应,在客户端将传递给下一个请求(可能在标题或其他内容) - Auth令牌将存储在DB中如果有一个有效期,当有安全性答案的下一个请求到来时,将读取并验证来自标题的Auth令牌。
但我的问题是我不确定这是否是实现我打算实现的功能的正确方法。
这可能看起来像一个建议问题,但我正在问的是,如果这是我打算做的最好的方式,或者在RESTful webservice的情况下我应该采用另一种方式来实现它。
如果有更好的方法,有人可以给我一些例子,我真的很感激。
提前致谢。