【问题标题】:aws-amplify client side password validationaws-amplify 客户端密码验证
【发布时间】:2020-04-23 00:13:33
【问题描述】:

我正在使用 aws-amplify 包与 Cognito 集成以进行身份​​验证。我正在为注册创建自定义表单。为此,我想添加一个客户端验证。 aws-amplify 有什么方法可以进行客户端密码验证吗?当用户离开密码字段时,我想向用户显示一条错误消息。

【问题讨论】:

    标签: reactjs amazon-cognito aws-amplify


    【解决方案1】:

    目前似乎没有办法通过 Amplify 做到这一点。您可以看到this issue,他们在其中简要介绍了它,并提出了一个非常好的观点:虽然 Amplify 不进行验证,但 Cognito 可以

    如果这是您想自己解决的问题,您可以先查看 Amazon Cognito API 参考,特别是 DescribeUserPool 操作。它使您可以访问用户池的密码策略。也许您可以在构建时调用此操作,将策略保存为 json,您可以将其包含在前端代码中并在运行时进行验证。

    这一切都假设您真的不想使用Cognito hosted UI 进行登录/注册,它将根据这些设置为您处理验证(并且只需要很少的工作)。

    【讨论】:

      【解决方案2】:

      您可以创建完全独立于 Amplify 的客户端验证。由于您知道为创建密码而配置的挑战,因此您可以简单地将其放入自定义表单中。

      例如,您可以使用 html 输入属性,如 minLengthpattern,或使用 javascript。

      <input 
        autoComplete="new-password"
        type="password"
        minLength="6"
        pattern="^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9]).*$"
      />
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-11-10
        • 2021-01-01
        • 2018-05-05
        • 2020-09-03
        • 2014-08-12
        • 2017-11-07
        • 2020-03-27
        相关资源
        最近更新 更多