我正在使用ASW认知技术来认证用户。科尼图有一个很好的流程来处理那些忘记密码的用户。
如何处理忘记用户名的用户?是否有一个内置的流程,让用户输入他们的电子邮件或电话号码,然后收到一个电子邮件或文本与他们的相关用户名?我找到了ListUser API,它返回用户名池中的所有用户。我可以写一个Lambda函数,过滤我的所有用户,寻找匹配的电子邮件或电话号码。但这似乎有点过火了。
发布于 2019-03-18 01:38:23
不幸的是,没有默认的“忘记用户名”工作流。
我正在实现类似的工作流。我们询问用户的注册电话号码/电子邮件,并根据该号码检索用户名,并根据配置将其发送到电子邮件/电话。如果用户被配置为同时使用电子邮件和电话,如果用户忘记用户名(这是他们在注册过程中使用的电子邮件id ),我们会发送SMS到电话。
这种方法的一个主要缺点是,我们需要向匿名用户提供ListUsers API调用访问,这是一个潜在的安全问题,但似乎找不到任何其他方法通知用户他们的登录细节。
发布于 2021-12-07 05:39:10
对于那些正在寻找解决方案的人来说,不要让匿名用户访问ListUser API,就像接受的答案中所建议的那样。
有两种方法可以实现“忘记用户名流”。
调用此API将导致使用更改用户密码所需的确认代码向最终用户发送消息。对于Username参数,可以使用用户名或用户别名。用于发送确认代码的方法根据指定的AccountRecoverySetting发送。
用户将能够重置密码与他们的电子邮件和代码交付给提供的电子邮件地址。如果您仍然想提醒用户名,您可以使用Lambda触发器生成密码重置电子邮件与用户名和验证代码。
您可以使用WAF和/或captcha保护此API不受滥用。
https://stackoverflow.com/questions/52572812
复制相似问题