【发布时间】:2019-08-27 15:28:23
【问题描述】:
AWS Cognito 正在发送用于移动/电子邮件验证的 6 位数验证码。
有没有办法自定义验证码的大小?
例如:将其更改为4位
我浏览了 AWS 文档,但找不到任何解决方案。
提前致谢
【问题讨论】:
标签: amazon-web-services amazon-cognito
AWS Cognito 正在发送用于移动/电子邮件验证的 6 位数验证码。
有没有办法自定义验证码的大小?
例如:将其更改为4位
我浏览了 AWS 文档,但找不到任何解决方案。
提前致谢
【问题讨论】:
标签: amazon-web-services amazon-cognito
不,你不能改变 cognito 的内部逻辑。
但是,您可以创建自己的逻辑来验证用户。 您可以创建一个预注册 lambda 以将随机 4 位代码发送到新创建用户的电子邮件中(您可以将临时代码存储在对用户隐藏的自定义用户属性中,或者存储在带有 userid 的 dynamodb 表中,以便稍后进行比较)。然后创建另一个在角色中具有AdminUpdateUserAttributes 权限的 lambda。此 lambda 将由 apigateway 触发,它将 4 位代码作为输入。然后将此代码与您之前存储的代码进行比较。如果匹配,请调用 AdminUpdateUserAttributes 并将用户标记为已验证。
【讨论】:
pre-signup lambda。您可以在用户池设置的触发器下找到它。