node.js - 重置密码并在他们的电子邮件上为不同类型的集合(公司、客户、管理员)发送电子邮件,但电子邮件可以在集合中重复
问题描述
我正在制作一个 RESTful API,有多种类型的用户集合(管理员、用户、公司)。
管理员(电子邮件、密码) 公司(CompanyDetails、DirectorDetails、电话、地址、电子邮件、密码) 普通用户(姓名、电话、电子邮件、密码)
我需要将重置密码电子邮件发送给用户应该是什么策略。
场景 1(公司和用户都存在电子邮件)
- 从公司和用户中搜索用户
- 为他们拥有的帐户发送一封电子邮件,如果他们在电子邮件中的两个集合(对于公司和用户)中都有电子邮件,我将为两个帐户发送令牌
- 在重置密码屏幕上,我会询问哪个帐户(对于公司或用户)
场景 2(公司和用户都存在电子邮件)
- 在两个集合中搜索电子邮件
- 为(公司和用户)的两个帐户发送带有令牌的电子邮件
- 为两个帐户更新相同的密码
场景 3(公司或用户中存在电子邮件)
- 在两个集合中搜索
- 创建令牌并发送电子邮件
- 使用令牌将密码重置为 Rest API
- 再次在两个集合中搜索并更新具有密码令牌的人的密码